CN104391828B - 确定短文本相似度的方法和装置 - Google Patents
确定短文本相似度的方法和装置 Download PDFInfo
- Publication number
- CN104391828B CN104391828B CN201410645486.4A CN201410645486A CN104391828B CN 104391828 B CN104391828 B CN 104391828B CN 201410645486 A CN201410645486 A CN 201410645486A CN 104391828 B CN104391828 B CN 104391828B
- Authority
- CN
- China
- Prior art keywords
- value
- mrow
- term vector
- model
- short text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明提出一种确定短文本相似度的方法和装置,该确定短文本相似度的方法包括采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值。该方法能够提高短文本相似度数值计算的准确度。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种确定短文本相似度的方法和装置。
背景技术
短文本相似度计算可以对输入的一对短文本,给出一个分数来描述这对短文本的相似程度。计算相似度的一方短文本可以是用户在搜索引擎输入的查询词,或是网页的标题,或是客户购买的关键词等。短文本相似度计算应用广泛,可应用于搜索相关性、广告匹配等领域。如在搜索相关性领域,搜索引擎希望最后呈现给用户的页面与用户的查询词尽可能相关;在广告匹配领域,广告商希望触发的关键词与用户的查询词尽可能相关。
相关技术中,短文本相似度计算时,可以采用词向量训练模型,得到短文本的词向量,再将一对短文本的词向量之间的余弦距离作为这对短文本之间的相似度数值。
但是,这种方式只采用了词向量训练模型,词向量训练模型是无监督模型,采用该方式得到的词向量不够准确,从而使得计算的相似度也不够准确。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种确定短文本相似度的方法,该方法可以提高短文本相似度数值计算的准确度。
本发明的另一个目的在于提出一种确定短文本相似度的装置。
为达到上述目的,本发明第一方面实施例提出的确定短文本相似度的方法,包括:采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值。
本发明第一方面实施例提出的确定短文本相似度的方法,本实施例通过采用第一模型和第二模型确定词向量,由于第二模型是相似度模型,是有监督的过程,因此可以将无监督的词向量训练模型与有监督的相似度模型结合,通过两者结合可以提高词向量的准确度,从而提高短文本相似度数值计算的准确度。
为达到上述目的,本发明第二方面实施例提出的确定短文本相似度的装置,包括:第一获取模块,用于采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;第二获取模块,用于根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;确定模块,用于对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值。
本发明第二方面实施例提出的确定短文本相似度的装置,本实施例通过采用第一模型和第二模型确定词向量,由于第二模型是相似度模型,是有监督的过程,因此可以将无监督的词向量训练模型与有监督的相似度模型结合,通过两者结合可以提高词向量的准确度,从而提高短文本相似度数值计算的准确度。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一实施例提出的确定短文本相似度的方法的流程示意图;
图2是本发明实施例采用的模型示意图;
图3是本发明实施例中获取第一词向量和第二词向量的流程示意图;
图4是本发明另一实施例提出的确定短文本相似度的装置的结构示意图;
图5是本发明另一实施例提出的确定短文本相似度的装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本发明一实施例提出的确定短文本相似度的方法的流程示意图,该方法包括:
S11:采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型。
其中,第一模型可以具体为skipgram模型,第二模型可以是相似度sim模型。
如图2所示,左侧的是skipgram模型(skipgram model)21,右侧的是sim模型(simmodel)22。skipgram模型是一种已知的用于词向量训练的模型,skipgram模型包括输入层(input),映射层(projection)和输出层(output),输入是w(t),输出是w(t-2),w(t-1),w(t+1),w(t+2)等。
sim模型是用于计算短文本相似度的模型,输入信号分别是两个要计算相似度的短文本的词向量,两个词向量分别得到对应的映射值,之后根据两个映射值得到作为输出信号的两个短文本之间的相似度数值。
短文本可以是指长度小于预设值的文本,例如,在搜索引擎中,当输入的查询词(query)包括的字的个数小于38个时,该查询词可以称为短文本。
可以采用已有的切词方式对短文本进行切词,得到短文本包括的一个或多个词,每个词可以对应一个词向量。
参见图3,所述采用预设的第一模型和第二模型,获取第一词向量和第二词向量,包括:
S31:获取第一初始值和第二初始值,所述第一初始值是所述第一词向量的初始值,所述第二初始值是所述第二词向量的初始值。
例如,可以随机选取两个词向量的初始值。
S32:交叉采用所述第一模型和所述第二模型,对所述第一初始值和所述第二初始值进行交叉迭代更新,直至迭代更新次数达到预设次数。
例如,先采用第一模型对第一初始值和第二初始值进行更新,得到第一模型第一次更新后的值,再采用第二模型对第一模型第一次更新后的值进行更新,得到第二模型第一次更新后的值,之后再采用第一模型对第二模型第一次更新后的值进行更新,得到第一模型第二次更新后的值,再采用第二模型对第一模型第二次更新后的值进行更新,得到第二模型第二次更新后的值,依此类推,直到满足迭代次数要求。
可以理解的是,上述以先采用第一模型进行更新为例,实际实施时,也可以先采用第二模型进行更新再采用第一模型进行更新。
本实施例结合skipgram模型和sim模型,得到词向量。本实施例中,通过优化如下的参数,进行词向量的更新迭代:
其中,eskipgram是skipgram模型的误差函数,ξsim是sim模型的误差函数,λ是预设的平衡第一模型和第二模型的参数。
在更新迭代时,skipgram模型中,可以通过对1个正样本和N个负样本进行随机梯度下降(Stochastic Gradient Descent,SGD),实现更新迭代,sim模型中,可以通过对1个正样本和N个负样本进行SGD,实现更新迭代,N是预设的值。
对于skipgram模型,以所述第一初始值和所述第二初始值分别作为所述skipgram模型的输入和输出,对所述第一初始值和所述第二初始值进行迭代更新,使得如下参数为最优值:
λ是预设的平衡第一模型和第二模型的参数,eskipgram是skipgram模型的误差函数。
由于skipgram模型是一种已知的模型,其中的SGD算法可以具体参见文献:Mikolov,Tomas,et al."Distributed representations of words and phrases andtheir compositionality."Advances in Neural Information ProcessingSystems.2013,在此不再详细说明。
对于sim模型,可以采用如下的公式进行更新迭代:
其中,WIi和WOi分别是第一初始值和第二初始值;WI′i和WO′i分别是第一初始值更新后的值和第二初始值更新后的值;α是第二模型中的学习率数值,可以与第一模型中的学习率数值相同或者不同;和表示偏导运算;
T是第一短文本与第二短文本之间的相关度数值,当不相关时T=0或者当相关时T=1;λ是预设的平衡第一模型和第二模型的参数;
o=f(vA·vB),f()是预设的函数,vA·vB表示vA与vB的内积运算;
vA=g(WIi),vB=g(WOi);
g()是预设的函数。
可选的,所述g()是均值函数,或者循环神经网络(Recurrent Neural Network)函数。
可选的,所述f()是sigmoid函数。
S33:将迭代更新次数达到预设次数后,得到的所述第一初始值的更新后的值,以及所述第二初始值的更新后的值。
例如,在采用第一模型对1个正样本和N个负样本进行SGD运算后,以及,采用第二模型对1个正样本和N个负样本进行SGD运算后,可以得到最终的更新后的值。
S34:将所述第一初始值的更新后的值确定为所述第一词向量,以及,将所述第二初始值的更新后的值确定为所述第二词向量。
例如,将最终的更新后的值确定为短文本的词向量。
S12:根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值。
采用如下公式,得到所述第一投影值和所述第二投影值:
其中,和分别是第一投影值和第二投影值;和分别是第一词向量和第二词向量;
g()是预设的函数。
可选的,所述g()可以是均值函数,或者RNN函数等。
以均值函数为例,n是短文本包含的词的个数。
S13:对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值。
可以采用如下公式得到运算后的函数值:
其中,o是运算后的函数值,f()是预设的函数,表示与的内积运算,和分别是第一投影值和第二投影值;
所述f()可以是sigmoid函数。
将所述运算后的函数值确定为所述第一短文本与所述第二短文本之间的相似度数值。
例如,将确定为第一短文本和第二短文本之间的相似度数值,是0~1之间的数值。
本实施例通过采用第一模型和第二模型确定词向量,由于第二模型是相似度模型,是有监督的过程,因此可以将无监督的词向量训练模型与有监督的相似度模型结合,通过两者结合可以提高词向量的准确度,从而提高短文本相似度数值计算的准确度。另外,通过均值函数确定词向量的映射值,明确了对词向量累加来表达短文本的数学含义。
图4是本发明另一实施例提出的确定短文本相似度的装置的结构示意图,该装置40包括第一获取模块41,第二获取模块42和确定模块43。
第一获取模块41用于采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;
其中,第一模型可以具体为skipgram模型,第二模型可以是相似度sim模型。
如图2所示,左侧的是skipgram模型(skipgram model)21,右侧的是sim模型(simmodel)22。skipgram模型是一种已知的用于词向量训练的模型,skipgram模型包括输入层(input),映射层(projection)和输出层(output),输入是w(t),输出是w(t-2),w(t-1),w(t+1),w(t+2)等。
sim模型是用于计算短文本相似度的模型,输入信号分别是两个要计算相似度的短文本的词向量,两个词向量分别得到对应的映射值,之后根据两个映射值得到作为输出信号的两个短文本之间的相似度数值。
短文本可以是指长度小于预设值的文本,例如,在搜索引擎中,当输入的查询词(query)包括的字的个数小于38个时,该查询词可以称为短文本。
可以采用已有的切词方式对短文本进行切词,得到短文本包括的一个或多个词,每个词可以对应一个词向量。
可选的,参见图5,所述第一获取模块41包括:
第一单元411,用于获取第一初始值和第二初始值,所述第一初始值是所述第一词向量的初始值,所述第二初始值是所述第二词向量的初始值;
例如,可以随机选取两个词向量的初始值。
第二单元412,用于交叉采用所述第一模型和所述第二模型,对所述第一初始值和所述第二初始值进行交叉迭代更新,直至迭代更新次数达到预设次数;
例如,先采用第一模型对第一初始值和第二初始值进行更新,得到第一模型第一次更新后的值,再采用第二模型对第一模型第一次更新后的值进行更新,得到第二模型第一次更新后的值,之后再采用第一模型对第二模型第一次更新后的值进行更新,得到第一模型第二次更新后的值,再采用第二模型对第一模型第二次更新后的值进行更新,得到第二模型第二次更新后的值,依此类推,直到满足迭代次数要求。
可以理解的是,上述以先采用第一模型进行更新为例,实际实施时,也可以先采用第二模型进行更新再采用第一模型进行更新。
本实施例结合skipgram模型和sim模型,得到词向量。本实施例中,通过优化如下的参数,进行词向量的更新迭代:
其中,eskipgram是skipgram模型的误差函数,ξsim是sim模型的误差函数,λ是预设的平衡第一模型和第二模型的参数。
在更新迭代时,skipgram模型中,可以通过对1个正样本和N个负样本进行随机梯度下降(Stochastic Gradient Descent,SGD),实现更新迭代,sim模型中,可以通过对1个正样本和N个负样本进行SGD,实现更新迭代,N是预设的值。
可选的,所述第二单元412具体用于:
采用如下公式进行迭代更新:
其中,WIi和WOi分别是第一初始值和第二初始值;WI′i和WO′i分别是第一初始值更新后的值和第二初始值更新后的值;α是第二模型中的学习率数值,可以与第一模型中的学习率数值相同或者不同;和表示偏导运算;
T是第一短文本与第二短文本之间的相关度数值,T=0表示不相关,或者T=1表示相关;λ是预设的平衡第一模型和第二模型的参数;
o=f(vA·vB),f()是预设的函数,vA·vB表示vA与vB的内积运算;
vA=g(WIi),vB=g(WOi);
g()是预设的函数。
可选的,所述g()是均值函数,或者RNN函数。
可选的,所述f()是sigmoid函数。
可选的,所述第一模型是skipgram模型,所述第二单元412具体用于:
以所述第一初始值和所述第二初始值分别作为所述skipgram模型的输入和输出,对所述第一初始值和所述第二初始值进行迭代更新,使得如下参数为最优值:
λ是预设的平衡第一模型和第二模型的参数,eskipgram是skipgram模型的误差函数。
由于skipgram模型是一种已知的模型,其中的SGD算法可以具体参见文献:Mikolov,Tomas,et al."Distributed representations of words and phrases andtheir compositionality."Advances in Neural Information ProcessingSystems.2013,在此不再详细说明。
第三单元413,用于将迭代更新次数达到预设次数后,得到的所述第一初始值的更新后的值,以及所述第二初始值的更新后的值;
例如,在采用第一模型对1个正样本和N个负样本进行SGD运算后,以及,采用第二模型对1个正样本和N个负样本进行SGD运算后,可以得到最终的更新后的值。
第四单元414,用于将所述第一初始值的更新后的值确定为所述第一词向量,以及,将所述第二初始值的更新后的值确定为所述第二词向量。
例如,将最终的更新后的值确定为短文本的词向量。
第二获取模块42,用于根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;
可选的,所述第二获取模块42具体用于:
采用如下公式,得到所述第一投影值和所述第二投影值:
其中,和分别是第一投影值和第二投影值;和分别是第一词向量和第二词向量;
g()是预设的函数。
可选的,所述g()可以是均值函数,或者RNN函数等。
以均值函数为例,n是短文本包含的词的个数。
确定模块43,用于对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值。
可选的,所述确定模块43具体用于:
采用如下公式得到运算后的函数值:
其中,o是运算后的函数值,f()是预设的函数,表示与的内积运算,和分别是第一投影值和第二投影值;
将所述运算后的函数值确定为所述第一短文本与所述第二短文本之间的相似度数值。
例如,将确定为第一短文本和第二短文本之间的相似度数值,是0~1之间的数值。
本实施例通过采用第一模型和第二模型确定词向量,由于第二模型是相似度模型,是有监督的过程,因此可以将无监督的词向量训练模型与有监督的相似度模型结合,通过两者结合可以提高词向量的准确度,从而提高短文本相似度数值计算的准确度。另外,通过均值函数确定词向量的映射值,明确了对词向量累加来表达短文本的数学含义。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (14)
1.一种确定短文本相似度的方法,其特征在于,包括:
采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;
根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;
对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值;
所述采用预设的第一模型和第二模型,获取第一词向量和第二词向量,包括:
获取第一初始值和第二初始值,所述第一初始值是所述第一词向量的初始值,所述第二初始值是所述第二词向量的初始值;
交叉采用所述第一模型和所述第二模型,对所述第一初始值和所述第二初始值进行交叉迭代更新,直至迭代更新次数达到预设次数;
将迭代更新次数达到预设次数后,得到所述第一初始值的更新后的值,以及所述第二初始值的更新后的值;
将所述第一初始值的更新后的值确定为所述第一词向量,以及,将所述第二初始值的更新后的值确定为所述第二词向量。
2.根据权利要求1所述的方法,其特征在于,采用所述第二模型对所述第一初始值和所述第二初始值进行迭代更新,包括:
采用如下公式进行迭代更新:
<mrow>
<msubsup>
<mi>WI</mi>
<mi>i</mi>
<mo>&prime;</mo>
</msubsup>
<mo>=</mo>
<msub>
<mi>WI</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>&alpha;</mi>
<mi>&lambda;</mi>
<mfrac>
<mrow>
<mo>&part;</mo>
<msub>
<mi>&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>WI</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<msubsup>
<mi>WO</mi>
<mi>i</mi>
<mo>&prime;</mo>
</msubsup>
<mo>=</mo>
<msub>
<mi>WO</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>&alpha;</mi>
<mi>&lambda;</mi>
<mfrac>
<mrow>
<mo>&part;</mo>
<msub>
<mi>&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>WO</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>;</mo>
</mrow>
其中,WIi和WOi分别是第一初始值和第二初始值;WI′i和WO′i分别是第一初始值更新后的值和第二初始值更新后的值;α是第二模型中的学习率数值;和表示偏导运算;
<mrow>
<msub>
<mi>&lambda;&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msup>
<msub>
<mi>&lambda;e</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mn>2</mn>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mi>&lambda;</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>T</mi>
<mo>-</mo>
<mi>o</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>;</mo>
</mrow>
T是第一短文本与第二短文本之间的相关度数值,T=0,表示第一短文本与第二短文本不相关,或者T=1,表示第一短文本与第二短文本相关;λ是预设的平衡第一模型和第二模型的参数;
o=f(vA·vB),f()是预设的函数,vA·vB表示vA与vB的内积运算;
vA=g(WIi),vB=g(WOi);
g()是预设的函数;
ξsim是sim模型的误差函数;
esim是与sim模型的误差函数ξsim相关的参数,两者之间的关系为:
3.根据权利要求1所述的方法,其特征在于,所述第一模型是skipgram模型,采用所述第一模型对所述第一初始值和所述第二初始值进行迭代更新,包括:
以所述第一初始值和所述第二初始值分别作为所述skipgram模型的输入和输出,对所述第一初始值和所述第二初始值进行迭代更新,使得如下参数为最优值:
λ是预设的平衡第一模型和第二模型的参数,eskipgram是skipgram模型的误差函数,ξskipgram是与skipgram模型的误差函数相关的参数,两者之间的关系为:
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值,包括:
采用如下公式,得到所述第一投影值和所述第二投影值:
<mrow>
<msubsup>
<mi>v</mi>
<mi>A</mi>
<mo>*</mo>
</msubsup>
<mo>=</mo>
<mi>g</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>WI</mi>
<mi>i</mi>
<mo>*</mo>
</msubsup>
<mo>)</mo>
</mrow>
<mo>,</mo>
<msubsup>
<mi>v</mi>
<mi>B</mi>
<mo>*</mo>
</msubsup>
<mo>=</mo>
<mi>g</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>WO</mi>
<mi>i</mi>
<mo>*</mo>
</msubsup>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
其中,和分别是第一投影值和第二投影值;和分别是第一词向量和第二词向量;
g()是预设的函数。
5.根据权利要求1所述的方法,其特征在于,所述对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值,包括:
采用如下公式得到运算后的函数值:
其中,o是运算后的函数值,f()是预设的函数,表示与的内积运算,和分别是第一投影值和第二投影值;
将所述运算后的函数值确定为所述第一短文本与所述第二短文本之间的相似度数值。
6.根据权利要求2或4所述的方法,其特征在于,所述g()是均值函数,或者RNN函数。
7.根据权利要求2或5所述的方法,其特征在于,所述f()是sigmoid函数。
8.一种确定短文本相似度的装置,其特征在于,包括:
第一获取模块,用于采用预设的第一模型和第二模型,获取第一词向量和第二词向量,所述第一词向量是第一短文本包含的词的词向量,所述第二词向量是第二短文本包含的词的词向量,其中,所述第一模型是词向量训练模型,所述第二模型是短文本相似度计算模型;
第二获取模块,用于根据所述第一词向量获取第一投影值,以及,根据所述第二词向量获取第二投影值;
确定模块,用于对所述第一投影值和所述第二投影值进行预设函数运算,得到运算后的函数值,并根据所述函数值确定所述第一短文本与所述第二短文本之间的相似度数值;
所述第一获取模块包括:
第一单元,用于获取第一初始值和第二初始值,所述第一初始值是所述第一词向量的初始值,所述第二初始值是所述第二词向量的初始值;
第二单元,用于交叉采用所述第一模型和所述第二模型,对所述第一初始值和所述第二初始值进行交叉迭代更新,直至迭代更新次数达到预设次数;
第三单元,用于将迭代更新次数达到预设次数后,得到所述第一初始值的更新后的值,以及所述第二初始值的更新后的值;
第四单元,用于将所述第一初始值的更新后的值确定为所述第一词向量,以及,将所述第二初始值的更新后的值确定为所述第二词向量。
9.根据权利要求8所述的装置,其特征在于,所述第二单元采用所述第二模型对所述第一初始值和所述第二初始值进行迭代更新,所述第二单元具体用于:
采用如下公式进行迭代更新:
<mrow>
<msubsup>
<mi>WI</mi>
<mi>i</mi>
<mo>&prime;</mo>
</msubsup>
<mo>=</mo>
<msub>
<mi>WI</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>&alpha;</mi>
<mi>&lambda;</mi>
<mfrac>
<mrow>
<mo>&part;</mo>
<msub>
<mi>&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>WI</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<msubsup>
<mi>WO</mi>
<mi>i</mi>
<mo>&prime;</mo>
</msubsup>
<mo>=</mo>
<msub>
<mi>WO</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>&alpha;</mi>
<mi>&lambda;</mi>
<mfrac>
<mrow>
<mo>&part;</mo>
<msub>
<mi>&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>WO</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>;</mo>
</mrow>
其中,WIi和WOi分别是第一初始值和第二初始值;WI′i和WO′i分别是第一初始值更新后的值和第二初始值更新后的值;α是第二模型中的学习率数值;和表示偏导运算;
<mrow>
<msub>
<mi>&lambda;&xi;</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<msup>
<msub>
<mi>&lambda;e</mi>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>m</mi>
</mrow>
</msub>
<mn>2</mn>
</msup>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mi>&lambda;</mi>
<msup>
<mrow>
<mo>(</mo>
<mi>T</mi>
<mo>-</mo>
<mi>o</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>;</mo>
</mrow>
T是第一短文本与第二短文本之间的相关度数值,T=0,表示第一短文本与第二短文本不相关,或者T=1,表示第一短文本与第二短文本相关;λ是预设的平衡第一模型和第二模型的参数;
o=f(vA·vB),f()是预设的函数,vA·vB表示vA与vB的内积运算;
vA=g(WIi),vB=g(WOi);
g()是预设的函数;
ξsim是sim模型的误差函数;
esim是与sim模型的误差函数ξsim相关的参数,两者之间的关系为:
10.根据权利要求8所述的装置,其特征在于,所述第一模型是skipgram模型,所述第二单元采用所述第一模型对所述第一初始值和所述第二初始值进行迭代更新,所述第二单元具体用于:
以所述第一初始值和所述第二初始值分别作为所述skipgram模型的输入和输出,对所述第一初始值和所述第二初始值进行迭代更新,使得如下参数为最优值:
λ是预设的平衡第一模型和第二模型的参数,eskipgram是skipgram模型的误差函数,ξskipgram是与skipgram模型的误差函数相关的参数,两者之间的关系为:
11.根据权利要求8所述的装置,其特征在于,所述第二获取模块具体用于:
采用如下公式,得到所述第一投影值和所述第二投影值:
<mrow>
<msubsup>
<mi>v</mi>
<mi>A</mi>
<mo>*</mo>
</msubsup>
<mo>=</mo>
<mi>g</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>WI</mi>
<mi>i</mi>
<mo>*</mo>
</msubsup>
<mo>)</mo>
</mrow>
<mo>,</mo>
<msubsup>
<mi>v</mi>
<mi>B</mi>
<mo>*</mo>
</msubsup>
<mo>=</mo>
<mi>g</mi>
<mrow>
<mo>(</mo>
<msubsup>
<mi>WO</mi>
<mi>i</mi>
<mo>*</mo>
</msubsup>
<mo>)</mo>
</mrow>
<mo>;</mo>
</mrow>
其中,和分别是第一投影值和第二投影值;和分别是第一词向量和第二词向量;
g()是预设的函数。
12.根据权利要求8所述的装置,其特征在于,所述确定模块具体用于:
采用如下公式得到运算后的函数值:
其中,o是运算后的函数值,f()是预设的函数,表示与的内积运算,和分别是第一投影值和第二投影值;
将所述运算后的函数值确定为所述第一短文本与所述第二短文本之间的相似度数值。
13.根据权利要求9或11所述的装置,其特征在于,所述g()是均值函数,或者RNN函数。
14.根据权利要求9或12所述的装置,其特征在于,所述f()是sigmoid函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410645486.4A CN104391828B (zh) | 2014-11-11 | 2014-11-11 | 确定短文本相似度的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410645486.4A CN104391828B (zh) | 2014-11-11 | 2014-11-11 | 确定短文本相似度的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104391828A CN104391828A (zh) | 2015-03-04 |
CN104391828B true CN104391828B (zh) | 2017-11-17 |
Family
ID=52609734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410645486.4A Active CN104391828B (zh) | 2014-11-11 | 2014-11-11 | 确定短文本相似度的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104391828B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844346B (zh) * | 2017-02-09 | 2020-08-25 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107133202A (zh) * | 2017-06-01 | 2017-09-05 | 北京百度网讯科技有限公司 | 基于人工智能的文本校验方法和装置 |
CN110209810B (zh) * | 2018-09-10 | 2023-10-31 | 腾讯科技(深圳)有限公司 | 相似文本识别方法以及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6192360B1 (en) * | 1998-06-23 | 2001-02-20 | Microsoft Corporation | Methods and apparatus for classifying text and for building a text classifier |
CN101079026A (zh) * | 2007-07-02 | 2007-11-28 | 北京百问百答网络技术有限公司 | 文本相似度、词义相似度计算方法和系统及应用系统 |
CN104102626A (zh) * | 2014-07-07 | 2014-10-15 | 厦门推特信息科技有限公司 | 一种用于短文本语义相似度计算的方法 |
-
2014
- 2014-11-11 CN CN201410645486.4A patent/CN104391828B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6192360B1 (en) * | 1998-06-23 | 2001-02-20 | Microsoft Corporation | Methods and apparatus for classifying text and for building a text classifier |
CN101079026A (zh) * | 2007-07-02 | 2007-11-28 | 北京百问百答网络技术有限公司 | 文本相似度、词义相似度计算方法和系统及应用系统 |
CN104102626A (zh) * | 2014-07-07 | 2014-10-15 | 厦门推特信息科技有限公司 | 一种用于短文本语义相似度计算的方法 |
Non-Patent Citations (3)
Title |
---|
Sentence Similarity Based on Semantic Nets and Corpus Statistics;Yuhua Li等;《IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING》;20060831;第18卷(第8期);第1138-1150页 * |
基于表示学习的中文分词算法探索;来斯惟 等;《中文信息学报》;20130930;第27卷(第5期);第8-14页 * |
基于词矢量相似度的短文本分类;马成龙 等;《山东大学学报(理学版)》;20141017;第49卷(第12期);第18-22,35页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104391828A (zh) | 2015-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11651259B2 (en) | Neural architecture search for convolutional neural networks | |
CN109791642B (zh) | 工作流的自动生成 | |
CN107133224B (zh) | 一种基于主题词的语言生成方法 | |
CN104199818B (zh) | 一种基于分类的社会化推荐方法 | |
CN107967255A (zh) | 一种判定文本相似性的方法和系统 | |
CN107943847A (zh) | 企业关系提取方法、装置及存储介质 | |
CN106156848B (zh) | 一种基于lstm-rnn的陆空通话语义一致性校验方法 | |
CN107665473A (zh) | 学习路径规划方法和装置 | |
JP6553664B2 (ja) | モデル学習装置、スコア計算装置、方法、データ構造、及びプログラム | |
CN113095415B (zh) | 一种基于多模态注意力机制的跨模态哈希方法及系统 | |
CN104346629A (zh) | 一种模型参数训练方法、装置及系统 | |
CN105205124A (zh) | 一种基于随机特征子空间的半监督文本情感分类方法 | |
CN104391828B (zh) | 确定短文本相似度的方法和装置 | |
CN104102917A (zh) | 域自适应分类器的构造及数据分类的方法和装置 | |
CN111639193A (zh) | 产品风险评估方法及装置、电子设备、存储介质 | |
CN108959409A (zh) | 一种结合评论中主题与情感信息的矩阵分解推荐算法 | |
CN107918778A (zh) | 一种信息匹配方法及相关装置 | |
CN107665472A (zh) | 学习路径规划方法和装置 | |
CN111881671A (zh) | 一种属性词提取方法 | |
CN104572915B (zh) | 一种基于内容环境增强的用户事件相关度计算方法 | |
CN111488460B (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN111538841A (zh) | 基于知识互蒸馏的评论情感分析方法、装置及系统 | |
CN104361600A (zh) | 运动识别方法及系统 | |
CN112579794B (zh) | 一种为中英文单词对预测义原树的方法及系统 | |
KR101882585B1 (ko) | 인간-로봇 상호작용을 위한 교육 환경에서의 자연어 문장/문단 가독성 분류 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |