[发明专利]一种基于词向量的问题路由方法有效
申请号: | 201510057352.5 | 申请日: | 2015-02-03 |
公开(公告)号: | CN104636456B | 公开(公告)日: | 2018-01-23 |
发明(设计)人: | 王健;董华磊;林鸿飞 | 申请(专利权)人: | 大连理工大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 大连星海专利事务所有限公司21208 | 代理人: | 王树本 |
地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种问题路由方法,一种基于词向量的问题路由方法,包括以下步骤步骤1、用户档案的构建;步骤2、数据预处理;步骤3、词向量的训练;步骤4、文档向量的表示;步骤5、用户权威度的计算;步骤6、用户活跃度的计算;步骤7、候选回答者排序;本发明利用word2vec训练数据效率高,词向量具有叠加性,克服了文档之间没有共现词相似度为0的缺点;同时抽取文档主题词,用词向量表示文档向量,综合计算权威度和活跃度,以及文档向量之间的相似度,既考虑了文档之间的语义信息,又减少了噪音。分别与经典的TF_IDF和Language Model进行了对比实验,本发明方法的S@N均高于其他两种方法。 | ||
搜索关键词: | 一种 基于 向量 问题 路由 方法 | ||
【主权项】:
一种基于词向量的问题路由方法,其特征在于包括以下步骤:步骤1、用户档案的构建:根据用户的回答历史为用户构建档案,社区问答中回答过问题的用户都是一个新问题的候选回答者,对于每个用户档案的构建,具体包括以下子步骤:步骤(a)、从Stackoverflow网站提供的网址下载从网站建立之初2008年7月到目前2014年3月为止的所有数据,数据为XML格式,读取XML文件格式抽取所有问题,其中包括问题的标签tag域、标题title域和内容body域;步骤(b)、收集用户回答过的问题中被选为最佳答案的那些问题组成用户的档案;步骤(c)、忽略用户回答的问题中被选为最佳答案的数量比较少的用户,只选择回答的问题中至少包含10个被选为最佳答案的用户作为候选回答者;步骤2、数据预处理,具体包括以下子步骤:步骤(a)、由于该问答社区中的问题都与计算机编程相关,所以用户提出的问题中body域往往会包含许多代码,而代码中不含有语义信息,对训练结果没有帮助,甚至可能对训练结果产生不良影响,因而把XML格式文件中<code></code>之间的代码信息去除;步骤(b)、用户档案和测试集中的问题去除停用词及标点符号;步骤3、词向量的训练,具体包括以下子步骤:步骤(a)、根据处理好的数据,对特征词进行Huffman编码;步骤(b)、为了把每个词都用矢量表示,对每个词定义一个一定维度的实数向量,通过逻辑回归二元分类方法预测Huffman树中词语word路径边值的概率;步骤(c)、逻辑回归模型输入变量未知,通过损失函数和求导公式对系数和输入变量进行更新,更新后的输入变量作为特征词的向量,词向量的维度可以指定,本发明设置400维来测试词向量维度对结果的影响,训练模型包括CBOW模型和skip‑gram模型,本发明使用CBOW模型;步骤4、文档向量的表示,具体包括以下子步骤:步骤(a)、问题标签是问题所属的类别,能代表一个问题的主题,用户档案中出现次数最多的两个标签词代表用户主题,基于词向量的叠加性,标签词向量相加代表用户的主题向量;步骤(b)、计算文档中每个特征词和标签词向量的相似度,根据相似度大小对特征词进行排序;步骤(c)、抽取主题词,根据已经排好序的特征词,取前1/2的词作为用户的主题词,特征词向量叠加代表用户的文档向量,采用公式(1)表示,式中,为用户的文档向量,nu为用户的文档中特征词数量,为第i个特征词向量;步骤(d)、测试集中的问题向量,根据标签词进行抽取,采用公式(2)表示,式中,为测试问题的文档向量,nq为测试问题中特征词数量,为第i个特征词向量;步骤(e)、计算测试集中的问题跟每个用户档案的相似度,采用公式(3)表示,cos(q→,u→)=q→·u→|q→|·|u→|---(3)]]>式中,为问题向量与用户档案向量的相似度;步骤5、用户权威度的计算:用户回答的问题中,被选为最佳答案的数量越多,代表该用户的权威度越大,使用log进行平滑,用户u的权威度采用公式(4)表示,authority(u)=log(1+numansu) (4)式中,authority(u)为用户u的权威度,numansu为用户回答的问题中被选为最佳答案的数量;步骤6、用户活跃度的计算:在社区中每个用户活跃时间不同,并且某个问题被提出时,一些用户已经很久没有回答任何问题或者即使之前回答过很多问题,但该用户的活跃度仍然比较低,本发明采用问题被提出的时间与提出问题之前用户最近一次回答问题的时间间隔衡量用户的活跃度,时间相隔越近,代表用户越活跃,用户u的活跃度采用公式(5)表示,activity(u)=exp-(tq-tu)---(5)]]>式中,activity(u)为用户u的活跃度,tq为提问问题的时间,tu为用户回答的所有问题中,距离提问问题最近的时间,其中:tq和tu单位是天数,如果用秒、分钟或者小时表示,会造成用户的活跃度非常低、评价用户的活跃度不合理;步骤7、候选回答者排序:用户权威度和用户活跃度代表用户的先验概率,用户的先验概率采用公式(6)表示,P(u)=authority(u)*actiuity(u) (6)式中,P(u)为用户u的先验概率,authority(u)为用户u的权威度,activity(u)为用户u的活跃度,最佳回答者的概率,采用公式(7)表示,P(u|q)∝P(u)P(q|u) (7)式中,P(q|u)为相似度,表示从用户u档案中生成问题q的概率,P(u|q)代表用户u是问题q的最佳回答者的概率,再将该概率从大到小排序,即为回答者推荐顺序。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510057352.5/,转载请声明来源钻瓜专利网。