CN104462357A - 实现个性化搜索的方法和装置 - Google Patents

实现个性化搜索的方法和装置 Download PDF

Info

Publication number
CN104462357A
CN104462357A CN201410742373.6A CN201410742373A CN104462357A CN 104462357 A CN104462357 A CN 104462357A CN 201410742373 A CN201410742373 A CN 201410742373A CN 104462357 A CN104462357 A CN 104462357A
Authority
CN
China
Prior art keywords
term vector
query word
word
search results
user
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.)
Granted
Application number
CN201410742373.6A
Other languages
English (en)
Other versions
CN104462357B (zh
Inventor
张军
牛罡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201410742373.6A priority Critical patent/CN104462357B/zh
Publication of CN104462357A publication Critical patent/CN104462357A/zh
Application granted granted Critical
Publication of CN104462357B publication Critical patent/CN104462357B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出一种实现个性化搜索的方法和装置,该实现个性化搜索的方法包括接收用户输入的查询词;根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量;将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果;接收所述服务端发送的搜索结果,并展现所述搜索结果。该方法可以实现用户的个性化搜索,并且保护用户隐私。

Description

实现个性化搜索的方法和装置
技术领域
本发明涉及信息技术领域,尤其涉及一种实现个性化搜索的方法和装置。
背景技术
用户可以在互联网上通过搜索获取所需信息,在搜索时,用户可以在搜索引擎的搜索栏中输入查询词并根据查询词获取搜索结果。现有技术中,服务端是根据查询词进行匹配,得到搜索结果,对于不同的用户,如果输入相同的查询时,则获取到相同的搜索结果。
但是,由于用户具有个性化特点,不同的用户在搜索同一个查询词时需要的搜索结果可能是不同的,例如,当一个英雄联盟游戏的爱好者与一名智能手机的爱好者都输入“S4”这个查询词的时候,有极大的可能,前者想要的结果是“英雄联盟LOL_2014职业联赛_S4赛季全球总决赛”,而后者所想要的结果是“三星的智能手机Galaxy S4”。
现有技术中,为了实现个性化搜索,客户端可以将用户的历史信息发送给服务端,服务端根据历史信息获取个性化的搜索结果。
但是,这种方式需要将用户的历史信息发送给服务端,会侵犯用户隐私。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种实现个性化搜索的方法,该方法可以实现用户的个性化搜索,并且保护用户隐私。
本发明的另一个目的在于提出一种实现个性化搜索的装置。
为达到上述目的,本发明第一方面实施例提出的实现个性化搜索的方法,包括:接收用户输入的查询词;根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量;将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果;接收所述服务端发送的搜索结果,并展现所述搜索结果。
本发明第一方面实施例提出的实现个性化搜索的方法,通过获取查询词对应的词向量,将查询词和词向量发送给服务端,可以使得服务端根据查询词和词向量获取搜索结果,由于词向量集合是对应用户建立的,不同用户可以建立不同的词向量集合,可以实现个性化搜索,并且,发送的是词向量而不是用户历史数据,可以保护用户隐私数据。
为达到上述目的,本发明第二方面实施例提出的实现个性化搜索的方法,包括:接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的;根据所述查询词和所述词向量,获取搜索结果;将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
本发明第二方面实施例提出的实现个性化搜索的方法,通过根据查询词和词向量获取搜索结果,可以使得搜索结果不仅与查询词有关,还与词向量有关,由于不同用户对应相同词的词向量可以不同,因此可以获取到个性化的搜索结果,从而实现个性化搜索,并且,本实施例接收的是词向量,不是具体的历史数据,可以保护用户隐私。
为达到上述目的,本发明第三方面实施例提出的实现个性化搜索的装置,包括:接收模块,用于接收用户输入的查询词;第一获取模块,用于根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量;发送模块,用于将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果;展现模块,用于接收所述服务端发送的搜索结果,并展现所述搜索结果。
本发明第三方面实施例提出的实现个性化搜索的装置,通过获取查询词对应的词向量,将查询词和词向量发送给服务端,可以使得服务端根据查询词和词向量获取搜索结果,由于词向量集合是对应用户建立的,不同用户可以建立不同的词向量集合,可以实现个性化搜索,并且,发送的是词向量而不是用户历史数据,可以保护用户隐私数据。
为达到上述目的,本发明第四方面实施例提出的实现个性化搜索的装置,包括:接收模块,用于接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的;获取模块,用于根据所述查询词和所述词向量,获取搜索结果;发送模块,用于将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
本发明第四方面实施例提出的实现个性化搜索的装置,通过根据查询词和词向量获取搜索结果,可以使得搜索结果不仅与查询词有关,还与词向量有关,由于不同用户对应相同词的词向量可以不同,因此可以获取到个性化的搜索结果,从而实现个性化搜索,并且,本实施例接收的是词向量,不是具体的历史数据,可以保护用户隐私。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一实施例提出的实现个性化搜索的方法的流程示意图;
图2是本发明另一实施例提出的实现个性化搜索的方法的流程示意图;
图3是本发明另一实施例提出的实现个性化搜索的方法的流程示意图;
图4是本发明实施例中根据输入历史得到词向量的流程示意图;
图5是本发明实施例中深度学习网络的结构示意图;
图6是本发明另一实施例提出的实现个性化搜索的装置的结构示意图;
图7是本发明另一实施例提出的实现个性化搜索的装置的结构示意图;
图8是本发明另一实施例提出的实现个性化搜索的装置的结构示意图;
图9是本发明另一实施例提出的实现个性化搜索的装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本发明一实施例提出的实现个性化搜索的方法的流程示意图,该方法包括:
S11:接收用户输入的查询词。
本实施例的执行主体可以是客户端。
其中,用户可以在客户端的搜索引擎的搜索框中输入查询词(query),例如,用户可以在搜索框中输入“作业”。
S12:根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量。
其中,在搜索之前可以对应每个用户建立词向量集合。
词向量集合中包括至少一个词的词向量。
词向量是由多个实数组成的实数向量,通常维度是50到1000。
对于同一个词,不同用户对应的词向量可以是不同的,例如,对应“作业”这个词,可能是指学生作业,也可能是指工程作业,当作业表示学生作业时,与作业表示工程作业时,“作业”这个词可以用不同的词向量表示。
可选的,词向量集合可以采用如下方式建立:
获取所述用户采用输入法得到的输入历史;并根据所述输入历史,建立所述词向量集合。
本实施例通过采用输入法中的输入历史,相对于搜索历史和点击历史等,可以扩大输入历史的范围,使得获取的输入历史更丰富,从而提高词向量集合的准确度,实现更个性化的搜索。
进一步,所述根据所述输入历史,建立所述词向量集合,包括:
根据所述输入历史,确定正例和反例,所述正例是输入历史中已存在的词序列组成的样本,所述反例是输入历史中没有出现过的词序列组成的样本;
根据深度学习网络对所述正例和反例进行训练,建立所述词向量集合。
本实施例中,在获取输入历史后,可以采用深度学习的方式,获取词向量集合。
具体的深度学习的方式可以参见后续实施例。
S13:将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果。
为了实现个性化搜索,本实施例中,客户端不仅将查询词发送给服务端,还将查询词对应的词向量发送给服务端。
可以理解的是,用户输入的查询词可以包括至少一个词,当包括多个词时,可以采用分词技术将查询词分为多个词,并获取每个词对应的词向量。
现有技术中,为了实现个性化搜索,可以将用户历史搜索或点击的内容发送给服务端,这样无疑会损害用户隐私数据。
本实施例中,发送给服务端的是词向量,词向量是一组数字,单看这组数字无任何物理意义,因此可以很好的保护用户隐私数据。
S14:接收所述服务端发送的搜索结果,并展现所述搜索结果。
服务端获取搜索结果后,将该搜索结果传输给客户端的搜索引擎,由客户端的搜索引擎展现对应的搜索结果。
该搜索结果是个性化的搜索结果,例如,根据用户个体情况,当用户同样搜索“作业”时,接收的搜索结果可能是关于学生作业的结果,或者,关于工程作业的结果。
本实施例通过获取查询词对应的词向量,将查询词和词向量发送给服务端,可以使得服务端根据查询词和词向量获取搜索结果,由于词向量集合是对应用户建立的,不同用户可以建立不同的词向量集合,可以实现个性化搜索,并且,发送的是词向量而不是用户历史数据,可以保护用户隐私数据。
图2是本发明另一实施例提出的实现个性化搜索的方法的流程示意图,该方法包括:
S21:接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的。
本实施例的执行主体可以是服务端。服务端可以具体是搜索引擎的服务端。
用户可以在搜索引擎的搜索框中输入查询词,客户端根据该查询词,在预先建立的对应所述用户建立的词向量集合中获取查询词对应的词向量后,由搜索引擎将查询词和词向量传输给服务端。
S22:根据所述查询词和所述词向量,获取搜索结果。
本实施例中,搜索结果不仅需要与查询词匹配,还需要与词向量匹配,以针对不同用户提供个性化的搜索结果。
可选的,所述根据所述查询词和所述词向量,获取搜索结果,包括:
计算所述查询词与可供选择的结果之间的常规排序分数;计算所述词向量与所述可供选择的结果之间的个性化排序分数;根据所述常规排序分数和所述个性化排序分数,确定新的排序分数;根据所述新的排序分数,对所述可供选择的结果进行排序;在排序后的结果中选择预设个数的结果,得到发送给所述客户端的搜索结果。
进一步,所述计算所述词向量与所述可供选择的结果之间的个性化排序分数,包括:
获取所述可供选择的结果对应的词向量;计算所述接收的词向量与所述获取的词向量之间的相似度数值,将所述相似度数值确定为所述个性化排序分数。
进一步,所述根据所述常规排序分数和所述个性化排序分数,确定新的排序分数,包括:
采用插值方式,根据所述常规排序分数和所述个性化排序分数,确定新的排序分数。
其中,可供选择的结果可以是指服务端的数据库中保存的结果。
假设一个可供选择的结果是D,查询词包括多个词,分别用W1,W2,…,Wn表示,则常规排序分数可以表示为:RankScore(<W1,W2,…,Wn>,D)。
本实施例中,还需要计算个性化排序分数,假设上述多个词对应的词向量分别是:C(W1),C(W2),…,C(Wn),个性化排序分数可以表示为:
PersonalizationScore(<C(W1),C(W2),…,C(Wn)>,D)。
在确定出常规排序分数和个性化排序分数之后,新的排序分数NewRankScore可以表示为:
NewRankScore=λ×PersonalizationScore(<C(W1),C(W2),...,C(Wn)>,D)
+(1-λ)RankScore(<W1,W2,...,Wn>,D)
其中,λ是预设的值,取为0到1之间的数值。
在获取新的排序分数后,可以采用该新的排序分数对可供选择的结果进行排序,例如,将分数高的排序在前,并在排序后的结果中从前到后选择预设个数的结果作为最终的搜索结果。
S23:将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
服务端获取到个性化的搜索结果后,将该搜索结果传输给搜索引擎,由搜索引擎展现对应的搜索结果。
本实施例通过根据查询词和词向量获取搜索结果,可以使得搜索结果不仅与查询词有关,还与词向量有关,由于不同用户对应相同词的词向量可以不同,因此可以获取到个性化的搜索结果,从而实现个性化搜索,并且,本实施例接收的是词向量,不是具体的历史数据,可以保护用户隐私。
图3是本发明另一实施例提出的实现个性化搜索的方法的流程示意图,该方法包括:
S31:客户端获取查询词,并获取查询词对应的词向量,并将查询词和词向量发送给服务端。客户端可以接收用户在搜索引擎的搜索框中输入的查询词。
查询词可以分为一个词或多个词。
本实施例中,以查询词包括多个词为例,例如,查询词包括W1,W2,…,Wn。
查询词对应的词向量表示为:C(W1),C(W2),…,C(Wn)。
查询词对应的词向量可以根据预先建立的词向量集合确定,例如,对应每个用户预先建立词与词向量的对应关系,由一个或多个词与词向量的对应关系组成词向量集合。
每个词对应的词向量可以根据输入历史采用深度学习算法确定,输入历史具体可以是用户采用输入法得到的输入历史。
在数学上,词向量是一个由多个实数组成的实数向量,例如,假设词向量的维度是m,则词向量m的常见值范围为50到1000。把一个词表示为一个实数向量的本意是通过深度学习网络学习出一个词在高维空间中所处的一个点,从而能够通过不同的词在高维空间中的相似度来刻画不同的词之间在语义上的相似程度,相似度常见的是余弦相似度。
参见图4,根据输入历史得到词向量的流程可以包括:
S41:根据用户在输入法中的输入历史构造训练样本。
为了能够计算出词在用户的语境下的词向量,首先根据用户的输入历史,即用户通过输入法输入过的词序列T1,T2...来构造出用来进行深度学习网络训练的训练样本。
训练样本可以包括正例和反例。
正例可以从用户的输入过的词序列中抽取出2×N+1个词组成的词序列,这里的N称为上下文窗口,即某个词所在的语义与其前N个词及后N个词组成的上下文是相关的。这里的N的通常的取值范围是2到20。
例如,词Ti的序列可以记为:
Ti-N,Ti-N+1,...,Ti,Ti+1,...Ti+N
因为这个序列在用户的输入历史中出现过,所以这个例子是正例,即,深度学习网络需要从这个样本中学习出尽可能接近1的输出。
同时,还需要构造负例,针对一个正例,需要构造出K个负例,K的常见取值范围是5到100。负例的构造方式是把Ti替换成一个随机选择的词,这个新构造出来的序列,要求没有在用户的输入历史中出现过。
将Ti替换为随机选择的K个词,组成未输入过的词序列作为反例,反例可以包括:
Ti-N,Ti-N+1,...,Tneg1,Ti+1,...Ti+N
Ti-N,Ti-N+1,...,Tneg2,Ti+1,...Ti+N
Ti-N,Ti-N+1,...,TnegK,Ti+1,...Ti+N
这K个样本因为从未在用户的输入历史中出现过,所以深度学习网络需要在这些负例上的输出尽可能的接近0。
需要说明的是,这里正例拟合1,负例拟合0是以选择sigmoid非线性函数为前提的,如果选择tanh非线性函数,则正例需要拟合1,负例需要拟合-1。
S42:采用深度学习算法,根据正例和反例,确定词对应的词向量。
在获取正例和反例后,可以将正例和反例作为训练样本,采用深度学习网络,确定正例和反例中出现的所有词的词向量。
参见图5,为深度学习网络的结构示意图,该深度学习网络可以包括输入层(inputlayer)51,隐藏层(hidden layer)52和输出层(output layer)53,其中,输入层中是词向量,输出层根据训练样本是正例或反例确定为0或1,例如,当训练样本是正例时,采用深度学习网络,使得输出尽量接近1,当训练样本是反例时,采用深度学习网络,使得输出尽量接近0。
深度学习网络是用来学习在一个词序列当中某个词是否预测正确的,实际上本实施例中关注的是这个网络当中的每个词的词向量。同时,这个深度学习网络中还存在其他的参数。下面简述深度学习网络的参数θ的构成,及学习网络结构的细节。
假定需要得到一个大小为|V|的词表的所有词的维度为m的词的向量,那么这个神经网络首先有|V|×m个词向量参数C。假定输入样本词序列的长度为2N+1,即一个词要看它的前后N个词,则输入层51就是2N+1个长度为m的词向量所构成。记隐藏层52的长度为H,那么由输入层51到隐藏层52之间的参数是一个行数为H,列数为(2N+1)×m的矩阵W1,及长度为H的列向量d的截距所组成。在隐藏层52到输出层53之间的参数则是由一个长度为H的行向量W2,与实数b所组成。
因此,本实施例中的深度学习网络的参数有:
θ=(C,W1,d,W2,b)
需要说明的是,深度学习网络中的参数W1和W2与前述表征为词的不同。
在以上参数下,该深度学习网络的最终输出可以用如下公式计算得出:
y=f(Ti-n,Ti-n+1,...,Ti,...,Ti+n;θ)=sigmoid(b+W2·sigmoid(W1×x+d))
上述的x是由一个训练样本当中的2N+1个词的词向量所组成的列向量。
本实施例中的深度学习网络的优化目标是能够让函数f所计算出的值与实际值尽可能的接近,其中,实际值可以是1或者0。
具体地,可以采用cross entropy作为衡量实际值与计算值之间的差异的方法,具体的,需要优化的Cost函数为:
J ( &theta; ) = - &Sigma; i = 1 T ( yreal i log ( f ( x i ; &theta; ) ) + ( 1 - yreal i ) log ( 1 - f ( x i ; &theta; ) ) )
上述公式中的T为训练样本当中的样本个数,yreali为第i个样本的实际值,而xi为第i个样本Ti-N,Ti-N+1,...,Ti,Ti+1,...Ti+N
可以理解的是,本实施例以sigmoid函数作为非线性变换的函数为例。同样,本实施例也可以选用其它类型的非线性函数,例如tanh函数。
进一步,在以上所定义的优化函数的基础上,可以通过随机梯度下降算法(StochasticGradient Descent,SGD)与反向传播算法,得出最优的参数θ=(C,W1,d,W2,b),进而,可以得出词向量。
其中,SGD算法是通过计算某一组训练样本的梯度,即参数的偏导数,来迭代更新随机初始化过的参数。更新的方法是每次让参数减去所设置的一个学习率,learning rate,乘以计算出的梯度,从而在多次迭代之后可以让深度学习网络根据参数所计算出的值,与实际值之间的差在所定义的Cost函数上最小化。
反向传播算法是在深度学习网络中的一种有效的计算参数的梯度的方法。
S32:服务端接收到查询词和词向量后,计算常规排序分数和个性化排序分数,并根据常规排序分数和个性化排序计算新的排序分数。
基于以上步骤获取到的用户输入的查询词的词向量之后,客户端会把查询词W1,W2,…,Wn以及对应的词向量C(W1),C(W2),…,C(Wn)一起发送给搜索引擎服务端。
在搜索引擎的服务端,计算常规排序分数和个性化排序分数。
其中,常规排序分数是查询词与可供选择的结果D之间的分数:
RankScore(<W1,W2,…,Wn>,D);
个性化排序分数是词向量与可供选择的结果D之间的分数:
PersonalizationScore(<C(W1),C(W2),…,C(Wn)>,D)。
其中,常规排序分数可以采用通用的方式计算得到。
个性化排序分数可以根据词向量C(W1),C(W2),…,C(Wn)与可供选择的结果D当中的词向量S(T1),S(T2),…,S(Tl)的相似度数值,将该相似度数值作为用户的个性化排序分数。具体的,
PersonalizationScore(<C(W1),C(W2),…,C(Wn)>,D)
=(<C(W1),C(W2),…,C(Wn)>,<S(T1),S(T2),…,S(Tl)>)
进一步的,
PersonalizationScore = Co sin e ( { ( &Sigma; i = 1 n C ( Wi ) ) 1 , ( &Sigma; i = 1 n C ( Wi ) ) 2 , . . . , ( &Sigma; i = 1 n C ( Wi ) ) m } ,
{ ( &Sigma; i = 1 l S ( Ti ) ) 1 , ( &Sigma; i = 1 l S ( Ti ) ) 2 , . . . , ( &Sigma; i = 1 l S ( Ti ) ) m } )
其中,n是查询词中包括的词的个数,l是可供选择的结果D中包括的词的个数,m是词向量的维度。
其中,Cosine函数的定义如下:
Co sin e ( A , B ) = V ( A ) &CenterDot; V ( B ) | | V ( A ) | | | | V ( B ) | | = &Sigma; i = 1 m A i &times; B i &Sigma; i = 1 m A i 2 &times; &Sigma; i = 1 m B i 2
可以通过把常规排序分数RankScore和个性化排序分数PersonalizationScore线性组合起来作为新的排序分数NewRankScore。
具体地,可以通过以下公式计算得出新的排序分数NewRankScore:
NewRankScore=λ×PersonalizationScore(<C(W1),C(W2),...,C(Wn)>,D)
+(1-λ)RankScore(<W1,W2,...,Wn>,D)
其中,λ是预设的值,取为0到1之间的数值。
S33:服务端根据新的排序分数对结果进行排序,得到个性化搜索结果,并发送给客户端进行展示。
其中,可以按照新的排序分数从高到低的顺序对结果进行排序,可选的,考虑到展现空间的限制,可以在排序后的结果中从前到后的顺序选择预设个数的结果发给客户端进行展示。
本实施例中,由于词向量是根据每个用户的输入历史建立的,不同用户的输入历史不同,因此不同用户的词向量集合也不同,实现了获取不同用户的词向量集合。本实施例中,输入历史是根据输入法确定的,可以扩大输入历史的范围。并且,由于计算了查询词的词向量与待排序结果之间的相似度,并以插值的方法融入到最终排序的分数当中,使得服务端为不同用户推荐不同的候选查询词,给用户提供了个性化的搜索结果。另外,本实施例不需要将用户所有的输入历史传送到搜索引擎的服务端,而只是在用户进行检索查询的时候,把在用户的客户端深度学习到的词向量发送到服务端,因为这些词向量是不具有物理意义的数字,因此可以极大限度的保护用户的隐私。
图6是本发明另一实施例提出的实现个性化搜索的装置的结构示意图,该装置60包括接收模块61、第一获取模块62、发送模块63以及展现模块64。
接收模块61用于接收用户输入的查询词。
本实施例的执行主体可以是客户端。
其中,用户可以在客户端的搜索引擎的搜索框中输入查询词(query),例如,用户可以在搜索框中输入“作业”。
第一获取模块62用于根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量。
其中,在搜索之前可以对应每个用户建立词向量集合。
词向量集合中包括至少一个词的词向量。
词向量是由多个实数组成的实数向量,通常维度是50到1000。
对于同一个词,不同用户对应的词向量可以是不同的,例如,对应“作业”这个词,可能是指学生作业,也可能是指工程作业,当作业表示学生作业时,与作业表示工程作业时,“作业”这个词可以用不同的词向量表示。
可选的,词向量集合可以采用如下方式建立:
获取所述用户采用输入法得到的输入历史;并根据所述输入历史,建立所述词向量集合。
本实施例通过采用输入法中的输入历史,相对于搜索历史和点击历史等,可以扩大输入历史的范围,使得获取的输入历史更丰富,从而提高词向量集合的准确度,实现更个性化的搜索。
进一步,所述根据所述输入历史,建立所述词向量集合,包括:
根据所述输入历史,确定正例和反例,所述正例是输入历史中已存在的词序列组成的样本,所述反例是输入历史中没有出现过的词序列组成的样本;
根据深度学习网络对所述正例和反例进行训练,建立所述词向量集合。
本实施例中,在获取输入历史后,可以采用深度学习的方式,获取词向量集合。
具体的深度学习的方式可以参见以上方法实施例。
发送模块63用于将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果。
为了实现个性化搜索,本实施例中,客户端不仅将查询词发送给服务端,还将查询词对应的词向量发送给服务端。
可以理解的是,用户输入的查询词可以包括至少一个词,当包括多个词时,可以采用分词技术将查询词分为多个词,并获取每个词对应的词向量。
现有技术中,为了实现个性化搜索,可以将用户历史搜索或点击的内容发送给服务端,这样无疑会损害用户隐私数据。
本实施例中,发送给服务端的是词向量,词向量是一组数字,单看这组数字无任何物理意义,因此可以很好的保护用户隐私数据。
展现模块64用于接收所述服务端发送的搜索结果,并展现所述搜索结果。
服务端获取搜索结果后,将该搜索结果传输给客户端的搜索引擎,由客户端的搜索引擎展现对应的搜索结果。
该搜索结果是个性化的搜索结果,例如,根据用户个体情况,当用户同样搜索“作业”时,接收的搜索结果可能是关于学生作业的结果,或者,关于工程作业的结果。
一个实施例中,参见图7,所述装置60还包括:
第二获取模块65,用于获取所述用户采用输入法得到的输入历史。
建立模块66,用于根据所述输入历史,建立所述词向量集合。
另一个实施例中,参见图7,所述建立模块66包括:
第一单元661,用于根据所述输入历史,确定正例和反例,所述正例是输入历史中已存在的词序列组成的样本,所述反例是输入历史中没有出现过的词序列组成的样本。
为了能够计算出词在用户的语境下的词向量,首先根据用户的输入历史,即用户通过输入法输入过的词序列T1,T2...来构造出用来进行深度学习网络训练的训练样本。
训练样本可以包括正例和反例。
正例可以从用户的输入过的词序列中抽取出2×N+1个词组成的词序列,这里的N称为上下文窗口,即某个词所在的语义与其前N个词及后N个词组成的上下文是相关的。这里的N的通常的取值范围是2到20。
例如,词Ti的序列可以记为:
Ti-N,Ti-N+1,...,Ti,Ti+1,...Ti+N
因为这个序列在用户的输入历史中出现过,所以这个例子是正例,即,深度学习网络需要从这个样本中学习出尽可能接近1的输出。
同时,还需要构造负例,针对一个正例,需要构造出K个负例,K的常见取值范围是5到100。负例的构造方式是把Ti替换成一个随机选择的词,这个新构造出来的序列,要求没有在用户的输入历史中出现过。
将Ti替换为随机选择的K个词,组成未输入过的词序列作为反例,反例可以包括:
Ti-N,Ti-N+1,...,Tneg1,Ti+1,...Ti+N
Ti-N,Ti-N+1,...,Tneg2,Ti+1,...Ti+N
Ti-N,Ti-N+1,...,TnegK,Ti+1,...Ti+N
这K个样本因为从未在用户的输入历史中出现过,所以深度学习网络需要在这些负例上的输出尽可能的接近0。
需要说明的是,这里正例拟合1,负例拟合0是以选择sigmoid非线性函数为前提的,如果选择tanh非线性函数,则正例需要拟合1,负例需要拟合-1。
第二单元662,用于根据深度学习网络对所述正例和反例进行训练,建立所述词向量集合。
在获取正例和反例后,可以将正例和反例作为训练样本,采用深度学习网络,确定正例和反例中出现的所有词的词向量。
参见图5,为深度学习网络的结构示意图,该深度学习网络可以包括输入层(inputlayer)51,隐藏层(hidden layer)52和输出层(output layer)53,其中,输入层中是词向量,输出层根据训练样本是正例或反例确定为0或1,例如,当训练样本是正例时,采用深度学习网络,使得输出尽量接近1,当训练样本是反例时,采用深度学习网络,使得输出尽量接近0。
深度学习网络是用来学习在一个词序列当中某个词是否预测正确的,实际上本实施例中关注的是这个网络当中的每个词的词向量。同时,这个深度学习网络中还存在其他的参数。下面简述深度学习网络的参数θ的构成,及学习网络结构的细节。
假定需要得到一个大小为|V|的词表的所有词的维度为m的词的向量,那么这个神经网络首先有|V|×m个词向量参数C。假定输入样本词序列的长度为2N+1,即一个词要看它的前后N个词,则输入层51就是2N+1个长度为m的词向量所构成。记隐藏层52的长度为H,那么由输入层51到隐藏层52之间的参数是一个行数为H,列数为(2N+1)×m的矩阵W1,及长度为H的列向量d的截距所组成。在隐藏层52到输出层53之间的参数则是由一个长度为H的行向量W2,与实数b所组成。
因此,本实施例中的深度学习网络的参数有:
θ=(C,W1,d,W2,b)
需要说明的是,深度学习网络中的参数W1和W2与前述表征为词的不同。
在以上参数下,该深度学习网络的最终输出可以用如下公式计算得出:
y=f(Ti-n,Ti-n+1,...,Ti,...,Ti+n;θ)=sigmoid(b+W2·sigmoid(W1×x+d))
上述的x是由一个训练样本当中的2N+1个词的词向量所组成的列向量。
本实施例中的深度学习网络的优化目标是能够让函数f所计算出的值与实际值尽可能的接近,其中,实际值可以是1或者0。
具体地,可以采用cross entropy作为衡量实际值与计算值之间的差异的方法,具体的,需要优化的Cost函数为:
J ( &theta; ) = - &Sigma; i = 1 T ( yreal i log ( f ( x i ; &theta; ) ) + ( 1 - yreal i ) log ( 1 - f ( x i ; &theta; ) ) )
上述公式中的T为训练样本当中的样本个数,yreali为第i个样本的实际值,而xi为第i个样本Ti-N,Ti-N+1,...,Ti,Ti+1,...Ti+N
可以理解的是,本实施例以sigmoid函数作为非线性变换的函数为例。同样,本实施例也可以选用其它类型的非线性函数,例如tanh函数。
进一步,在以上所定义的优化函数的基础上,可以通过随机梯度下降算法(StochasticGradient Descent,SGD)与反向传播算法,得出最优的参数θ=(C,W1,d,W2,b),进而,可以得出词向量。
其中,SGD算法是通过计算某一组训练样本的梯度,即参数的偏导数,来迭代更新随机初始化过的参数。更新的方法是每次让参数减去所设置的一个学习率,learning rate,乘以计算出的梯度,从而在多次迭代之后可以让深度学习网络根据参数所计算出的值,与实际值之间的差在所定义的Cost函数上最小化。
反向传播算法是在深度学习网络中的一种有效的计算参数的梯度的方法。
本实施例通过获取查询词对应的词向量,将查询词和词向量发送给服务端,可以使得服务端根据查询词和词向量获取搜索结果,由于词向量集合是对应用户建立的,不同用户可以建立不同的词向量集合,可以实现个性化搜索,并且,发送的是词向量而不是用户历史数据,可以保护用户隐私数据。
图8是本发明另一实施例提出的实现个性化搜索的装置的结构示意图,该装置80包括接收模块81、获取模块82以及发送模块83。
接收模块81用于接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的。
本实施例的执行主体可以是服务端。服务端可以具体是搜索引擎的服务端。
用户可以在搜索引擎的搜索框中输入查询词,客户端根据该查询词,在预先建立的对应所述用户建立的词向量集合中获取查询词对应的词向量后,由搜索引擎将查询词和词向量传输给服务端。
获取模块82用于根据所述查询词和所述词向量,获取搜索结果。
本实施例中,搜索结果不仅需要与查询词匹配,还需要与词向量匹配,以针对不同用户提供个性化的搜索结果。
一个实施例中,参见图9,所述获取模块82包括:
第一单元821,用于计算所述查询词与可供选择的结果之间的常规排序分数。
第二单元822,用于计算所述词向量与所述可供选择的结果之间的个性化排序分数。
另一个实施例中,所述第二单元822具体用于获取所述可供选择的结果对应的词向量;
计算所述接收的词向量与所述获取的词向量之间的相似度数值,将所述相似度数值确定为所述个性化排序分数。
第三单元823,用于根据所述常规排序分数和所述个性化排序分数,确定新的排序分数。
另一个实施例中,所述第三单元823具体用于采用插值方式,根据所述常规排序分数和所述个性化排序分数,确定新的排序分数。
第四单元824,用于根据所述新的排序分数,对所述可供选择的结果进行排序。
第五单元825,用于在排序后的结果中选择预设个数的结果,得到发送给所述客户端的搜索结果。
其中,常规排序分数是查询词与可供选择的结果D之间的分数:
RankScore(<W1,W2,…,Wn>,D);
个性化排序分数是词向量与可供选择的结果D之间的分数:
PersonalizationScore(<C(W1),C(W2),…,C(Wn)>,D)。
其中,常规排序分数可以采用通用的方式计算得到。
个性化排序分数可以根据词向量C(W1),C(W2),…,C(Wn)与可供选择的结果D当中的词向量S(T1),S(T2),…,S(Tl)的相似度数值,将该相似度数值作为用户的个性化排序分数。具体的,
PersonalizationScore(<C(W1),C(W2),…,C(Wn)>,D)
=(<C(W1),C(W2),…,C(Wn)>,<S(T1),S(T2),…,S(Tl)>)
进一步的,
PersonalizationScore = Co sin e ( { ( &Sigma; i = 1 n C ( Wi ) ) 1 , ( &Sigma; i = 1 n C ( Wi ) ) 2 , . . . , ( &Sigma; i = 1 n C ( Wi ) ) m } ,
{ ( &Sigma; i = 1 l S ( Ti ) ) 1 , ( &Sigma; i = 1 l S ( Ti ) ) 2 , . . . , ( &Sigma; i = 1 l S ( Ti ) ) m } )
其中,n是查询词中包括的词的个数,l是可供选择的结果D中包括的词的个数,m是词向量的维度。
其中,Cosine函数的定义如下:
Co sin e ( A , B ) = V ( A ) &CenterDot; V ( B ) | | V ( A ) | | | | V ( B ) | | = &Sigma; i = 1 m A i &times; B i &Sigma; i = 1 m A i 2 &times; &Sigma; i = 1 m B i 2
可以通过把常规排序分数RankScore和个性化排序分数PersonalizationScore线性组合起来作为新的排序分数NewRankScore。
具体地,可以通过以下公式计算得出新的排序分数NewRankScore:
NewRankScore=λ×PersonalizationScore(<C(W1),C(W2),...,C(Wn)>,D)
+(1-λ)RankScore(<W1,W2,...,Wn>,D)
其中,λ是预设的值,取为0到1之间的数值。
发送模块83用于将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
服务端获取到个性化的搜索结果后,将该搜索结果传输给搜索引擎,由搜索引擎展现对应的搜索结果。
本实施例通过根据查询词和词向量获取搜索结果,可以使得搜索结果不仅与查询词有关,还与词向量有关,由于不同用户对应相同词的词向量可以不同,因此可以获取到个性化的搜索结果,从而实现个性化搜索,并且,本实施例接收的是词向量,不是具体的历史数据,可以保护用户隐私。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (14)

1.一种实现个性化搜索的方法,其特征在于,包括:
接收用户输入的查询词;
根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量;
将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果;
接收所述服务端发送的搜索结果,并展现所述搜索结果。
2.根据权利要求1所述的方法,其特征在于,还包括:
获取所述用户采用输入法得到的输入历史;
根据所述输入历史,建立所述词向量集合。
3.根据权利要求2所述的方法,其特征在于,所述根据所述输入历史,建立所述词向量集合,包括:
根据所述输入历史,确定正例和反例,所述正例是输入历史中已存在的词序列组成的样本,所述反例是输入历史中没有出现过的词序列组成的样本;
根据深度学习网络对所述正例和反例进行训练,建立所述词向量集合。
4.一种实现个性化搜索的方法,其特征在于,包括:
接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的;
根据所述查询词和所述词向量,获取搜索结果;
将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
5.根据权利要求4所述的方法,其特征在于,所述根据所述查询词和所述词向量,获取搜索结果,包括:
计算所述查询词与可供选择的结果之间的常规排序分数;
计算所述词向量与所述可供选择的结果之间的个性化排序分数;
根据所述常规排序分数和所述个性化排序分数,确定新的排序分数;
根据所述新的排序分数,对所述可供选择的结果进行排序;
在排序后的结果中选择预设个数的结果,得到发送给所述客户端的搜索结果。
6.根据权利要求5所述的方法,其特征在于,所述计算所述词向量与所述可供选择的结果之间的个性化排序分数,包括:
获取所述可供选择的结果对应的词向量;
计算所述接收的词向量与所述获取的词向量之间的相似度数值,将所述相似度数值确定为所述个性化排序分数。
7.根据权利要求5所述的方法,其特征在于,所述根据所述常规排序分数和所述个性化排序分数,确定新的排序分数,包括:
采用插值方式,根据所述常规排序分数和所述个性化排序分数,确定新的排序分数。
8.一种实现个性化搜索的装置,其特征在于,包括:
接收模块,用于接收用户输入的查询词;
第一获取模块,用于根据预先建立的对应所述用户建立的词向量集合中,获取所述查询词对应的词向量;
发送模块,用于将所述查询词和所述词向量发送给服务端,以使所述服务端根据所述查询词和所述词向量获取搜索结果;
展现模块,用于接收所述服务端发送的搜索结果,并展现所述搜索结果。
9.根据权利要求8所述的装置,其特征在于,还包括:
第二获取模块,用于获取所述用户采用输入法得到的输入历史;
建立模块,用于根据所述输入历史,建立所述词向量集合。
10.根据权利要求9所述的装置,其特征在于,所述建立模块包括:
第一单元,用于根据所述输入历史,确定正例和反例,所述正例是输入历史中已存在的词序列组成的样本,所述反例是输入历史中没有出现过的词序列组成的样本;
第二单元,用于根据深度学习网络对所述正例和反例进行训练,建立所述词向量集合。
11.一种实现个性化搜索的装置,其特征在于,包括:
接收模块,用于接收客户端发送的查询词和所述查询词对应的词向量,所述词向量是所述客户端在预先建立的对应用户建立的词向量集合中确定的;
获取模块,用于根据所述查询词和所述词向量,获取搜索结果;
发送模块,用于将所述搜索结果发送给所述客户端,以使所述客户端展现所述搜索结果。
12.根据权利要求11所述的装置,其特征在于,所述获取模块包括:
第一单元,用于计算所述查询词与可供选择的结果之间的常规排序分数;
第二单元,用于计算所述词向量与所述可供选择的结果之间的个性化排序分数;
第三单元,用于根据所述常规排序分数和所述个性化排序分数,确定新的排序分数;
第四单元,用于根据所述新的排序分数,对所述可供选择的结果进行排序;
第五单元,用于在排序后的结果中选择预设个数的结果,得到发送给所述客户端的搜索结果。
13.根据权利要求12所述的装置,其特征在于,所述第二单元具体用于:
获取所述可供选择的结果对应的词向量;
计算所述接收的词向量与所述获取的词向量之间的相似度数值,将所述相似度数值确定为所述个性化排序分数。
14.根据权利要求12所述的装置,其特征在于,所述第三单元具体用于:
采用插值方式,根据所述常规排序分数和所述个性化排序分数,确定新的排序分数。
CN201410742373.6A 2014-12-08 2014-12-08 实现个性化搜索的方法和装置 Active CN104462357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410742373.6A CN104462357B (zh) 2014-12-08 2014-12-08 实现个性化搜索的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410742373.6A CN104462357B (zh) 2014-12-08 2014-12-08 实现个性化搜索的方法和装置

Publications (2)

Publication Number Publication Date
CN104462357A true CN104462357A (zh) 2015-03-25
CN104462357B CN104462357B (zh) 2017-11-17

Family

ID=52908392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410742373.6A Active CN104462357B (zh) 2014-12-08 2014-12-08 实现个性化搜索的方法和装置

Country Status (1)

Country Link
CN (1) CN104462357B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715063A (zh) * 2015-03-31 2015-06-17 百度在线网络技术(北京)有限公司 搜索排序方法和装置
CN104915448A (zh) * 2015-06-30 2015-09-16 中国科学院自动化研究所 一种基于层次卷积网络的实体与段落链接方法
CN105511638A (zh) * 2015-12-03 2016-04-20 魅族科技(中国)有限公司 输入法应用方法和装置
CN105809473A (zh) * 2016-02-29 2016-07-27 北京百度网讯科技有限公司 匹配模型参数的训练方法、服务推荐方法及对应装置
CN105912630A (zh) * 2016-04-07 2016-08-31 北京搜狗科技发展有限公司 一种信息扩展方法及装置
CN106095983A (zh) * 2016-06-20 2016-11-09 北京百度网讯科技有限公司 一种基于个性化深度神经网络的相似度确定方法及装置
CN106354852A (zh) * 2016-09-02 2017-01-25 北京百度网讯科技有限公司 基于人工智能的搜索方法及装置
CN106372086A (zh) * 2015-07-23 2017-02-01 华中师范大学 一种获取词向量的方法和装置
CN106407280A (zh) * 2016-08-26 2017-02-15 合网络技术(北京)有限公司 查询目标匹配方法及装置
CN106469554A (zh) * 2015-08-21 2017-03-01 科大讯飞股份有限公司 一种自适应的识别方法及系统
WO2017031894A1 (zh) * 2015-08-26 2017-03-02 小米科技有限责任公司 数据的搜索方法、装置及终端
CN107391577A (zh) * 2017-06-20 2017-11-24 中国科学院计算技术研究所 一种基于表示向量的作品标签推荐方法和系统
CN107688604A (zh) * 2017-07-26 2018-02-13 阿里巴巴集团控股有限公司 数据应答处理方法、装置及服务器
CN110008312A (zh) * 2019-04-10 2019-07-12 成都信息工程大学 一种文档写作助手实现方法、系统及电子设备
CN111538806A (zh) * 2019-01-21 2020-08-14 阿里巴巴集团控股有限公司 查询负例的泛化方法及装置
CN112182154A (zh) * 2020-09-25 2021-01-05 中国人民大学 一种利用个人词向量消除关键词歧义的个性化搜索模型

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143260A1 (en) * 2005-12-19 2007-06-21 Microsoft Corporation Delivery of personalized keyword-based information using client-side re-ranking
CN101520785A (zh) * 2008-02-29 2009-09-02 富士通株式会社 信息检索方法和系统
CN101520784A (zh) * 2008-02-29 2009-09-02 富士通株式会社 信息发布系统和信息发布方法
CN101661474A (zh) * 2008-08-26 2010-03-03 华为技术有限公司 一种搜索方法和系统
US20120089598A1 (en) * 2006-03-30 2012-04-12 Bilgehan Uygar Oztekin Generating Website Profiles Based on Queries from Websites and User Activities on the Search Results
CN102779193A (zh) * 2012-07-16 2012-11-14 哈尔滨工业大学 自适应个性化信息检索系统及方法
CN103049528A (zh) * 2012-12-24 2013-04-17 北京信息科技大学 基于用户兴趣向量的个性化网页搜索排序方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143260A1 (en) * 2005-12-19 2007-06-21 Microsoft Corporation Delivery of personalized keyword-based information using client-side re-ranking
US20120089598A1 (en) * 2006-03-30 2012-04-12 Bilgehan Uygar Oztekin Generating Website Profiles Based on Queries from Websites and User Activities on the Search Results
CN101520785A (zh) * 2008-02-29 2009-09-02 富士通株式会社 信息检索方法和系统
CN101520784A (zh) * 2008-02-29 2009-09-02 富士通株式会社 信息发布系统和信息发布方法
CN101661474A (zh) * 2008-08-26 2010-03-03 华为技术有限公司 一种搜索方法和系统
CN102779193A (zh) * 2012-07-16 2012-11-14 哈尔滨工业大学 自适应个性化信息检索系统及方法
CN103049528A (zh) * 2012-12-24 2013-04-17 北京信息科技大学 基于用户兴趣向量的个性化网页搜索排序方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715063B (zh) * 2015-03-31 2018-11-02 百度在线网络技术(北京)有限公司 搜索排序方法和装置
CN104715063A (zh) * 2015-03-31 2015-06-17 百度在线网络技术(北京)有限公司 搜索排序方法和装置
CN104915448A (zh) * 2015-06-30 2015-09-16 中国科学院自动化研究所 一种基于层次卷积网络的实体与段落链接方法
CN104915448B (zh) * 2015-06-30 2018-03-27 中国科学院自动化研究所 一种基于层次卷积网络的实体与段落链接方法
CN106372086B (zh) * 2015-07-23 2019-12-03 华中师范大学 一种获取词向量的方法和装置
CN106372086A (zh) * 2015-07-23 2017-02-01 华中师范大学 一种获取词向量的方法和装置
CN106469554A (zh) * 2015-08-21 2017-03-01 科大讯飞股份有限公司 一种自适应的识别方法及系统
WO2017031894A1 (zh) * 2015-08-26 2017-03-02 小米科技有限责任公司 数据的搜索方法、装置及终端
CN105511638A (zh) * 2015-12-03 2016-04-20 魅族科技(中国)有限公司 输入法应用方法和装置
CN105809473B (zh) * 2016-02-29 2021-11-23 北京百度网讯科技有限公司 匹配模型参数的训练方法、服务推荐方法及对应装置
CN105809473A (zh) * 2016-02-29 2016-07-27 北京百度网讯科技有限公司 匹配模型参数的训练方法、服务推荐方法及对应装置
CN105912630B (zh) * 2016-04-07 2020-01-31 北京搜狗信息服务有限公司 一种信息扩展方法及装置
CN105912630A (zh) * 2016-04-07 2016-08-31 北京搜狗科技发展有限公司 一种信息扩展方法及装置
CN106095983B (zh) * 2016-06-20 2019-11-26 北京百度网讯科技有限公司 一种基于个性化深度神经网络的相似度确定方法及装置
CN106095983A (zh) * 2016-06-20 2016-11-09 北京百度网讯科技有限公司 一种基于个性化深度神经网络的相似度确定方法及装置
CN106407280A (zh) * 2016-08-26 2017-02-15 合网络技术(北京)有限公司 查询目标匹配方法及装置
CN106354852A (zh) * 2016-09-02 2017-01-25 北京百度网讯科技有限公司 基于人工智能的搜索方法及装置
CN107391577B (zh) * 2017-06-20 2020-04-03 中国科学院计算技术研究所 一种基于表示向量的作品标签推荐方法和系统
CN107391577A (zh) * 2017-06-20 2017-11-24 中国科学院计算技术研究所 一种基于表示向量的作品标签推荐方法和系统
CN107688604A (zh) * 2017-07-26 2018-02-13 阿里巴巴集团控股有限公司 数据应答处理方法、装置及服务器
CN111538806A (zh) * 2019-01-21 2020-08-14 阿里巴巴集团控股有限公司 查询负例的泛化方法及装置
CN111538806B (zh) * 2019-01-21 2023-04-07 阿里巴巴集团控股有限公司 查询负例的泛化方法及装置
CN110008312A (zh) * 2019-04-10 2019-07-12 成都信息工程大学 一种文档写作助手实现方法、系统及电子设备
CN112182154A (zh) * 2020-09-25 2021-01-05 中国人民大学 一种利用个人词向量消除关键词歧义的个性化搜索模型
CN112182154B (zh) * 2020-09-25 2023-10-10 中国人民大学 一种利用个人词向量消除关键词歧义的个性化搜索模型

Also Published As

Publication number Publication date
CN104462357B (zh) 2017-11-17

Similar Documents

Publication Publication Date Title
CN104462357A (zh) 实现个性化搜索的方法和装置
Wang et al. SS-XGBoost: a machine learning framework for predicting newmark sliding displacements of slopes
CN109885842B (zh) 处理文本神经网络
CN109376222B (zh) 问答匹配度计算方法、问答自动匹配方法及装置
CN104408153B (zh) 一种基于多粒度主题模型的短文本哈希学习方法
CN108280114B (zh) 一种基于深度学习的用户文献阅读兴趣分析方法
CN111488137B (zh) 一种基于共同注意力表征学习的代码搜索方法
CN104598611B (zh) 对搜索条目进行排序的方法及系统
CN110737778A (zh) 基于知识图谱和Transformer的专利推荐方法
CN106202010A (zh) 基于深度神经网络构建法律文本语法树的方法和装置
CN103425687A (zh) 一种基于关键词的检索方法和系统
CN108804677A (zh) 结合多层级注意力机制的深度学习问题分类方法及系统
US12026462B2 (en) Word embedding model parameter advisor
CN105809473A (zh) 匹配模型参数的训练方法、服务推荐方法及对应装置
CN106156333A (zh) 一种融合社会化信息的改进单类协同过滤方法
CN112085541A (zh) 基于浏览消费时序数据的用户需求分析方法及装置
CN103678436A (zh) 信息处理系统和信息处理方法
CN117056452B (zh) 知识点学习路径构建方法、装置、设备以及存储介质
CN113569118B (zh) 自媒体推送方法、装置、计算机设备及存储介质
CN107133274A (zh) 一种基于图知识库的分布式信息检索集合选择方法
Azzam et al. A question routing technique using deep neural network for communities of question answering
CN110851708B (zh) 负样本的抽取方法、装置、计算机设备和存储介质
Leal et al. Relevance feedback search based on automatic annotation and classification of texts
CN109614456B (zh) 一种基于深度学习的地理信息的定位分区方法及装置
CN112989801A (zh) 一种序列标注方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant