CN107402954B - 建立排序模型的方法、基于该模型的应用方法和装置 - Google Patents
建立排序模型的方法、基于该模型的应用方法和装置 Download PDFInfo
- Publication number
- CN107402954B CN107402954B CN201710385409.3A CN201710385409A CN107402954B CN 107402954 B CN107402954 B CN 107402954B CN 201710385409 A CN201710385409 A CN 201710385409A CN 107402954 B CN107402954 B CN 107402954B
- Authority
- CN
- China
- Prior art keywords
- relation
- query
- title
- entity word
- words
- 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
- 238000012163 sequencing technique Methods 0.000 title claims abstract description 94
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000012549 training Methods 0.000 claims abstract description 63
- 238000013528 artificial neural network Methods 0.000 claims abstract description 24
- 230000015654 memory Effects 0.000 claims description 21
- 238000013527 convolutional neural network Methods 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 230000000306 recurrent effect Effects 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 71
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 4
- 241001480982 Angelina Species 0.000 description 3
- 239000000470 constituent Substances 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 241000380490 Anguina Species 0.000 description 2
- 241000206607 Porphyra umbilicalis Species 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- MNQDKWZEUULFPX-UHFFFAOYSA-M dithiazanine iodide Chemical compound [I-].S1C2=CC=CC=C2[N+](CC)=C1C=CC=CC=C1N(CC)C2=CC=CC=C2S1 MNQDKWZEUULFPX-UHFFFAOYSA-M 0.000 description 1
- 210000001699 lower leg Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
- G06F16/287—Visualization; Browsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/06—Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
- G06F7/08—Sorting, i.e. grouping record carriers in numerical or other ordered sequence according to the classification of at least some of the information they carry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种建立排序模型的方法、基于该模型的应用方法和装置,从搜索日志中获取包含关系三元组的搜索关键词(query)以及query对应的被点击搜索结果的标题(title),其中关系三元组包括实体词对以及该实体词对的关系词;利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;利用训练数据,训练基于神经网络的排序模型,排序模型用于依据语句对实体词对的关系的描述状况,对语句进行排序。通过该排序模型能够实现以下应用:对包含关系三元组的query的搜索结果排序,确定对实体词对的关系描述语句,在搜索引擎针对包含实体词的query展现相关实体词时,能够进一步展现相关实体词与搜索的实体词间关系的描述语句。
Description
【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种建立排序模型的方法、基于该模型的应用方法和装置。
【背景技术】
随着互联网技术的迅速发展,网络中文档数量急剧增长,面临各种各样的文档排序问题,例如搜索引擎中对于搜索结果的排序问题就是一种常见的文档排序。特别地,包含实体词对以及实体词对的关系词的query(搜索关键词)越来越多的被搜索,例如“刘华的老婆朱倩”、“百度的CEO李彦宏”等等。对于搜索引擎而言,搜索结果的排序是否反映用户的搜索需求影响到计算负载、搜索结果质量、用户获取信息的效率以及用户体验等。例如,搜索结果的排序若没有很好的反映用户的搜索需求,例如用户想要查看的搜索结果排在靠后的位置,则用户就需要花费更多的时间去进行下拉页面、翻页等操作,因此需要请求更多的计算资源并影响用户获取信息的效率。
【发明内容】
本发明提供了一种建立排序模型的方法、对搜索结果进行排序的方法、确定实体词对关系描述语句的方法及其对应装置和计算机存储介质,以便搜索结果更加符合用户的搜索需求。
具体技术方案如下:
本发明提供了一种建立排序模型的方法,该方法包括:
从搜索日志中获取包含关系三元组的搜索关键词query以及query对应的被点击搜索结果的标题title,其中所述关系三元组包括实体词对以及该实体词对的关系词;
利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
本发明还提供了一种对搜索结果进行排序的方法,该方法包括:
获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果;
依据排序模型对所述搜索结果的标题title的排序结果,对所述搜索结果进行排序;
其中所述排序模型采用上述建立排序模型的方法预先建立。
本发明还提供了一种确定实体词对关系描述语句的方法,该方法包括:
获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果的标题title;
利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句;
其中所述排序模型采用上述建立排序模型的方法预先建立。
本发明还提供了一种确定实体词对关系描述语句的方法,该方法包括:
确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现所述相关实体词、所述关系词以及所述关系描述语句;
其中所述排序模型采用上述建立排序模型的方法预先建立。
本发明提供了一种建立排序模型的装置,该装置包括:
数据采集单元,用于从搜索日志中获取包含关系三元组的搜索关键词query以及query对应的被点击搜索结果的标题title,其中所述关系三元组包括实体词对以及该实体词对的关系词;
训练数据确定单元,用于利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
模型训练单元,用于利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
本发明还提供了一种对搜索结果进行排序的装置,该装置包括:
关键词获取单元,用于获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
搜索结果获取单元,用于获取所述query对应的搜索结果;
搜索结果排序单元,用于依据排序模型对所述搜索结果的标题title的排序结果,对所述搜索结果进行排序;
其中所述排序模型采用上述建立排序模型的装置预先建立。
本发明还提供了一种确定实体词对关系描述语句的装置,该装置包括:
关键词获取单元,用于获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
标题获取单元,用于获取所述query对应的搜索结果的标题title;
语句确定单元,用于利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句;
其中所述排序模型采用上述建立排序模型的装置预先建立。
本发明还提供了一种确定实体词对关系描述语句的装置,该装置包括:
确定单元,用于确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询单元,用于查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现单元,用于展现所述相关实体词、所述关系词以及所述关系描述语句;
其中所述排序模型采用上述建立排序模型的装置预先建立。
本发明还提供了一种设备,包括
存储器,包括一个或者多个程序;
一个或者多个处理器,耦合到所述存储器,执行所述一个或者多个程序,以实现上述方法中执行的操作。
本发明还提供了一种计算机存储介质,所述计算机存储介质被编码有计算机程序,所述程序在被一个或多个计算机执行时,使得所述一个或多个计算机执行上述方法中执行的操作。
由以上技术方案可以看出,本发明基于搜索日志中包含关系三元组(实体词对和实体词对的关系词)的query以及query对应的被点击搜索结果的title的被点击次数,得到训练数据,基于该训练数据建立建立了一种排序模型,该排序模型能够依据语句对实体词对关系的描述状况对语句进行排序。通过该排序模型能够实现对包含关系三元组的query的搜索结果排序,该排序结果反映了搜索结果的title对实体词对关系的描述状况,更加符合用户的搜索需求。
另外,通过该排序模型能够确定对实体词对的关系描述语句,并将其存储于关系数据库,从而在搜索引擎针对包含实体词的query展现相关实体词时,能够进一步展现相关实体词与搜索的实体词间关系的描述语句,从而使得用户更加直观地、清楚地了解实体词对的关系。
【附图说明】
图1为本发明实施例提供的建立排序模型的方法流程图;
图2为本发明实施例提供的排序模型的原理示意图;
图3为本发明实施例提供的CNN的原理示意图;
图4为本发明实施例提供的对搜索结果进行排序的方法流程图;
图5为本发明实施例提供的确定实体词对关系描述语句的方法流程图;
图6为本发明实施例提供的实体词推荐的方法流程图;
图7a为本发明实施例提供的展现相关实体词的一个实例图;
图7b为本发明实施例提供的展现相关实体词的另一实例图;
图8为本发明实施例提供的建立排序模型的装置结构图;
图9为本发明实施例提供的对搜索结果进行排序的装置结构图;
图10为本发明实施例提供的一种确定实体词对关系描述语句的装置结构图;
图11为本发明实施例提供的另一种确定实体词对关系描述语句的装置结构图;
图12为适于用来实现本发明实施方式的示例性计算机系统/服务器的框图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
在本发明实施例中主要涉及两个主要阶段:其一是建立排序模型的阶段;其二是利用预先建立的排序模型进行相关应用的阶段。这两个阶段可以相互独立,下面通过具体实施例对上述两个阶段进行详细描述。
对于包含实体词对、实体词对的关系词的query而言,用户的搜索需求除了体现在实体词对上之外,很大程度上也体现在实体词对的关系词上,因此对搜索结果的排序很大程度上也体现在该搜索结果对实体词对关系的描述状况上,如果某搜索结果对实体词对关系的描述较优,则往往能够比较好地符合用户的搜索需求。因此,本发明实施例中建立的排序模型是依据语句对实体词对的关系的描述状况对语句进行的排序,其中在搜索引擎中,所述语句主要就体现为搜索结果的title(标题)。
基于上述理论,反向考虑,能够更好反映用户搜索需求的搜索结果的title,就能够更好地对query包含的实体词对的关系进行更好的描述。而搜索结果中对用户搜索需求的反映可以采用用户对搜索结果的title(以下简称“title”)的点击次数上,即用户在搜索query的情况下,对某个title点击的次数越多,则该title对该query所包含实体词对的关系描述的越优。
也就是说,本发明将描述实体词间关系的问题转化为对点击数据的研究。下面结合图1对本发明实施例提供的建立排序模型的方法进行详述。如图1所示,该方法可以包括以下步骤:
在101中,从搜索日志中获取包含关系三元组的query以及该query对应的被点击title,其中关系三元组包括实体词对以及该实体词对的关系词。
在本发明实施例中,从搜索日志中获取包含上述关系三元组这种特定类型的query,并获取query对应的被点击title。优选地,为了保证被点击title对实体词对及其关系的反映,获取的query对应的被点击title时,可以仅获取query对应的被点击title中包含上述实体词对的title。
假设query qs包含的三元组表示为:(eh,rk,et),其中实体词eh和实体词et构成实体词对,rk为实体词eh和实体词et之间的关系。
如果用户在搜索结果中点击标题t,该标题t包含三元组中的实体词eh和et,则标题t在一定程度上是对三元组中的关系词rk的描述。并且点击次数是对描述状况的反映,被点击次数越多的标题t,其对rk的描述越准确越优。
获取query对应的被点击title作为候选语句集合S={s1,s2,...,sn},候选语句集合中的各语句包含实体词eh和et。目标是学习得到一个排序模型,该排序模型依据语句对实体词eh和et之间的关系rk的描述状况对各语句进行排序。
在102中,利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据。
在本发明实施例中,可以选择最近设定时长内的搜索日志来获取训练数据。该设定时长可以根据数据规模以及时效性要求等进行选取。例如可以选择近6个月的搜索日志来获取训练数据。
在本步骤中,可以选择query-title对作为训练数据。具体地,若获取的某query对应的被点击title中,存在title1和title2的被点击次数不同,即两者在被点击次数上存在差值,则可以将query-title1对以及query-title2对加入训练数据。
通用表示为:若cdif(qs,ti,tj)>0,则将qs、ti和tj加入训练数据。
其中ti和tj均为qs对应的被点击title。cdif(qs,ti,tj)=click(qs,ti)-click(qs,tj),click(qs,ti)为ti作为qs对应的被点击title的总被点击次数,click(qs,tj)为tj作为qs对应的被点击title的总被点击次数。
在103中,利用训练数据,训练基于神经网络的排序模型。
在本发明实施例中,可以利用训练数据训练基于神经网络的排序模型,得到排序模型。其中,神经网络可以采用CNN(Convolutional Neural Network,卷积神经网络)、RNN(Recurrent Neural Network,循环神经网络)或LSTM(Long Short-Term Memory,长短期记忆网络)等。在本实施例中以CNN为例进行描述。
在本发明实施例中,训练排序模型的方式是采用文档对(pairwise)的训练方式,即训练的是文档对排序模型。具体地,可以利用训练数据训练CNN,以使得CNN输出的query的特征向量与该query对应的两个title的特征向量间的相关度依据该两个title在该query下的被点击次数进行排序,且排序损失最小。
如图2中所示,该模型以三元组(qs,ti,tj)作为三个CNN的输入,目标是学习得到一个表示函数υ(·),用于将qs、ti以及tj分别表示成各自对应的特征向量υ(qs)、υ(ti)、υ(tj),使得ti与qs的相关度得分高于tj与qs的相关度得分:
S(υ(qs),υ(ti))>S(υ(qs),υ(tj))
其中,S(·,·)用于计算两个向量之间的相关度,例如余弦相关度。即S(υ(qs),υ(ti))体现的是ti与qs的相关度,S(υ(qs),υ(tj))体现的是tj与qs的相关度。
为了使得上述相关度得分能够反映文档相似度排序,在排序模型的最上层即排序层估算三元组(qs,ti,tj)的损失Loss(qs,ti,tj)。在本发明实施例中,query与对应title的特征向量相关度与title的被点击次数越正相关,则title的排序损失越小。仍接续上例,Loss(qs,ti,tj)可以采用:
Loss(qs,ti,tj)=max(0,1-S(υ(qs),v(ti))+S(υ(qs),v(tj)))
由于ti的被点击次数高于tj,因此ti的被点击次数高于tj的程度越大,理想情况下S(υ(qs),υ(ti))的取值大于S(υ(qs),υ(tj))的程度越大,此时Loss(qs,ti,tj)的取值越小。上述排序损失函数仅为本发明实施例提供的一个例子,还可以采用其他损失函数,在此不再一一穷举。
排序层没有参数,在训练期间排序层计算三元组中,在给定的query下,两个title对的排序损失,并反馈给低层,以便低层进行调参从而最小化排序损失,以使得学习到的特征越优。该学习过程可以通过以下目标来表达:
其中,P为训练数据中所有三元组(qs,ti,tj)构成的集合,λ为改进排序模型的正则参数,W为表示函数υ(·)的CNN参数。
下面对CNN的工作原理进行简单描述。如图3中所示,首先语句(即title)中的词语被转化为向量,该向量包含词语的语义和语法信息。然后,在卷积层采用一个长度为h(例如取3)的滑动窗口作为卷积核(filter),以从句子中提取特征。为了保证卷积核能够应用到所输入矩阵的每一个元素,可以在卷积之前对各输入进行补零。该卷积核在CNN中自动学习得到。接着,最大池化层(Max pooling layer)对特征进行降维处理,仅保留重要的特征。最后,最大池化层将处理后的特征输出给全连接层,由全连接层对特征进行非线性变换,得到语句的特征向量υ(·),其中在进行非线性变换时可以利用sigmoid激活函数。
至此,排序模型建立完毕。
举个例子,对于一个query“刘华的老婆朱倩”,实体词eh和et分别为“刘华”和“朱倩”,关系词rk为“老婆”。采集其对应的包含实体词对“刘华”和“朱倩”的被点击title,如表1所示:
表1
title序号 | title | 被点击次数 |
t1 | 刘华与朱倩宣布结婚 | 39 |
t2 | 刘华和朱倩已结婚超过2年 | 23 |
t3 | 刘华与朱倩秘密举行婚礼 | 10 |
t4 | 刘华与朱倩确定恋爱关系 | 5 |
t5 | 朱倩等了刘华多久 | 1 |
t6 | 刘华的老婆朱倩的经典照片 | 0 |
t7 | 刘华的老婆朱倩的简介 | 0 |
对于上表中的各title而言,被点击次数越多的title,对“刘华”和“朱倩”之间关系“老婆”的描述越优。在训练排序模型的CNN的学习过程中,能够从title中学习到各种常用于对某种关系进行描述的表达方法或短语。例如,在标题t6和t7中的“照片”和“简介”相对于标题t1、t2、t3等中的“宣布结婚”、“结婚”、“秘密举行婚礼”而言,对于两人的关系描述差一些。
下面对排序模型的应用方式进行描述,其应用可以包括但不限于:
1)对包含关系三元组的query对应的搜索结果进行排序,其中关系三元组包括实体词对以及该实体词对的关系词。
2)确定实体词对关系描述语句,即自动找到对实体词对关系的准确描述。
3)在搜索引擎中进行实体词推荐时,在展现推荐的实体词与搜索的实体词之间的关系的同时,展现对该关系的描述语句。
下面结合实施例分别对上述应用方式进行描述。
图4为本发明实施例提供的对搜索结果进行排序的方法流程图,在该流程中使用了图1所示实施例中建立的排序模型。如图4所示,该方法可以包括以下步骤:
在401中,获取包含关系三元组的query,该关系三元组包括实体词对以及该实体词对的关系词。
本步骤中获取的query可以是用户在进行网络搜索时,输入的包含关系三元组的query。该query可以仅包含实体词对以及该实体词对的关系词,还可以包括其他词,但在处理时从中提取出关系三元组。
例如,用户在搜索输入框输入的query为“刘华老婆朱倩”,也可以是“刘华的理想老婆朱倩”,从中提取出关系三元组:实体词对“刘华”和“朱倩”、关系词“老婆”。
在402中,获取该query对应的搜索结果。
利用该query在搜索数据库中进行搜索,获取搜索结果。
在403中,依据排序模型对搜索结果的title的排序结果,对搜索结果进行排序。
将实体词对、实体词对的关系词以及该query对应的搜索结果的title输入预先建立的排序模型,得到排序模型对搜索结果的title的排序结果。
在对搜索结果进行排序时,可以将上述排序模型对title的排序结果作为最终排序结果或者最终排序结果的一个重要特征。对于包含三元组的query,用户的搜索需求很大程度上体现在实体词对的关系上,若搜索结果的title对实体词对的关系描述得越优,则越大程度地体现用户的搜索需求,因此可以在搜索结果的排序上排得越靠前。
当作为最终排序结果的一个重要特征时,还可以结合其他排序特征对搜索结果进行排序,例如搜索结果与query的相关度、搜索结果所来源网站的权威度、搜索结果的时效性等等作为排序依据。可以对不同各排序依据设置不同的排序权值,进行综合评分后,依据评分结果对搜索结果进行排序。
因其异质性、语义的丰富性和大规模,知识图谱被广泛地应用于各类搜索应用,例如基于语义扩展搜索结果以及实体词推荐。在知识图谱中呈现实体词间关系的描述有助于建立和增强用户对实体词推荐系统的信任度。
图5为本发明实施例提供的确定实体词对关系描述语句的方法流程图,在该流程中使用了图1所示实施例中建立的排序模型。如图5所示,该方法可以包括以下步骤:
在501中,获取包含关系三元组的query,所述关系三元组包括实体词对以及该实体词对的关系词。
可以从知识图谱中获取实体词对、实体词对对应的关系词,组成query。例如,在知识图谱中存在“布拉德彼特”-“安吉丽娜朱莉”构成的实体词对,该实体词对的关系词“夫妻”,将该三元组组成query“布拉德彼特安吉丽娜朱莉夫妻”。
在502中,获取query对应的搜索结果的title。
利用获取的query进行搜索,获取搜索结果的title。
在503中,利用排序模型对title进行排序,依据排序结果从上述title中选择title作为对query所包含实体词对的关系描述语句。
将实体词对、实体词对的关系词以及query对应的搜索结果的title输入排序模型,得到排序模型对搜索结果的title的排序结果。
然后依据排序结果,可以从搜索结果中选择排序最高的N个title作为实体词的关系描述语句,N为预设的正整数,例如从搜索结果的title中选择排序最高的title作为实体词对的关系描述语句。
例如,将“布拉德彼特安吉丽娜朱莉夫妻”的query进行搜索,获取各搜索结果的title,然后将布拉德彼特、安吉丽娜朱莉、夫妻以及各搜索结果的title输入排序模型,获得对各搜索结果的title的排序结果。然后将排序最高的title“布拉德彼特和安吉丽娜朱莉于2014年结婚,共同出演《史密斯夫妇》”作为“布拉德彼特”和“安吉丽娜朱莉”这对实体词对的关系“夫妻”的描述语句。
在504中,在关系数据库中存储该实体词对、实体词对的关系词以及对该实体词对的关系描述语句。
接续上例,在关系数据库中按照“实体词1”-“实体词2”-“关系词”-“关系描述语句”的格式,存储“布拉德彼特”-“安吉丽娜朱莉”-“夫妻”-“布拉德彼特和安吉丽娜朱莉于2014年结婚,共同出演《史密斯夫妇》”。
图6为本发明实施例提供的实体词推荐的方法流程图,如图6所示,该方法可以包括以下步骤:
在601中,确定包含实体词的query对应的相关实体词,以及该实体词和相关实体词的关系词。
用户在搜索引擎中输入query后,可以向用户推荐与该query相关的实体词作为相关实体词,并且进一步确定该实体词和相关实体词的关系词。
对于相关实体词和关系词的确定可以通过查询知识图谱或者查询图5所示实施例中建立的关系数据库的方式。
在602中,查询关系数据库,确定实体词和相关实体词构成的实体词对以及关系词对应的关系描述语句。
在本步骤中,将用户搜索的实体词以及相关实体词作为实体词对,利用实体词对和实体词对的关系词查询图5所示实施例中建立的关系数据库,即可确定出对应的关系描述语句。
在603中,展现上述相关实体词、关系词以及关系描述语句。
在本发明实施例中,可以在query对应的搜索结果页的预设区域,展现上述相关实体词、关系词以及关系描述语句。或者,在query对应的搜索结果页的预设区域展现上述相关实体词和关系词,当捕捉到在上述预设区域的事件时,展现关系描述语句。例如可以在搜索结果页中右侧偏上区域展现相关实体词,在相关实体词的下方展现关系词,当用户鼠标悬停在该关系词所在区域时,展现对应的关系描述语句。当然,也可以采用其他区域、方式或样式来展现相关实体词、关系词以及关系描述语句,在此不再一一穷举。
举个例子,用户在搜索引擎中搜索关键词“布拉德彼特”,在如图7a所示的搜索结果页中右侧偏上区域展现相关实体词“安吉丽娜朱莉”、“安尼佛安妮斯顿”、“强尼迪普”、“汤姆克鲁斯”等等。
在相关实体词“安吉丽娜朱莉”的下方,展现有其与“布拉德彼特”之间的关系词“夫妻”。当鼠标在关系词“夫妻”附近悬停时,会呈现给用户描述两实体词之间关系(即“夫妻”)的句子:“布拉德彼特和安吉丽娜朱莉于2014年结婚,共同出演《史密斯夫妇》”。依据该句子,用户能够更容易理解两实体词之间的关系。
再例如图7b中所示,用户在搜索引擎中搜索关键词“奥巴马”,在如图7b所示的搜索结果页中右侧偏上区域展现相关实体词“米歇尔”、“安·邓纳姆”、“马克·奥巴马·狄善九”等等。
在各相关实体词的下方并未展现与“奥巴马”之间的关系词,而是直接展示了对相关实体词与搜索的实体词“奥巴马”之间关系的描述语句。例如,在“米歇尔”的下方展现“92年结婚并育有俩女儿”的语句,该语句是对“米歇尔”与“奥巴马”之间关系的描述,从该语句用户可以清楚地获知两实体之前的关系。
另外需要说明的是,本发明实施例中均以中文为例进行描述,但本发明提供的实现方式并不限于中文,对于其他语言同样适用。以英文为例,通过本发明上述方式,可以在关系数据库中建立“Andy Lau”-“Carol Chu”-“Wife”-“Andy Lau announces hismarriage with Carol Chu sentences”的对应关系。当用户搜索“Andy Lau”时,可以在搜索结果页的右侧区域展示相关实体词“Carol Chu”以及关系词“Wife”。当鼠标在该相关实体词的区域悬停时,展现对“Andy Lau”和“Carol Chu”的关系“Wife”的描述语句“Andy Lauannounces his marriage with Carol Chu sentences”。
以上是对本发明所提供方法进行的详细描述。下面结合实施例对本发明提供的装置进行详细描述。本发明实施例提供的方法的执行主体即对应装置可以为服务器端的应用、插件或软件开发包等。
图8为本发明实施例提供的建立排序模型的装置结构图,该装置用于执行如图1所示实施例中的流程。如图8所示,该装置可以包括:数据采集单元01、训练数据确定单元02和模型训练单元03。其中各组成单元的主要功能如下:
数据采集单元01从搜索日志中获取包含关系三元组的query以及query对应的被点击搜索结果的title,其中关系三元组包括实体词对以及该实体词对的关系词。
优选地,为了保证被点击title对实体词对及其关系的反映,数据采集单元01获取query对应的被点击title时,可以仅获取query对应的被点击title中包含上述实体词对的title。
训练数据确定单元02利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据。具体地,若获取的query对应的被点击title中,存在两个title的被点击次数不同,则训练数据确定单元02可以将query、两个title构成的文档对作为一个样本加入训练数据。
模型训练单元03利用训练数据,训练基于神经网络的排序模型,该排序模型用于依据语句对实体词对的关系的描述状况,对语句进行排序。
其中,采用的神经网络可以包括但不限于:CNN、RNN或LSTM等。
具体地,可以利用训练数据训练神经网络,以使得神经网络输出的query的特征向量与该query对应的两个title的特征向量间的相关度依据该两个title在该query下的被点击次数进行排序,且排序损失最小。
其中,若query分别与两个对应title的特征向量相关度的差值与该两个title的被点击次数的差值越正相关,则排序损失越小。具体排序损失的实例可以参见方法实施例中的描述,在此不再赘述。
图9为本发明实施例提供的对搜索结果进行排序的装置结构图,该装置用于执行如图4中所示实施例中的流程,如图9所示,该装置可以包括:关键词获取单元11、搜索结果获取单元12和搜索结果排序单元13。各组成单元的主要功能如下:
关键词获取单元11负责获取包含关系三元组的query,关系三元组包括实体词对以及该实体词对的关系词。该query可以是用户在进行网络搜索时,输入的包含关系三元组的query。该query可以仅包含实体词对以及该实体词对的关系词,还可以包括其他词,但在处理时从中提取出关系三元组。
搜索结果获取单元12负责获取query对应的搜索结果。例如可以从搜索引擎获取该query对应的搜索结果。
搜索结果排序单元13负责依据排序模型对搜索结果的标题title的排序结果,对搜索结果进行排序。其中排序模型采用图8所示实施例中的装置预先建立。
具体地,搜索结果排序单元13可以将实体词对、实体词对的关系词以及query对应的搜索结果的title输入排序模型,得到排序模型对搜索结果的title的排序结果。
在对搜索结果进行排序时,可以将上述排序模型对title的排序结果作为最终排序结果或者最终排序结果的一个重要特征,对搜索结果进行排序。对于包含三元组的query,用户的搜索需求很大程度上体现在实体词对的关系上,若搜搜结果的title对实体词对的关系描述得越优,则越大程度地体现用户的搜索需求,因此可以在搜索结果的排序上排得越靠前。
当作为排序结果的一个重要特征时,还可以结合其他排序依据对搜索结果进行排序,例如搜索结果与query的相关度、搜索结果所来源网站的权威度、搜索结果的时效性等等作为排序依据。可以对各排序依据设置不同的排序权值,进行综合评分后,依据评分结果对搜索结果进行排序。
图10为本发明实施例提供的一种确定实体词对关系描述语句的装置结构图,该装置用于执行如图5中所示实施例中的流程。如图10所示,该装置可以包括:关键词获取单元21、标题获取单元22和语句确定单元23,还可以进一步包括存储单元24。各组成单元的主要功能如下:
关键词获取单元21负责获取包含关系三元组的query,关系三元组包括实体词对以及该实体词对的关系词。
标题获取单元22负责获取query对应的搜索结果的title。优选地,可以获取query对应的搜索结果的title中包含实体词对的title。例如,从搜索引擎获取query对应的搜索结果的title中包含实体词对的title。
语句确定单元23负责利用排序模型对title进行排序,依据排序结果从title中选择title作为对实体词对的关系描述语句。其中排序模型采用图8所示实施例中的装置预先建立。
语句确定单元23在依据排序结果从title中选择title作为对实体词对的关系描述语句时,可以从搜索结果中选择排序最高的N个title作为实体词的关系描述语句,N为预设的正整数,例如从搜索结果的title中选择排序最高的title作为实体词对的关系描述语句。
存储单元24负责在关系数据库中存储实体词对、实体词对的关系词以及对实体词对的关系描述语句。
图11为本发明实施例提供的另一种确定实体词对关系描述语句的装置结构图,该装置用于执行如图6中所示实施例中的流程。如图11所示,该装置可以包括:确定单元31、查询单元32和展现单元33,各组成单元的主要功能如下:
确定单元31负责确定包含实体词的query对应的相关实体词,以及实体词和相关实体词的关系词。用户在搜索引擎中输入query后,可以向用户推荐与该query相关的实体词作为相关实体词,并且进一步确定query中包含的实体词和相关实体词的关系词。
对于相关实体词和关系词的确定可以通过查询知识图谱或者查询图5所示实施例中建立的关系数据库的方式。
查询单元32负责查询关系数据库,确定实体词和相关实体词构成的实体词对以及关系词对应的关系描述语句。
展现单元33负责展现相关实体词、关系词以及关系描述语句。其中排序模型采用图8所示实施例中的装置预先建立。
其中,展现单元33可以在query对应的搜索结果页的预设区域,展现上述相关实体词、关系词以及关系描述语句。或者,在query对应的搜索结果页的预设区域展现相关实体词和关系词,当捕捉到在上述预设区域的事件时,展现关系描述语句。例如可以在搜索结果页中右侧偏上区域展现相关实体词,在相关实体词的下方展现关系词,当用户鼠标悬停在该关系词所在区域时,展现对应的关系描述语句。当然,也可以采用其他区域、方式或样式来展现相关实体词、关系词以及关系描述语句,在此不再一一穷举。
本发明实施例提供的上述方法和装置可以以设置并运行于设备(例如计算机系统或服务器)中的计算机程序体现。图12示出了适于用来实现本发明实施方式的示例性计算机系统/服务器012的框图。图12显示的计算机系统/服务器012仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统/服务器012以通用计算设备的形式表现。计算机系统/服务器012的组件可以包括但不限于:一个或者多个处理器或者处理单元016,系统存储器028,连接不同系统组件(包括系统存储器028和处理单元016)的总线018。
总线018表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器012典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器012访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)030和/或高速缓存存储器032。计算机系统/服务器012可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统034可以用于读写不可移动的、非易失性磁介质(图12未显示,通常称为“硬盘驱动器”)。尽管图12中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线018相连。存储器028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块042的程序/实用工具040,可以存储在例如存储器028中,这样的程序模块042包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块042通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器012也可以与一个或多个外部设备014(例如键盘、指向设备、显示器024等)通信,在本发明中,计算机系统/服务器012与外部雷达设备进行通信,还可与一个或者多个使得用户能与该计算机系统/服务器012交互的设备通信,和/或与使得该计算机系统/服务器012能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口022进行。并且,计算机系统/服务器012还可以通过网络适配器020与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器020通过总线018与计算机系统/服务器012的其它模块通信。应当明白,尽管图12中未示出,可以结合计算机系统/服务器012使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元016通过运行存储在系统存储器028中的程序,从而执行各种功能应用以及数据处理,例如实现一种建立排序模型的方法,可以包括:
从搜索日志中获取包含关系三元组的query以及query对应的被点击搜索结果的title,其中所述关系三元组包括实体词对以及该实体词对的关系词;
利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
再例如,实现一种对搜索结果进行排序的方法,可以包括:
获取包含关系三元组的query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果;
依据排序模型对所述搜索结果的title的排序结果,对所述搜索结果进行排序。
再例如,实现一种确定实体词对关系描述语句的方法,可以包括:
获取包含关系三元组的query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果的title;
利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句。
再例如,实现一种确定实体词对关系描述语句的方法,可以包括:
确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现所述相关实体词、所述关系词以及所述关系描述语句。
上述的计算机程序可以设置于计算机存储介质中,即该计算机存储介质被编码有计算机程序,该程序在被一个或多个计算机执行时,使得一个或多个计算机执行本发明上述实施例中所示的方法流程和/或装置操作。例如,被上述一个或多个处理器执行的方法流程,可以包括:
从搜索日志中获取包含关系三元组的query以及query对应的被点击搜索结果的title,其中所述关系三元组包括实体词对以及该实体词对的关系词;
利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
再例如,被上述一个或多个处理器执行的方法流程,可以包括:
获取包含关系三元组的query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果;
依据排序模型对所述搜索结果的title的排序结果,对所述搜索结果进行排序。
再例如,被上述一个或多个处理器执行的方法流程,可以包括:
获取包含关系三元组的query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果的title;
利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句。
再例如,被上述一个或多个处理器执行的方法流程,可以包括:
确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现所述相关实体词、所述关系词以及所述关系描述语句。
随着时间、技术的发展,介质含义越来越广泛,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载等。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (29)
1.一种建立排序模型的方法,其特征在于,该方法包括:
从搜索日志中获取包含关系三元组的搜索关键词query以及query对应的被点击搜索结果的标题title,其中所述关系三元组包括实体词对以及该实体词对的关系词,所述被点击搜索结果的title为包括所述实体词对的被点击title;
利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
2.根据权利要求1所述的方法,其特征在于,所述利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据包括:
若获取的query对应的被点击title中,存在两个title的被点击次数不同,则将query分别与两个title构成的文档对均加入训练数据。
3.根据权利要求1所述的方法,其特征在于,所述神经网络包括:卷积神经网络CNN、循环神经网络RNN或长短期记忆网络LSTM。
4.根据权利要求2所述的方法,其特征在于,利用所述训练数据训练基于神经网络的排序模型包括:
利用所述训练数据训练神经网络,以使得神经网络输出的query的特征向量与该query对应的两个title的特征向量间的相关度依据该两个title在该query下的被点击次数进行排序,且排序损失最小。
5.根据权利要求4所述的方法,其特征在于,query分别与两个title对应的特征向量相关度的差值与该两个title的被点击次数的差值越正相关,则所述排序损失越小。
6.一种对搜索结果进行排序的方法,其特征在于,该方法包括:
获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果;
依据排序模型对所述搜索结果的标题title的排序结果,对所述搜索结果进行排序;
其中所述排序模型采用如权利要求1至5任一权项所述的方法预先建立。
7.根据权利要求6所述的方法,其特征在于,排序模型对所述搜索结果的标题title进行排序时,具体包括:
将所述实体词对、实体词对的关系词以及所述query对应的搜索结果的title输入所述排序模型,得到所述排序模型对所述搜索结果的title的排序结果。
8.一种确定实体词对关系描述语句的方法,其特征在于,该方法包括:
获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
获取所述query对应的搜索结果的标题title;
利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句;
其中所述排序模型采用如权利要求1至5任一权项所述的方法预先建立。
9.根据权利要求8所述的方法,其特征在于,获取所述query对应的搜索结果的标题title包括:
获取所述query对应的搜索结果的title中,包含所述实体词对的title。
10.根据权利要求8所述的方法,其特征在于,利用排序模型对所述title进行排序包括:
将所述实体词对、实体词对的关系词以及所述query对应的搜索结果的title输入所述排序模型,得到所述排序模型对所述title的排序结果。
11.根据权利要求8所述的方法,其特征在于,该方法还包括:
在关系数据库中存储所述实体词对、实体词对的关系词以及对所述实体词对的关系描述语句。
12.根据权利要求8所述的方法,其特征在于,所述依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句包括:
依据所述排序结果,从所述title中选择排序最高的title作为对所述实体词对的关系描述语句。
13.一种确定实体词对关系描述语句的方法,其特征在于,该方法包括:
确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现所述相关实体词、所述关系词以及所述关系描述语句;
其中,所述关系数据库是采用如权利要求10所述的方法预先建立的。
14.根据权利要求13所述的方法,其特征在于,在所述query对应的搜索结果页的预设区域,展现所述相关实体词、所述关系词以及所述关系描述语句;或者,
在所述query对应的搜索结果页的预设区域,展现所述相关实体词以及所述关系词,在所述预设区域捕捉到预设事件时,展现所述关系描述语句。
15.一种建立排序模型的装置,其特征在于,该装置包括:
数据采集单元,用于从搜索日志中获取包含关系三元组的搜索关键词query以及query对应的被点击搜索结果的标题title,其中所述关系三元组包括实体词对以及该实体词对的关系词,所述被点击搜索结果的title为包括所述实体词对的被点击title;
训练数据确定单元,用于利用获取的query、query对应的被点击title以及被点击title的被点击次数,得到训练数据;
模型训练单元,用于利用所述训练数据,训练基于神经网络的排序模型,所述排序模型用于依据语句对所述实体词对的关系的描述状况,对语句进行排序。
16.根据权利要求15所述的装置,其特征在于,所述训练数据确定单元,具体用于:若获取的query对应的被点击title中,存在两个title的被点击次数不同,则将query分别与两个title构成的文档对均加入训练数据。
17.根据权利要求15所述的装置,其特征在于,所述神经网络包括:卷积神经网络CNN、循环神经网络RNN或长短期记忆网络LSTM。
18.根据权利要求16所述的装置,其特征在于,所述模型训练单元,具体用于:利用所述训练数据训练神经网络,以使得神经网络输出的query的特征向量与该query对应的两个title的特征向量间的相关度依据该两个title在该query下的被点击次数进行排序,且排序损失最小。
19.根据权利要求18所述的装置,其特征在于,query分别与两个对应title的特征向量相关度的差值与该两个title的被点击次数的差值越正相关,则所述排序损失越小。
20.一种对搜索结果进行排序的装置,其特征在于,该装置包括:
关键词获取单元,用于获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
搜索结果获取单元,用于获取所述query对应的搜索结果;
搜索结果排序单元,用于依据排序模型对所述搜索结果的标题title的排序结果,对所述搜索结果进行排序;
其中所述排序模型采用如权利要求15至19任一权项所述的装置预先建立。
21.根据权利要求20所述的装置,其特征在于,所述搜索结果排序单元,具体用于:将所述实体词对、实体词对的关系词以及所述query对应的搜索结果的title输入所述排序模型,得到所述排序模型对所述搜索结果的title的排序结果。
22.一种确定实体词对关系描述语句的装置,其特征在于,该装置包括:
关键词获取单元,用于获取包含关系三元组的搜索关键词query,所述关系三元组包括实体词对以及该实体词对的关系词;
标题获取单元,用于获取所述query对应的搜索结果的标题title;
语句确定单元,用于利用排序模型对所述title进行排序,依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句;
其中所述排序模型采用如权利要求15至19任一权项所述的装置预先建立。
23.根据权利要求22所述的装置,其特征在于,所述标题获取单元,具体用于获取所述query对应的搜索结果的title中,包含所述实体词对的title。
24.根据权利要求22所述的装置,其特征在于,该装置还包括:
存储单元,用于在关系数据库中存储所述实体词对、实体词对的关系词以及对所述实体词对的关系描述语句。
25.根据权利要求22所述的装置,其特征在于,所述语句确定单元在依据排序结果从所述title中选择title作为对所述实体词对的关系描述语句时,具体执行:
依据所述排序结果,从所述title中选择排序最高的title作为对所述实体词对的关系描述语句。
26.一种确定实体词对关系描述语句的装置,其特征在于,该装置包括:
确定单元,用于确定包含实体词的query对应的相关实体词,以及所述实体词和相关实体词的关系词;
查询单元,用于查询关系数据库,确定所述实体词和相关实体词构成的实体词对以及所述关系词对应的关系描述语句;
展现单元,用于展现所述相关实体词、所述关系词以及所述关系描述语句;
其中,所述关系数据库是采用如权利要求24所述的装置预先建立的。
27.根据权利要求26所述的装置,其特征在于,所述展现单元,具体用于:
在所述query对应的搜索结果页的预设区域,展现所述相关实体词、所述关系词以及所述关系描述语句;或者,
在所述query对应的搜索结果页的预设区域,展现所述相关实体词以及所述关系词,在所述预设区域捕捉到预设事件时,展现所述关系描述语句。
28.一种设备,包括
存储器,包括一个或者多个程序;
一个或者多个处理器,耦合到所述存储器,执行所述一个或者多个程序,以实现如权利要求1至14任一权项所述方法中执行的操作。
29.一种计算机存储介质,所述计算机存储介质被编码有计算机程序,所述程序在被一个或多个计算机执行时,使得所述一个或多个计算机执行如权利要求1至14任一权项所述方法中执行的操作。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710385409.3A CN107402954B (zh) | 2017-05-26 | 2017-05-26 | 建立排序模型的方法、基于该模型的应用方法和装置 |
US15/694,689 US11449767B2 (en) | 2017-05-26 | 2017-09-01 | Method of building a sorting model, and application method and apparatus based on the model |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710385409.3A CN107402954B (zh) | 2017-05-26 | 2017-05-26 | 建立排序模型的方法、基于该模型的应用方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107402954A CN107402954A (zh) | 2017-11-28 |
CN107402954B true CN107402954B (zh) | 2020-07-10 |
Family
ID=60404874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710385409.3A Active CN107402954B (zh) | 2017-05-26 | 2017-05-26 | 建立排序模型的方法、基于该模型的应用方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11449767B2 (zh) |
CN (1) | CN107402954B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108509411B (zh) * | 2017-10-10 | 2021-05-11 | 腾讯科技(深圳)有限公司 | 语义分析方法和装置 |
CN110569335B (zh) | 2018-03-23 | 2022-05-27 | 百度在线网络技术(北京)有限公司 | 基于人工智能的三元组校验方法、装置及存储介质 |
CN109033140B (zh) * | 2018-06-08 | 2020-05-29 | 北京百度网讯科技有限公司 | 一种确定搜索结果的方法、装置、设备和计算机存储介质 |
WO2020047861A1 (zh) * | 2018-09-07 | 2020-03-12 | 北京字节跳动网络技术有限公司 | 用于生成排序模型的方法和装置 |
CN109325240A (zh) * | 2018-12-03 | 2019-02-12 | 中国移动通信集团福建有限公司 | 指标查询的方法、装置、设备和介质 |
CN109597941B (zh) * | 2018-12-12 | 2021-04-27 | 拉扎斯网络科技(上海)有限公司 | 排序方法及装置、电子设备和存储介质 |
CN109471980A (zh) * | 2018-12-20 | 2019-03-15 | 厦门笨鸟电子商务有限公司 | 一种基于文本匹配的搜索推荐相关度计算方法 |
CN109816438B (zh) * | 2019-01-11 | 2020-10-30 | 珠海天燕科技有限公司 | 信息推送方法及装置 |
CN109947902B (zh) * | 2019-03-06 | 2021-03-26 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置和可读介质 |
CN110502621B (zh) * | 2019-07-03 | 2023-06-13 | 平安科技(深圳)有限公司 | 问答方法、问答装置、计算机设备及存储介质 |
CN112416984B (zh) * | 2019-08-21 | 2024-06-04 | 华为技术有限公司 | 一种数据处理方法及其装置 |
CN110515930A (zh) * | 2019-09-03 | 2019-11-29 | 清华大学 | 临界水、二氧化碳和氢气混合物热物性数据库及构建方法 |
CN110704547B (zh) * | 2019-09-26 | 2022-08-09 | 北京明略软件系统有限公司 | 基于神经网络的关系抽取数据生成方法、模型及训练方法 |
CN111026937B (zh) * | 2019-11-13 | 2021-02-19 | 百度在线网络技术(北京)有限公司 | 提取poi名称的方法、装置、设备和计算机存储介质 |
WO2021097515A1 (en) * | 2019-11-20 | 2021-05-27 | Canva Pty Ltd | Systems and methods for generating document score adjustments |
CN111192602A (zh) * | 2019-12-03 | 2020-05-22 | 广州荔支网络技术有限公司 | 一种基于音频内容画像系统的白噪音音频内容价值评估方法 |
CN111026849B (zh) * | 2019-12-17 | 2023-09-19 | 北京百度网讯科技有限公司 | 数据处理方法和装置 |
CN111737559B (zh) * | 2020-05-29 | 2024-05-31 | 北京百度网讯科技有限公司 | 资源排序方法、训练排序模型的方法及对应装置 |
CN111667055A (zh) * | 2020-06-05 | 2020-09-15 | 北京百度网讯科技有限公司 | 用于搜索模型结构的方法和装置 |
CN112417133A (zh) * | 2020-11-25 | 2021-02-26 | 上海创米科技有限公司 | 排序模型的训练方法和装置 |
CN112487274B (zh) * | 2020-12-02 | 2023-02-07 | 重庆邮电大学 | 一种基于文本点击率的搜索结果推荐方法及系统 |
CN113094604B (zh) * | 2021-04-15 | 2022-05-03 | 支付宝(杭州)信息技术有限公司 | 搜索结果排序方法、搜索方法及装置 |
CN113344078B (zh) * | 2021-06-09 | 2022-11-04 | 北京三快在线科技有限公司 | 一种模型训练的方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7467131B1 (en) * | 2003-09-30 | 2008-12-16 | Google Inc. | Method and system for query data caching and optimization in a search engine system |
US8065310B2 (en) * | 2008-06-25 | 2011-11-22 | Microsoft Corporation | Topics in relevance ranking model for web search |
US8423538B1 (en) * | 2009-11-02 | 2013-04-16 | Google Inc. | Clustering query refinements by inferred user intent |
US9824138B2 (en) * | 2011-03-25 | 2017-11-21 | Orbis Technologies, Inc. | Systems and methods for three-term semantic search |
US9519859B2 (en) * | 2013-09-06 | 2016-12-13 | Microsoft Technology Licensing, Llc | Deep structured semantic model produced using click-through data |
US20170177729A1 (en) * | 2014-03-28 | 2017-06-22 | British Telecommunications Public Limited Company | Search engine and link-based ranking algorithm for the semantic web |
US9535960B2 (en) * | 2014-04-14 | 2017-01-03 | Microsoft Corporation | Context-sensitive search using a deep learning model |
CN104615767B (zh) * | 2015-02-15 | 2017-12-29 | 百度在线网络技术(北京)有限公司 | 搜索排序模型的训练方法、搜索处理方法及装置 |
CN104899322B (zh) * | 2015-06-18 | 2021-09-17 | 百度在线网络技术(北京)有限公司 | 搜索引擎及其实现方法 |
US10089576B2 (en) * | 2015-07-28 | 2018-10-02 | Microsoft Technology Licensing, Llc | Representation learning using multi-task deep neural networks |
US10606846B2 (en) * | 2015-10-16 | 2020-03-31 | Baidu Usa Llc | Systems and methods for human inspired simple question answering (HISQA) |
CN106339756B (zh) * | 2016-08-25 | 2019-04-02 | 北京百度网讯科技有限公司 | 训练数据的生成方法、搜索方法以及装置 |
US10803245B2 (en) * | 2016-09-06 | 2020-10-13 | Microsoft Technology Licensing, Llc | Compiling documents into a timeline per event |
-
2017
- 2017-05-26 CN CN201710385409.3A patent/CN107402954B/zh active Active
- 2017-09-01 US US15/694,689 patent/US11449767B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN107402954A (zh) | 2017-11-28 |
US11449767B2 (en) | 2022-09-20 |
US20180341866A1 (en) | 2018-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107402954B (zh) | 建立排序模型的方法、基于该模型的应用方法和装置 | |
US11182445B2 (en) | Method, apparatus, server, and storage medium for recalling for search | |
CN109815308B (zh) | 意图识别模型的确定及检索意图识别方法、装置 | |
CN110674429B (zh) | 用于信息检索的方法、装置、设备和计算机可读存储介质 | |
JP6266080B2 (ja) | 類似性スコアに基づきコンテンツアイテムと画像とのマッチングを評価する方法、およびシステム | |
KR101721338B1 (ko) | 검색 엔진 및 그의 구현 방법 | |
CN103678576B (zh) | 基于动态语义分析的全文检索系统 | |
US10810374B2 (en) | Matching a query to a set of sentences using a multidimensional relevancy determination | |
US20180189265A1 (en) | Learning entity and word embeddings for entity disambiguation | |
CN107526846B (zh) | 频道排序模型的生成、排序方法、装置、服务器和介质 | |
KR20170007747A (ko) | 자연어 이미지 검색 기법 | |
US10152478B2 (en) | Apparatus, system and method for string disambiguation and entity ranking | |
US9805120B2 (en) | Query selection and results merging | |
US20200265094A1 (en) | Methods, devices and media for providing search suggestions | |
CN106708929B (zh) | 视频节目的搜索方法和装置 | |
JP2013516022A (ja) | 検索提案のクラスタ化及び提示 | |
WO2017113592A1 (zh) | 模型生成方法、词语赋权方法、装置、设备及计算机存储介质 | |
US20110302156A1 (en) | Re-ranking search results based on lexical and ontological concepts | |
CN109376261B (zh) | 基于中级文本语义增强空间的模态独立检索方法和系统 | |
US10212240B2 (en) | Method for tracking content and electronic device using the same | |
US9928466B1 (en) | Approaches for annotating phrases in search queries | |
US20200065395A1 (en) | Efficient leaf invalidation for query execution | |
CN113988157A (zh) | 语义检索网络训练方法、装置、电子设备及存储介质 | |
JP5250009B2 (ja) | サジェスチョンクエリ抽出装置及び方法、並びにプログラム | |
Grey et al. | So you think you're an expert: Keyword searching vs. controlled subject headings |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |