CN104090890B - 关键词相似度获取方法、装置及服务器 - Google Patents
关键词相似度获取方法、装置及服务器 Download PDFInfo
- Publication number
- CN104090890B CN104090890B CN201310683046.3A CN201310683046A CN104090890B CN 104090890 B CN104090890 B CN 104090890B CN 201310683046 A CN201310683046 A CN 201310683046A CN 104090890 B CN104090890 B CN 104090890B
- Authority
- CN
- China
- Prior art keywords
- keyword
- vector
- term vector
- default
- described multiple
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种关键词相似度获取方法、装置及服务器,属于信息技术领域。该方法包括:获取用户标签关键词和兴趣类目关键词;根据该用户标签关键词和兴趣类目关键词,查找预设数据库,得到该用户标签关键词中每一个关键词的词向量和该兴趣类目关键词中每一个关键词的词向量;根据该用户标签关键词中每一个关键词的词向量、该兴趣类目关键词中每一个关键词的词向量,计算该用户标签关键词中每一个关键词的词向量与该兴趣类目关键词中每一个关键词的词向量之间的距离;将第一关键词和第二关键词的词向量之间的距离获取为该第一关键词和该第二关键词的相似度。本发明通过词向量获取关键词的相似度,提高推荐信息的准确率。
Description
技术领域
本发明涉及信息技术领域,特别涉及一种关键词相似度获取方法、装置及服务器。
背景技术
随着信息技术的不断发展,如何将信息推荐给对该信息感兴趣的用户是亟需解决的问题。在向用户推荐信息时,一般需要获取用户标签中的关键词与用户的兴趣类目中的关键词之间的相似度,从而基于相似度,获取兴趣类目中的关键词的兴趣值,根据该兴趣值的大小向用户推荐信息。
在获取相似度过程中,可以将搜搜百科全文和问问的问答内容作为语料集,以百科全文中的每个词条或者问问中的问答内容作为一篇文档,统计用户标签中的关键词与用户的兴趣类目中的关键词在语料库中出现的文档频率,即将用户的兴趣类目中的每一个关键词和用户标签中的每一个关键词到搜搜百科和问问的问答内容中进行全文检索,统计用户的兴趣类目中的每一个关键词和用户标签中的每一个关键词在语料库中共同出现的文档频率和各自出现的文档频率,并通过词与词结合紧密度的统计量算法,获取用户的兴趣类目中的每一个关键词和用户标签中的每一个关键词的相似度。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
由于任意两个关键词的相似度完全依赖于它们在语料库中的文档频率,而且关键词在语料库中出现的文档数目占语料库中所有文档数目的比例大小极为不均,如两个关键词可能很少会在一个文档中出现,而两个关键词分别在文档中出现的频率却很高,使得获取到的相似度不能准确描述两个关键词之间的联系,以至于在后续向用户推荐信息的准确率以及成功率较低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种关键词相似度获取方法、装置及服务器。所述技术方案如下:
第一方面,提供了一种关键词相似度获取方法,所述方法包括:
获取用户标签关键词和兴趣类目关键词;
根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词。
第二方面,提供了一种关键词相似度获取装置,所述装置包括:
关键词获取模块,用于获取用户标签关键词和兴趣类目关键词;
查询模块,用于根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
距离获取模块,用于根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
相似度获取模块,用于对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词。
第三方面提供了一种服务器,所述服务器包括:处理器、存储器,所述处理器与所述处理器相连接,
所述处理器,用于获取用户标签关键词和兴趣类目关键词;
所述处理器还用于根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
所述处理器还用于根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
所述处理器还用于对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词。
本发明实施例提供的技术方案带来的有益效果是:
通过用低维向量来表示关键词,并基于关键词的上下文中关键词对词向量的表示进行学习,从而使得相同语义的关键词在向量空间距离较近,从而可以更好的描述用户标签和兴趣类目的相似度,提高了后续向用户推荐信息的准确率以及成功率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种关键词相似度获取方法流程图;
图2是本发明实施例提供的一种关键词相似度获取方法流程图;
图3是本发明实施例提供的一种关键词相似度获取流程图;
图4是本发明实施例提供的一种关键词相似度获取装置结构示意图;
图5是本发明实施例提供的一种服务器结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种关键词相似度获取方法流程图。参见图1,该实施例的执行主体为服务器,该方法包括:
101、获取用户标签关键词和兴趣类目关键词。
102、根据该用户标签关键词和兴趣类目关键词,查找预设数据库,得到该用户标签关键词中每一个关键词对应的词向量和该兴趣类目关键词中每一个关键词对应的词向量,该预设数据库存储有关键词与词向量之间的对应关系,该词向量由该关键词和该关键词上下文的关键词确定。
103、根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间的距离。
104、对于该用户标签关键词的第一关键词和该兴趣类目关键词中的第二关键词,将该第一关键词和该第二关键词的词向量之间的距离获取为该第一关键词和该第二关键词的相似度,该第一关键词为该用户标签关键词中的任一个关键词,该第二关键词为该兴趣类目关键词中的任一个关键词。
本发明实施例提供的方法,通过用低维向量来表示关键词,并基于关键词的上下文中关键词对词向量的表示进行学习,从而使得相同语义的关键词在向量空间距离较近,从而可以更好的描述用户标签和兴趣类目的相似度,提高了后续向用户推荐信息的准确率以及成功率。
可选地,该方法还包括:
对预设语料库中的文本信息进行分词,得到该文本信息的多个关键词;
根据该预设算法模型和该多个关键词的预设初向量,对该多个关键词的向量表示进行计算,得到多个关键词对应的词向量。
可选地,根据预设算法模型和该多个关键词的预设初向量,对该多个关键词的向量表示进行计算,得到多个关键词对应的词向量包括:
根据该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取该多个关键词对应的中间量;
根据该多个关键词对应的中间量、该多个关键词中的当前关键词的预设初向量和该当前关键词上下文的关键词的预设初向量,获取该多个关键词对应的词向量。
可选地,根据该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取该多个关键词对应的中间量包括:
针对该多个关键词中的第k个,将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,
应用公式得到第k个关键词对应的中间量;
其中,为该第k个关键词上下文的关键词的预设初向量,为该第k个关键词的预设初向量,2l为该第k个关键词上下文的关键词的个数;
或,
针对该多个关键词中的第k个,服务器将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
可选地,根据该多个关键词对应的中间量、该多个关键词中的当前关键词的预设初向量和该当前关键词上下文的关键词的预设初向量,获取该多个关键词对应的词向量包括:
根据得到的该多个关键词对应的中间量和该多个关键词上下文的关键词的预设初向量,得到该多个关键词对应的词向量;
根据得到的该多个关键词对应的中间量和该多个关键词关键词的预设初向量,得到该多个关键词上下文关键词的词向量;
基于已经得到的该多个关键词对应的词向量和该多个关键词上下文关键词的词向量,对该多个关键词对应的词向量进行训练。
可选地,根据得到的该多个关键词对应的中间量和该多个关键词上下文的关键词的预设初向量,得到该多个关键词对应的词向量包括:
根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;
或,
根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量;
其中,gradhk=f(hk)-yk;
f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号。
可选地,根据得到的该多个关键词对应的中间量和该多个关键词关键词的预设初向量,得到该多个关键词上下文关键词的词向量包括:
根据得到的第k个关键词对应的中间量和该多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量。
可选地,基于已经得到的该多个关键词对应的词向量和该多个关键词上下文关键词的词向量,对该多个关键词对应的词向量进行训练包括:
该多个关键词中第k个关键词上下文关键词包括该多个关键词中第k-l个关键词到第k+l个关键词;
对于该多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
可选地,该多个关键词的预设初向量的各个元素的取值范围为0~1。
可选地,根据该预设算法模型和该多个关键词的预设初向量,对该多个关键词的向量表示进行计算,得到多个关键词对应的词向量之后,该方法还包括:
当用户标签和/或兴趣类目中具有新增关键词时,获取当前新闻信息和论坛信息,以该当前新闻信息和论坛信息为语料库,获取该新增关键词对应的词向量。
可选地,根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间的距离包括:
根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值;
将词向量之间夹角的余弦值作为该词向量之间的距离。
图2是本发明实施例提供的一种关键词相似度获取方法流程图。参见图2,该实施例的执行主体为服务器,该方法流程可以包括建立预设数据库的过程以及应用预设数据库获取关键词之间的相似度的过程,下述步骤201~203为服务器建立预设数据库的过程:
201、服务器对预设语料库中的文本信息进行分词,得到该文本信息的多个关键词。
预设语料库包括了很多内容,为了简化后续的分析过程,服务器需要对该预设语料库中的文本信息进行分词。该步骤201具体为:服务器将该预设语料库中包含的每一个文本信息进行分词,并对分词得到的结果进行过滤,得到预设语料库中每一个文本信息的多个关键词。当然,也可以将分词结果中所包含的词作为文本信息的关键词。
其中,预设语料库可以由技术人员在开发时设置,也可以由用户在使用的过程中调整,本发明实施例对此不做限定。本发明实施例中仅以搜搜百科全文和问问的问答内容作为预设语料库为例进行详细说明。该预设语料库具体可以包括搜搜百科全文、问问的问答内容、论坛中的内容等。当然,该预设语料库的来源包括但不限于上述所提供的来源,本发明实施例对此不作具体限定。
例如,问答内容为“旅游网站有哪些?”,“乐途网、中国旅游交易网、携程网、同程网、途牛网。”,服务器将该问答内容进行分词,得到的多个关键词可以为“旅游、乐途网、中国旅游交易网、携程网、同程网、途牛网”。
202、服务器根据该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取该多个关键词对应的中间量。
具体地,服务器对经过分词得到的多个关键词中每一个关键词设置初向量,针对该多个关键词中的第k个,将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,
应用公式得到第k个关键词对应的中间量;
其中,为该第k个关键词上下文的关键词的预设初向量,为该第k个关键词的预设初向量,2l为该第k个关键词上下文的关键词的个数。进一步地,服务器根据上述过程分别计算多个关键词中每一个关键词对应的中间量。
其中,关键词的预设初向量可以由技术人员在开发时设置,也可以是用户在使用的过程中调整,本发明实施例对此不做限定。本发明实施例中,多个关键词的预设初向量的各个元素的取值范围为0~1。
每一个关键词上下文的关键词为在预设语料库的文本信息中与该关键词相邻的关键词。如,文本信息为“信息技术是主要用于管理和处理信息所采用的各种技术的总称,它主要包括传感技术、计算机技术和通信技术等。”该文本信息的关键词为“信息技术、管理和处理信息、技术、传感技术、计算机技术和通信技术”,其中该关键词“传感技术”上下文的关键词为“管理和处理信息、技术、计算机技术和通信技术”。
203、服务器根据该多个关键词对应的中间量、该多个关键词中的当前关键词的预设初向量和该当前关键词上下文的关键词的预设初向量,获取该多个关键词对应的词向量。
服务器根据多个关键词中每一个关键词对应的中间量,得到每一个关键词对应的中间量的逻辑回归函数,由于该逻辑回归函数的优化一般基于最大似然估计进行,因此,在给定某一关键词和该关键词上下文的关键词的情况下,该关键词对应的中间量的逻辑回归函数的值应高于其他关键词对应的中间量的逻辑回归函数的值,为此,服务器需要根据随机梯度下降算法,得到该关键词的低维向量表示。
该步骤203可以包括下述步骤(1)、(2)和(3)的过程:
(1)服务器根据得到的该多个关键词对应的中间量和该多个关键词上下文的关键词的预设初向量,得到该多个关键词对应的词向量。
具体地,服务器根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;服务器根据得到的第k个关键词对应的中间量和该多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量;
其中,gradhk=f(hk)-yk;
f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号,hk为第k个关键词对应的中间量。
上述过程即为:服务器将第k个关键词对应的中间量,利用公式得到第k个关键词对应的中间量的逻辑回归函数,并利用公式gradhk=f(hk)-yk,得到第k个关键词对应的中间量对应的梯度,服务器根据该多个关键词的第k个关键词上下文的关键词的预设初向量,利用公式 得到第k个关键词的词向量。
其中,当该第k个关键词为通过正采样获取时,yk=1;当该第k个关键词为通过负采样获取时,yk=0。其中,正采样为该第k个关键词是通过从预设语料库中某个文本信息中提取的,负采样为该第k个关键词通过从预设语料库所包括的关键词中随机抽取得到。
(2)服务器根据得到的该多个关键词对应的中间量和该多个关键词关键词的预设初向量,得到该多个关键词上下文关键词的词向量。
具体地,服务器根据得到的第k个关键词对应的中间量和该多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量。
上述过程即为:服务器根据得到的第k个关键词对应的中间量,利用公式得到第k个关键词对应的中间量的逻辑回归函数,并利用公式gradhk=f(hk)-yk,得到第k个关键词对应的中间量对应的梯度,服务器根据该多个关键词的第k个关键词的预设初向量,利用公式得到第k个关键词的词向量。
需要说明的是,上述步骤(1)和(2)是按照先后顺序执行的,当然,该步骤(1)和(2)也可以是同时进行的,还可以是先执行步骤(2),再执行步骤(1),本发明实施例对步骤(1)和(2)的执行顺序不做限定。
(3)服务器基于已经得到的该多个关键词对应的词向量和该多个关键词上下文的关键词的词向量,对该多个关键词对应的词向量进行训练。
具体地,该多个关键词中第k个关键词上下文的关键词包括该多个关键词中第k-l个关键词到第k+l个关键词;对于该多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
例如,以k=10,l=5为例,则该多个关键词中第10个关键词上下文的关键词包括多个关键词中第5个关键词到第15个关键词,当服务器通过上述步骤(1)和(2)得到第10个关键词的词向量和第5个关键词到第9个关键词、第11个关键词到第15个关键词的词向量,当服务器重新获取第5个关键词到第9个关键词、第11个关键词到第15个关键词中任一个关键词的词向量时,服务器将已获取到的该多个关键词中第5个关键词到第15个关键词的词向量作为获取该任一个关键词的词向量时的预设初向量,从而获取第5个关键词到第9个关键词、第11个关键词到第15个关键词中任一个关键词的词向量。根据上述过程依次递推,获取该多个关键词的词向量。
其中,当k=1时,服务器可以将该关键词的预设初向量作为该关键词的词向量,而不需要选取该关键词上下文的关键词以获取该关键词的词向量,当然,服务器还可以以n>1的l个关键词作为第一个关键词上下文关键词,通过第一个关键词上下文的关键词,获取该第一个关键词的词向量,其中,n为预设数据库中包含的所有关键词的个数,同样的,当k=n时,服务器也可以利用相同的方式获取第n个关键词的词向量。
可见,服务器根据上述203的过程,可以得到多个关键词中每一个关键词的词向量。
本发明实施例以上述202~203提供的cbow模型获取多个关键词中每一个关键词的词向量,在实际过程中,服务器还可以通过其他方式,如利用skip-gram模型和该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取多个关键词中每一个关键词的词向量,则服务器通过skip-gram模型获取多个关键词中每一个关键词的词向量的过程,可以包括以下步骤(4)、(5)、(6)和(7):
(4)针对该多个关键词中的第k个,服务器将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
具体地,服务器针对该多个关键词中的第k个,服务器利用公式计算得到第k个关键词对应的中间量。
(5)服务器根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量,其中,gradhk=f(hk)-yk。
具体地,服务器将第k个关键词对应的中间量,利用公式得到第k个关键词对应的中间量的逻辑回归函数,并利用公式gradhk=f(hk)-yk,得到第k个关键词对应的中间量对应的梯度,服务器根据该多个关键词的第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量。
(6)服务器根据得到的第k个关键词对应的中间量和将该多个关键词的第k个关键词的预设初向量,利用公式得到第k个关键词上下文关键词的词向量。
该步骤(6)与上述步骤(2)同理,在此不再赘述。
(7)该多个关键词中第k个关键词上下文关键词包括该多个关键词中第k-l个关键词到第k+l个关键词;对于该多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
该步骤(7)与上述步骤(3)同理,在此不再赘述。
当然,除上述两种获取关键词的词向量的方式之外,还可以通过其他方式获取关键词的词向量,本发明实施例对此不做限定。
需要说明的是,本发明实施例中,对通过上述201~203的过程得到的关键词的词向量,服务器还可以通过预设模型对该词向量进行简化,从而使得进行步骤201~202获取词向量的速度提升,可以支持的语料大幅增加,使得通过使用单机进行获取词向量的过程成为可能。其中,该预设模型可以是log-bilinear模型。
通过上述步骤201~203的过程,服务器根据该多个关键词中每k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,得到第k个关键词对应的中间量,并根据该第k个关键词对应的中间量、该第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,分别获取该第k个关键词的词向量和该第k个关键词上下文的关键词的词向量,当获取第k+j个关键词的词向量时,服务器将上述获取第k个关键词的词向量时得到的该第k个关键词的词向量和该第k个关键词上下文的关键词的词向量,作为第k+j个关键词的预设初向量和第k+j个关键词上下文的关键词的预设初向量,从而获取第k+j个关键词的词向量,根据上述递推过程,服务器可以分别获取到多个关键词的词向量。可见,本发明实施例通过使用特征学习模型从关键词的上下文学习关键词的低维向量表示,然后根据词向量之间的距离来计算用户标签和兴趣类目关键词之间的相似度。
204、服务器将该多个关键词中每一个关键词和该每一个关键词的词向量对应存储在预设数据库中。
步骤201~203是服务器获取该预设语料库中多个关键词的词向量的过程。当出现新的关键词时,该服务器还可以通过以下步骤205的过程对该预设数据库进行更新。
205、当用户标签和/或兴趣类目中具有新增关键词时,服务器获取当前新闻信息和论坛信息,以该当前新闻信息和论坛信息为语料库,获取该新增关键词对应的词向量。
当用户标签和/或兴趣类目中出现新的关键词,如“爸爸去哪儿”,在对该用户标签和/或兴趣类目的文本信息进行分词时,可能会将新的关键词拆分开,而不会以一个关键词出现,然而如果获取到了该新的关键词,在预设数据库中也无法查找到该新的关键词的词向量,因此,需要对该预设数据库进行更新。在更新过程可以是在更新周期到达时进行,也可以是在获取到该新的关键词时进行,本发明实施例对此不做限定。
该步骤205具体为:服务器根据获取到的新增关键词,在最新的新闻信息和论坛信息中查找,得到与该新增关键词或用户数据有关的文本信息,服务器对该得到的文本信息进行分词,得到多个新增关键词,并根据步骤201~203的过程得到该多个新增关键词的词向量。
以下步骤206~209是服务器应用预设数据库获取关键词之间的相似度的过程:
206、服务器获取用户标签关键词和兴趣类目关键词。
其中,用户标签为描述用户的一段具有完整语义的文本,该用户标签可以是一款游戏的名称,如“天天爱消除”,该用户标签也可以是该用户查看过的新闻的类别,如“旅游频道”、“娱乐版块”,该用户标签还可以是其他用户对该用户的描述,如“IT精英”等。兴趣类目为通过人工整理的方式得到的一份描述用户兴趣的文本,对比用户标签而言,兴趣类目可以看作为用户标签的一个超集。例如,当某用户的用户标签为“旅游频道”时,该用户的兴趣类目可以为“旅游频道、旅游网、驴友论坛”。
具体地,获取用户的用户标签和兴趣类目,对用户标签和兴趣类目进行分词,从分词结果中获取用户标签关键词和兴趣类目关键词。由于用户标签和兴趣类目可以很直观的反应出用户对哪些信息感兴趣,因此,服务器可以通过获取用户标签关键词和兴趣类目关键词之间的相似度,从而将用户感兴趣的信息推荐给该用户。而为了简化分析过程,需要将得到的用户标签和兴趣类目进行分词,并从分词结果中提取出有针对性的词,分别得到用户标签关键词和兴趣类目关键词。基于以上示例,当某用户的用户标签为“旅游频道”时,该用户标签关键词可以为“旅游”,当该用户的兴趣类目为“旅游频道、旅游网、驴友论坛”时,该兴趣类目关键词可以为“旅游、驴友、论坛”。
207、服务器根据该用户标签关键词和兴趣类目关键词,查找预设数据库,得到该用户标签关键词中每一个关键词对应的词向量和该兴趣类目关键词中每一个关键词对应的词向量,该预设数据库存储有关键词与词向量之间的对应关系,该词向量由该关键词和该关键词上下文的关键词确定。
其中,预设数据库存储有经过步骤201~203的过程得到的多个关键词中每一个关键词和该每一个关键词的词向量的对应关系。
例如,当该用户标签关键词为“旅游、论坛”,该兴趣类目关键词为“旅游、驴友、论坛”时,服务器查找预设数据库分别得到用户标签关键词“旅游”和“论坛”的词向量、兴趣类目关键词“旅游”、“驴友”、“论坛”的词向量,该预设数据库可以以表格的形式存储。表1是本发明实施例提供的一种预设数据库。
表1
参见表1,服务器通过查询如表1的预设数据库后,得到用户标签关键词中“旅游”的词向量为“论坛”的词向量为兴趣类目关键词中“旅游”的词向量为“驴友”的词向量为“论坛”的词向量为
208、服务器根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值,将词向量之间夹角的余弦值作为该词向量之间的距离。
具体地,针对用户标签关键词的词向量和兴趣类目关键词的词向量可以利用公式得到用户标签关键词的词向量和兴趣类目关键词的词向量之间夹角的余弦值,将用户标签关键词的词向量和兴趣类目关键词的词向量之间夹角的余弦值作为用户标签关键词和兴趣类目关键词的词向量之间的距离。其中,θ为用户标签关键词的词向量和兴趣类目关键词的词向量之间的夹角。
基于步骤207的示例,用户标签关键词中“旅游”的词向量为“论坛”的词向量为兴趣类目关键词中“旅游”的词向量为“驴友”的词向量为“论坛”的词向量为服务器利用公式分别计算得到用户标签关键词“旅游”的词向量与兴趣类目关键词“旅游”的词向量之间夹角的余弦值、用户标签关键词“旅游”的词向量与兴趣类目关键词“驴友”的词向量之间夹角的余弦值、用户标签关键词“旅游”的词向量与兴趣类目关键词中“论坛”的词向量之间夹角的余弦值,同理,可得到用户标签关键词“论坛”的词向量分别与兴趣类目关键词中“旅游”的词向量“驴友”的词向量“论坛”的词向量之间夹角的余弦值。
需要说明的是,本发明实施例仅以用户标签关键词和兴趣类目关键词的词向量之间夹角的余弦值,作为用户标签关键词和兴趣类目关键词的词向量之间的距离为例进行详细说明,当然在实际过程中还可以以其他方式对用户标签关键词和兴趣类目关键词的词向量之间的距离进行表示,例如,可以以用户标签关键词和兴趣类目关键词的词向量之间夹角的正弦值,作为用户标签关键词和兴趣类目关键词的词向量之间的距离,还可以以用户标签关键词的词向量到兴趣类目关键词的词向量之间的向量距离,作为用户标签关键词和兴趣类目关键词的词向量之间的距离等,本发明实施例对此不做限定。
209、对于该用户标签关键词的第一关键词和该兴趣类目关键词中的第二关键词,服务器将该第一关键词和该第二关键词的词向量之间的距离获取为该第一关键词和该第二关键词的相似度,该第一关键词为该用户标签关键词中的任一个关键词,该第二关键词为该兴趣类目关键词中的任一个关键词。
相似度是表示两个个体之间的相似程度,两个个体之间的相似度越小,说明两个个体之间的差异越大。在相似度的表示中,可以利用两个向量之间夹角的余弦值来作为衡量两个个体之间差异的大小。该步骤209具体为:服务器将用户标签中的任一个关键词的词向量与兴趣类目中的任一个关键词的词向量之间夹角的余弦值,作为该两个关键词的相似度。
为了更好的说明本发明的整个实施过程,图3是本发明实施例提供的一种关键词相似度获取流程图。参见图3,服务器对预设语料库中的文本信息进行分词,从中获取多个关键词,通过如步骤202和203该的模型训练的过程,对得到的多个特征词进行训练,得到该多个特征词的词向量。当服务器获取到用户标签关键词和兴趣类目关键词时,查找预设数据库,得到用户标签关键词的词向量和兴趣类目关键词的词向量,根据用户标签关键词中每一个关键词的词向量和兴趣类目关键词中每一个关键词的词向量,获取用户标签关键词中每一个关键词和兴趣类目关键词中每一个关键词的相似度。
本发明实施例提供的方法,通过用低维向量来表示关键词,并基于关键词的上下文中关键词对词向量的表示进行学习,从而使得相同语义的关键词在向量空间距离较近,从而可以更好的描述用户标签和兴趣类目的相似度,提高了后续向用户推荐信息的准确率以及成功率。进一步地,通过获取关键词的低维的向量后,任何两个词之间的相似度都可以通过向量空间的距离来描述,因此可以极大的提高用户标签和兴趣类目之间的召回率;而且,两个词向量之间的距离的取值范围是0~1,不容易出现词向量之间距离的大小分布不均的情况,而且用户标签和兴趣类目关键词之间的距离不需要再经过归一化等处理,并通过建立预设数据库并对该预设数据库进行更新,使得通过该方法得到的两个关键词的相似度更准确,进一步提高了后续向用户推荐信息的准确率以及成功率。
图4是本发明实施例提供的一种关键词相似度获取装置结构示意图。参见图4,该装置包括:关键词获取模块401、查询模块402、距离获取模块403和相似度获取模块404。该关键词获取模块401,用于获取用户标签关键词和兴趣类目关键词;关键词获取模块401与查询模块402相连接,查询模块402,用于根据该用户标签关键词和兴趣类目关键词,查找预设数据库,得到该用户标签关键词中每一个关键词对应的词向量和该兴趣类目关键词中每一个关键词对应的词向量,该预设数据库存储有关键词与词向量之间的对应关系,该词向量由该关键词和该关键词上下文的关键词确定;查询模块402与距离获取模块403相连接,距离获取模块403,用于根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间的距离;距离获取模块403与相似度获取模块404相连接,相似度获取模块404,用于对于该用户标签关键词的第一关键词和该兴趣类目关键词中的第二关键词,将该第一关键词和该第二关键词的词向量之间的距离获取为该第一关键词和该第二关键词的相似度,该第一关键词为该用户标签关键词中的任一个关键词,该第二关键词为该兴趣类目关键词中的任一个关键词。
可选地,该装置还包括:
分词模块,用于对预设语料库中的文本信息进行分词,得到该文本信息的多个关键词;
词向量获取模块,用于根据该预设算法模型和该多个关键词的预设初向量,对该多个关键词的向量表示进行计算,得到多个关键词对应的词向量。
可选地,该词向量获取模块包括:
中间量获取单元,用于根据该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取该多个关键词对应的中间量;
词向量获取单元,用于根据该多个关键词对应的中间量、该多个关键词中的当前关键词的预设初向量和该当前关键词上下文的关键词的预设初向量,获取该多个关键词对应的词向量。
可选地,该中间量获取单元用于针对该多个关键词中的第k个,将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词对应的中间量;其中,为该第k个关键词上下文的关键词的预设初向量,为该第k个关键词的预设初向量,2l为该第k个关键词上下文的关键词的个数;或,针对该多个关键词中的第k个,服务器将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
可选地,词向量获取单元用于根据得到的该多个关键词对应的中间量和该多个关键词上下文的关键词的预设初向量,得到该多个关键词对应的词向量;根据得到的该多个关键词对应的中间量和该多个关键词关键词的预设初向量,得到该多个关键词上下文关键词的词向量;基于已经得到的该多个关键词对应的词向量和该多个关键词上下文关键词的词向量,对该多个关键词对应的词向量进行训练。
可选地,该词向量获取单元用于根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;或,根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,利用公式 得到第k个关键词的词向量;其中, gradhk=f(hk)-yk;f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号。
可选地,该词向量获取单元用于根据得到的第k个关键词对应的中间量和该多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量。
可选地,该词向量获取单元用于该多个关键词中第k个关键词上下文关键词包括该多个关键词中第k-l个关键词到第k+l个关键词;对于该多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
可选地,该多个关键词的预设初向量的各个元素的取值范围为0~1。
可选地,该装置还包括:
更新模块,用于当用户标签和/或兴趣类目中具有新增关键词时,获取当前新闻信息和论坛信息,以该当前新闻信息和论坛信息为语料库,获取该新增关键词对应的词向量。
可选地,该距离获取模块403还用于根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值;将词向量之间夹角的余弦值作为该词向量之间的距离。
综上所述,本发明实施例提供的装置,通过用低维向量来表示关键词,并基于关键词的上下文中关键词对词向量的表示进行学习,从而使得相同语义的关键词在向量空间距离较近,从而可以更好的描述用户标签和兴趣类目的相似度,提高了后续向用户推荐信息的准确率以及成功率。
需要说明的是:上述实施例提供的关键词相似度获取装置在进行关键词相似度获取时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的关键词相似度获取装置与关键词相似度获取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5是本发明实施例提供的一种服务器结构示意图。参见图5,该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,CPU)522(例如,一个或一个以上处理器)和存储器532,一个或一个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500上执行存储介质530中的一系列指令操作。
服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口558,一个或一个以上键盘556,和/或,一个或一个以上操作系统541,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM等等。
该存储器中存储有完成以下过程的指令:
获取用户标签关键词和兴趣类目关键词;
根据该用户标签关键词和兴趣类目关键词,查找预设数据库,得到该用户标签关键词中每一个关键词对应的词向量和该兴趣类目关键词中每一个关键词对应的词向量,该预设数据库存储有关键词与词向量之间的对应关系,该词向量由该关键词和该关键词上下文的关键词确定;
根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间的距离;
对于该用户标签关键词的第一关键词和该兴趣类目关键词中的第二关键词,将该第一关键词和该第二关键词的词向量之间的距离获取为该第一关键词和该第二关键词的相似度,该第一关键词为该用户标签关键词中的任一个关键词,该第二关键词为该兴趣类目关键词中的任一个关键词。
可选地,该存储器中还存储有完成以下过程的指令:
对预设语料库中的文本信息进行分词,得到该文本信息的多个关键词;
根据该预设算法模型和该多个关键词的预设初向量,对该多个关键词的向量表示进行计算,得到多个关键词对应的词向量。
可选地,该存储器中还存储有完成以下过程的指令:
根据该多个关键词中每一个关键词的预设初向量和该多个关键词中每一个关键词上下文的关键词的预设初向量,获取该多个关键词对应的中间量;
根据该多个关键词对应的中间量、该多个关键词中的当前关键词的预设初向量和该当前关键词上下文的关键词的预设初向量,获取该多个关键词对应的词向量。
可选地,该存储器中还存储有完成以下过程的指令:
针对该多个关键词中的第k个,将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,
应用公式得到第k个关键词对应的中间量;
其中,为该第k个关键词上下文的关键词的预设初向量,为该第k个关键词的预设初向量,2l为该第k个关键词上下文的关键词的个数;
或,
针对该多个关键词中的第k个,服务器将该多个关键词的第k个关键词的预设初向量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
可选地,该存储器中还存储有完成以下过程的指令:
根据得到的该多个关键词对应的中间量和该多个关键词上下文的关键词的预设初向量,得到该多个关键词对应的词向量;
根据得到的该多个关键词对应的中间量和该多个关键词关键词的预设初向量,得到该多个关键词上下文关键词的词向量;
基于已经得到的该多个关键词对应的词向量和该多个关键词上下文关键词的词向量,对该多个关键词对应的词向量进行训练。
可选地,该存储器中还存储有完成以下过程的指令:
根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;
或,
根据得到的第k个关键词对应的中间量和该第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量;
其中,gradhk=f(hk)-yk;
f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号。
可选地,该存储器中还存储有完成以下过程的指令:
根据得到的第k个关键词对应的中间量和该多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量。
可选地,该存储器中还存储有完成以下过程的指令:
该多个关键词中第k个关键词上下文关键词包括该多个关键词中第k-l个关键词到第k+l个关键词;
对于该多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
可选地,该存储器中还存储有完成以下过程的指令:该多个关键词的预设初向量的各个元素的取值范围为0~1。
可选地,该存储器中还存储有完成以下过程的指令:
当用户标签和/或兴趣类目中具有新增关键词时,获取当前新闻信息和论坛信息,以该当前新闻信息和论坛信息为语料库,获取该新增关键词对应的词向量。
可选地,该存储器中还存储有完成以下过程的指令:
根据该用户标签关键词中每一个关键词对应的词向量、该兴趣类目关键词中每一个关键词对应的词向量,计算该用户标签关键词中每一个关键词对应的词向量与该兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值;
将词向量之间夹角的余弦值作为该词向量之间的距离。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种关键词相似度获取方法,其特征在于,所述方法包括:
获取用户标签关键词和兴趣类目关键词;
根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词;
其中,所述方法还包括:对预设语料库中的文本信息进行分词,得到所述文本信息的多个关键词;根据预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量;所述根据预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量包括:根据所述多个关键词中每一个关键词的预设初向量和所述多个关键词中每一个关键词上下文的关键词的预设初向量,获取所述多个关键词对应的中间量;根据所述多个关键词对应的中间量、所述多个关键词中的当前关键词的预设初向量和所述当前关键词上下文的关键词的预设初向量,获取所述多个关键词对应的词向量。
2.根据权利要求1所述的方法,其特征在于,根据所述多个关键词中每一个关键词的预设初向量和所述多个关键词中每一个关键词上下文的关键词的预设初向量,获取所述多个关键词对应的中间量包括:
针对所述多个关键词中的第k个,将所述多个关键词的第k个关键词的预设初向量和所述第k个关键词上下文的关键词的预设初向量,
应用公式得到第k个关键词对应的中间量;
其中,为所述第k个关键词上下文的关键词的预设初向量,为所述第k个关键词的预设初向量,2l为所述第k个关键词上下文的关键词的个数;
或,
针对所述多个关键词中的第k个,服务器将所述多个关键词的第k个关键词的预设初向量和所述第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
3.根据权利要求1所述的方法,其特征在于,根据所述多个关键词对应的中间量、所述多个关键词中的当前关键词的预设初向量和所述当前关键词上下文的关键词的预设初向量,获取所述多个关键词对应的词向量包括:
根据得到的所述多个关键词对应的中间量和所述多个关键词上下文的关键词的预设初向量,得到所述多个关键词对应的词向量;
根据得到的所述多个关键词对应的中间量和所述多个关键词的预设初向量,得到所述多个关键词上下文关键词的词向量;
基于已经得到的所述多个关键词对应的词向量和所述多个关键词上下文关键词的词向量,对所述多个关键词对应的词向量进行训练。
4.根据权利要求3所述的方法,其特征在于,根据得到的所述多个关键词对应的中间量和所述多个关键词上下文的关键词的预设初向量,得到所述多个关键词对应的词向量包括:
根据得到的第k个关键词对应的中间量和所述第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;
或,
根据得到的第k个关键词对应的中间量和所述第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量;
其中,gradhk=f(hk)-yk;
f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号;
其中,为该第k个关键词上下文的关键词的预设初向量,hk为第k个关键词对应的中间量。
5.根据权利要求3所述的方法,其特征在于,根据得到的所述多个关键词对应的中间量和所述多个关键词的预设初向量,得到所述多个关键词上下文关键词的词向量包括:
根据得到的第k个关键词对应的中间量和所述多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量;
其中,为该第k个关键词的预设初向量,gradhk为第k个关键词对应的中间量对应的梯度。
6.根据权利要求3所述的方法,其特征在于,基于已经得到的所述多个关键词对应的词向量和所述多个关键词上下文关键词的词向量,对所述多个关键词对应的词向量进行训练包括:
所述多个关键词中第k个关键词上下文关键词包括所述多个关键词中第k-l个关键词到第k+l个关键词;
对于所述多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述多个关键词的预设初向量的各个元素的取值范围为0~1。
8.根据权利要求1所述的方法,其特征在于,根据所述预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量之后,所述方法还包括:
当用户标签和/或兴趣类目中具有新增关键词时,获取当前新闻信息和论坛信息,以所述当前新闻信息和论坛信息为语料库,获取所述新增关键词对应的词向量。
9.根据权利要求1所述的方法,其特征在于,根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离包括:
根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值;
将词向量之间夹角的余弦值作为所述词向量之间的距离。
10.一种关键词相似度获取装置,其特征在于,所述装置包括:
关键词获取模块,用于获取用户标签关键词和兴趣类目关键词;
查找模块,用于根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
距离获取模块,用于根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
相似度获取模块,用于对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词;
其中,所述装置还包括:分词模块,用于对预设语料库中的文本信息进行分词,得到所述文本信息的多个关键词;词向量获取模块,用于根据预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量;所述词向量获取模块包括:中间量获取单元,用于根据所述多个关键词中每一个关键词的预设初向量和所述多个关键词中每一个关键词上下文的关键词的预设初向量,获取所述多个关键词对应的中间量;词向量获取单元,用于根据所述多个关键词对应的中间量、所述多个关键词中的当前关键词的预设初向量和所述当前关键词上下文的关键词的预设初向量,获取所述多个关键词对应的词向量。
11.根据权利要求10所述的装置,其特征在于,所述中间量获取单元用于针对所述多个关键词中的第k个,将所述多个关键词的第k个关键词的预设初向量和所述第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词对应的中间量;其中,为所述第k个关键词上下文的关键词的预设初向量,为所述第k个关键词的预设初向量,2l为所述第k个关键词上下文的关键词的个数;或,针对所述多个关键词中的第k个,服务器将所述多个关键词的第k个关键词的预设初向量和所述第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词对应的中间量。
12.根据权利要求10所述的装置,其特征在于,词向量获取单元用于根据得到的所述多个关键词对应的中间量和所述多个关键词上下文的关键词的预设初向量,得到所述多个关键词对应的词向量;根据得到的所述多个关键词对应的中间量和所述多个关键词的预设初向量,得到所述多个关键词上下文关键词的词向量;基于已经得到的所述多个关键词对应的词向量和所述多个关键词上下文关键词的词向量,对所述多个关键词对应的词向量进行训练。
13.根据权利要求12所述的装置,其特征在于,所述词向量获取单元用于根据得到的第k个关键词对应的中间量和所述第k个关键词上下文的关键词的预设初向量,应用公式得到第k个关键词的词向量;或,根据得到的第k个关键词对应的中间量和所述第k个关键词上下文的关键词的预设初向量,利用公式得到第k个关键词的词向量;其中,gradhk=f(hk)-yk;f(hk)为第k个关键词对应的中间量的逻辑回归函数,gradhk为第k个关键词对应的中间量对应的梯度,为第k个关键词的词向量,为第k个关键词上下文的关键词的词向量,yk为目标值,k为关键词的标号;
其中,为该第k个关键词上下文的关键词的预设初向量,hk为第k个关键词对应的中间量。
14.根据权利要求12所述的装置,其特征在于,所述词向量获取单元用于根据得到的第k个关键词对应的中间量和所述多个关键词的第k个关键词的预设初向量,应用公式得到第k个关键词上下文关键词的词向量;
其中,为该第k个关键词的预设初向量,gradhk为第k个关键词对应的中间量对应的梯度。
15.根据权利要求12所述的装置,其特征在于,所述词向量获取单元用于所述多个关键词中第k个关键词上下文关键词包括所述多个关键词中第k-l个关键词到第k+l个关键词;对于所述多个关键词中第k+j个关键词,将已获取到的第k+j个关键词的词向量作为第k+j个关键词的预设初向量,重新获取多个关键词对应的词向量,其中,-l≤j≤l。
16.根据权利要求10-15任一项所述的装置,其特征在于,所述多个关键词的预设初向量的各个元素的取值范围为0~1。
17.根据权利要求10所述的装置,其特征在于,所述装置还包括:
更新模块,用于当用户标签和/或兴趣类目中具有新增关键词时,获取当前新闻信息和论坛信息,以所述当前新闻信息和论坛信息为语料库,获取所述新增关键词对应的词向量。
18.根据权利要求10所述的装置,其特征在于,所述距离获取模块还用于根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间夹角的余弦值;将词向量之间夹角的余弦值作为所述词向量之间的距离。
19.一种服务器,其特征在于,所述服务器包括:处理器、存储器,所述处理器与所述存储器相连接,
所述处理器,用于获取用户标签关键词和兴趣类目关键词;
所述处理器还用于根据所述用户标签关键词和兴趣类目关键词,查找预设数据库,得到所述用户标签关键词中每一个关键词对应的词向量和所述兴趣类目关键词中每一个关键词对应的词向量,所述预设数据库存储有关键词与词向量之间的对应关系,所述词向量由所述关键词和所述关键词上下文的关键词确定;
所述处理器还用于根据所述用户标签关键词中每一个关键词对应的词向量、所述兴趣类目关键词中每一个关键词对应的词向量,计算所述用户标签关键词中每一个关键词对应的词向量与所述兴趣类目关键词中每一个关键词对应的词向量之间的距离;
所述处理器还用于对于所述用户标签关键词的第一关键词和所述兴趣类目关键词中的第二关键词,将所述第一关键词和所述第二关键词的词向量之间的距离获取为所述第一关键词和所述第二关键词的相似度,所述第一关键词为所述用户标签关键词中的任一个关键词,所述第二关键词为所述兴趣类目关键词中的任一个关键词;
所述服务器还用于:对预设语料库中的文本信息进行分词,得到所述文本信息的多个关键词;根据预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量;所述根据预设算法模型和所述多个关键词的预设初向量,对所述多个关键词的向量表示进行计算,得到多个关键词对应的词向量包括:根据所述多个关键词中每一个关键词的预设初向量和所述多个关键词中每一个关键词上下文的关键词的预设初向量,获取所述多个关键词对应的中间量;根据所述多个关键词对应的中间量、所述多个关键词中的当前关键词的预设初向量和所述当前关键词上下文的关键词的预设初向量,获取所述多个关键词对应的词向量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310683046.3A CN104090890B (zh) | 2013-12-12 | 2013-12-12 | 关键词相似度获取方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310683046.3A CN104090890B (zh) | 2013-12-12 | 2013-12-12 | 关键词相似度获取方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104090890A CN104090890A (zh) | 2014-10-08 |
CN104090890B true CN104090890B (zh) | 2016-05-04 |
Family
ID=51638606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310683046.3A Active CN104090890B (zh) | 2013-12-12 | 2013-12-12 | 关键词相似度获取方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104090890B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095444A (zh) * | 2015-07-24 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 信息获取方法和装置 |
CN105117440A (zh) * | 2015-08-11 | 2015-12-02 | 北京奇虎科技有限公司 | 确定待推荐应用app的方法及装置 |
CN106485525A (zh) * | 2015-08-31 | 2017-03-08 | 百度在线网络技术(北京)有限公司 | 信息处理方法及装置 |
CN105262875A (zh) * | 2015-09-09 | 2016-01-20 | 陈包容 | 对移动终端的新增联系人进行通讯录分组的方法及装置 |
CN106897309B (zh) * | 2015-12-18 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 一种相似词的聚合方法和装置 |
CN105528335B (zh) * | 2015-12-22 | 2018-10-09 | 北京奇虎科技有限公司 | 确定新闻之间相关性的方法和装置 |
WO2017107651A1 (zh) | 2015-12-22 | 2017-06-29 | 北京奇虎科技有限公司 | 确定新闻之间相关性、多新闻之间相关性计算方法和装置 |
CN107544980B (zh) * | 2016-06-24 | 2020-07-24 | 北京国双科技有限公司 | 一种查找网页的方法及装置 |
CN106295252B (zh) * | 2016-08-18 | 2019-05-07 | 杭州布理岚柏科技有限公司 | 用于基因产品的检索方法 |
CN107784478B (zh) * | 2016-08-31 | 2020-09-15 | 北京国双科技有限公司 | 行政机构信息的处理方法和装置 |
CN106682964B (zh) * | 2016-12-29 | 2021-08-10 | 努比亚技术有限公司 | 一种确定应用标签的方法和装置 |
CN106844346B (zh) * | 2017-02-09 | 2020-08-25 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107562716A (zh) * | 2017-07-18 | 2018-01-09 | 阿里巴巴集团控股有限公司 | 词向量处理方法、装置以及电子设备 |
CN107844472B (zh) * | 2017-07-18 | 2021-08-24 | 创新先进技术有限公司 | 词向量处理方法、装置以及电子设备 |
CN107562715B (zh) * | 2017-07-18 | 2021-01-26 | 创新先进技术有限公司 | 词向量处理方法、装置以及电子设备 |
CN107609052B (zh) * | 2017-08-23 | 2019-09-24 | 中国科学院软件研究所 | 一种基于语义三角的领域知识图谱的生成方法及装置 |
CN107704512B (zh) * | 2017-08-31 | 2021-08-24 | 平安科技(深圳)有限公司 | 基于社交数据的金融产品推荐方法、电子装置及介质 |
CN108108497A (zh) * | 2018-01-29 | 2018-06-01 | 上海名轩软件科技有限公司 | 关键词推荐方法及设备 |
CN108491387B (zh) * | 2018-03-20 | 2022-04-22 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN108733647B (zh) * | 2018-04-13 | 2022-03-25 | 中山大学 | 一种基于高斯分布的词向量生成方法 |
CN109146539A (zh) * | 2018-06-28 | 2019-01-04 | 深圳市彬讯科技有限公司 | 用户画像的更新方法及装置 |
CN109558502B (zh) * | 2018-12-18 | 2021-11-30 | 福州大学 | 一种基于知识图谱的城市安全数据检索方法 |
CN110298029B (zh) * | 2019-05-22 | 2022-07-12 | 平安科技(深圳)有限公司 | 基于用户语料的好友推荐方法、装置、设备及介质 |
CN111930463A (zh) * | 2020-09-23 | 2020-11-13 | 杭州橙鹰数据技术有限公司 | 展示方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694670A (zh) * | 2009-10-20 | 2010-04-14 | 北京航空航天大学 | 一种基于公共子串的中文Web文档在线聚类方法 |
CN102880644A (zh) * | 2012-08-24 | 2013-01-16 | 电子科技大学 | 社区发现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7698270B2 (en) * | 2004-12-29 | 2010-04-13 | Baynote, Inc. | Method and apparatus for identifying, extracting, capturing, and leveraging expertise and knowledge |
-
2013
- 2013-12-12 CN CN201310683046.3A patent/CN104090890B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694670A (zh) * | 2009-10-20 | 2010-04-14 | 北京航空航天大学 | 一种基于公共子串的中文Web文档在线聚类方法 |
CN102880644A (zh) * | 2012-08-24 | 2013-01-16 | 电子科技大学 | 社区发现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104090890A (zh) | 2014-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104090890B (zh) | 关键词相似度获取方法、装置及服务器 | |
CN112632385B (zh) | 课程推荐方法、装置、计算机设备及介质 | |
Xiong et al. | Towards Twitter sentiment classification by multi-level sentiment-enriched word embeddings | |
CN111277706B (zh) | 一种应用推荐方法、装置、存储介质及电子设备 | |
Blaschke et al. | Place versus space: from points, lines and polygons in GIS to place-based representations reflecting language and culture | |
CN111401066B (zh) | 基于人工智能的词分类模型训练方法、词处理方法及装置 | |
CN103886054B (zh) | 一种网络教学资源的个性化推荐系统和推荐方法 | |
CN107220352A (zh) | 基于人工智能构建评论图谱的方法和装置 | |
CN110968684B (zh) | 一种信息处理方法、装置、设备及存储介质 | |
CN108255921A (zh) | 确定并显示推荐内容的相关解释的系统 | |
CN107729532A (zh) | 一种简历匹配方法及计算设备 | |
CN109271493A (zh) | 一种语言文本处理方法、装置和存储介质 | |
CN107636648A (zh) | 基于情绪标识来构造响应 | |
CN110825956A (zh) | 一种信息流推荐方法、装置、计算机设备及存储介质 | |
CN106104522B (zh) | 用于加强任意用户内容的方法、系统和计算机存储设备 | |
CN104346408B (zh) | 一种对网络用户进行标注的方法与设备 | |
CN109933699A (zh) | 一种学术画像模型的构建方法及装置 | |
CN105760524B (zh) | 一种科学新闻标题的多层次多分类方法 | |
CN106503123A (zh) | 一种基于计算机云数据的深度学习智能应答系统 | |
CN106776928A (zh) | 基于内存计算框架、融合社交环境及时空数据的位置推荐方法 | |
CN112559749B (zh) | 在线教育师生智能匹配方法、装置及存储介质 | |
CN114240552A (zh) | 基于深度聚类算法的产品推荐方法、装置、设备及介质 | |
Li et al. | Learning daily activity patterns with probabilistic grammars | |
Kim et al. | From descriptions to depictions: A dynamic sketch map drawing strategy | |
CN111710428A (zh) | 一种建模全局和局部上下文交互的生物医学文本表示方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |