CN112883232B - 一种资源搜索方法、装置及设备 - Google Patents
一种资源搜索方法、装置及设备 Download PDFInfo
- Publication number
- CN112883232B CN112883232B CN202110270773.1A CN202110270773A CN112883232B CN 112883232 B CN112883232 B CN 112883232B CN 202110270773 A CN202110270773 A CN 202110270773A CN 112883232 B CN112883232 B CN 112883232B
- Authority
- CN
- China
- Prior art keywords
- resource
- text
- embedded
- resource identifier
- searched
- 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
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000000605 extraction Methods 0.000 claims abstract description 103
- 239000013598 vector Substances 0.000 claims description 189
- 238000013528 artificial neural network Methods 0.000 claims description 55
- 238000012549 training Methods 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 18
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000001788 irregular Effects 0.000 abstract description 11
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000002790 cross-validation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/7867—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings
-
- 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/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/686—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title or artist information, time, location or usage information, user ratings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Library & Information Science (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种资源搜索方法、装置及设备,本方案中,利用预先训练的特征提取网络对待搜索文本提取嵌入特征,作为目标嵌入特征;将目标嵌入特征与预先存储的多个资源标识的嵌入特征进行匹配,将与目标嵌入特征相匹配的资源标识的嵌入特征对应的资源地址确定为搜索结果。嵌入特征可以表达待搜索文本及资源标识的语义,利用嵌入特征进行搜索,可以理解为通过语义进行搜索,即便用户输入的待搜索文本存在不规范的情况,通过语义搜索也能够搜索到匹配的资源标识,这样,减少了由于不规范的待搜索文本导致部分资源搜索不到的情况,提高了方案的召回率。
Description
技术领域
本发明涉及智能分析技术领域,特别是涉及一种资源搜索方法、装置及设备。
背景技术
目前,一些场景中需要进行资源搜索。例如,用户可以在视频网站中搜索想要观看的视频资源;用户可以在社交平台上搜索想要关注的话题资源等等。
以搜索视频资源为例来说,搜索方案通常包括:获取用户输入的待搜索文本;将待搜索文本与存储的视频资源的名称进行匹配,仅在待搜索文本与存储的视频资源的名称相同的情况下,将该视频名称对应的视频资源确定为搜索结果。
然而,上述方案中,仅在待搜索文本与视频名称相同的情况下,才能搜索到视频资源,然而用户输入的待搜索文本通常存在不规范的情况,如用户输入的待搜索文本会存在连续错字、文字顺序颠倒、输入名称为简称等情况,这些情况使得待搜索文本与存储的视频资源的名称不同,也就不能搜索到相应的视频资源。因此,这种搜索方案的召回率较低。
发明内容
本发明实施例的目的在于提供一种资源搜索方法、装置及设备,以提高搜索方案的召回率。具体技术方案如下:
为达到上述目的,本发明实施例提供了一种资源搜索方法,包括:
获取待搜索文本;
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,所述特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对所述神经网络的训练方向为:所述正向文本的嵌入特征与所述资源标识的嵌入特征的相似度升高,所述负向文本的嵌入特征与所述资源标识的嵌入特征的相似度降低;所述正向文本和所述资源标识的对应关系为:基于用户输入的搜索文本和所述用户的目标词的对应关系确定的;
在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,所述资源标识的嵌入特征为:利用所述特征提取网络对资源标识进行特征提取得到的;
将所述目标资源信息中的资源地址确定为搜索结果。
可选的,采用如下步骤获取所述资源标识及其对应的正向文本和负向文本:
获取搜索点击日志,所述搜索点击日志中包括:用户输入的历史搜索文本与所述用户所浏览资源的资源标识之间的对应关系;
针对所述搜索点击日志中的每个资源标识,建立该资源标识的三元组,所述三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,所述三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该资源标识对应的正向文本为:所述搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
可选的,所述利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征,包括:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息,包括:
针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
判断所述向量相似度是否大于相似度阈值;
若是,则将该份资源信息确定为目标资源信息。
可选的,所述利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征,包括:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息,包括:
针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
识别大于相似度阈值的向量相似度,作为目标相似度;
对所述目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
可选的,采用如下步骤训练所述神经网络:
获取资源标识、以及所述资源标识对应的正向文本和负向文本;
将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至神经网络,得到所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征;
利用损失函数,基于所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征,计算损失值;所述损失值表示第一相似度与第二相似度之间的差值,所述第一相似度为:所述正向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度,所述第二相似度为:所述负向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度;
判断所述损失函数是否收敛;
若否,则通过将所述损失值进行反向传播,更新神经网络的参数,然后返回执行所述将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至所述神经网络的步骤;
若是,则训练完成得到特征提取网络。
为达到上述目的,本发明实施例还提供了一种资源搜索装置,包括:
第一获取模块,用于获取待搜索文本;
特征提取模块,用于利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,所述特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对所述神经网络的训练方向为:所述正向文本的嵌入特征与所述资源标识的嵌入特征的相似度升高,所述负向文本的嵌入特征与所述资源标识的嵌入特征的相似度降低;所述正向文本和所述资源标识的对应关系为:基于用户输入的搜索文本和所述用户的目标词的对应关系确定的;
搜索模块,用于在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,所述资源标识的嵌入特征为:利用所述特征提取网络对资源标识进行特征提取得到的;
第一确定模块,用于将所述目标资源信息中的资源地址确定为搜索结果。
可选的,所述装置还包括:
第二获取模块,用于获取搜索点击日志,所述搜索点击日志中包括:用户输入的历史搜索文本与所述用户所浏览资源的资源标识之间的对应关系;
建立模块,用于针对所述搜索点击日志中的每个资源标识,建立该资源标识的三元组,所述三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,所述三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该标识对应的正向文本为:所述搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
可选的,所述特征提取模块,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块,包括:
第一计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
判断子模块,用于判断所述向量相似度是否大于相似度阈值;若是,则出发确定子模块;
第一确定子模块,用于将该份资源信息确定为目标资源信息。
可选的,所述特征提取模块,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块,包括:
第二计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
识别子模块,用于识别大于相似度阈值的向量相似度,作为目标相似度;
第二确定子模块,用于对所述目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
可选的,所述装置还包括:
第三获取模块,用于获取资源标识、以及所述资源标识对应的正向文本和负向文本;
输入模块,用于将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至神经网络,得到所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征;
计算模块,用于利用损失函数,基于所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征,计算损失值;所述损失值表示第一相似度与第二相似度之间的差值,所述第一相似度为:所述正向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度,所述第二相似度为:所述负向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度;
判断模块,用于判断所述损失函数是否收敛;若否,则触发更新模块;若是,则出发确定模块;
更新模块,用于通过将所述损失值进行反向传播,更新神经网络的参数,然后返回执行所述将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至所述神经网络的步骤;
第二确定模块,用于训练完成得到特征提取网络。
为达到上述目的,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一资源搜索方法。
应用本发明所示实施例,利用预先训练的特征提取网络对待搜索文本提取嵌入特征,作为目标嵌入特征;将目标嵌入特征与预先存储的多个资源标识的嵌入特征进行匹配,将与目标嵌入特征相匹配的资源标识的嵌入特征对应的资源地址确定为搜索结果。嵌入特征可以表达待搜索文本及资源标识的语义,利用嵌入特征进行搜索,可以理解为通过语义进行搜索,即便用户输入的待搜索文本存在不规范的情况,通过语义搜索也能够搜索到匹配的资源标识,这样,减少了由于不规范的待搜索文本导致部分资源搜索不到的情况,提高了方案的召回率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的资源搜索方法的第一种流程示意图;
图2为本发明实施例提供的一种神经网络的结构示意图;
图3为本发明实施例提供的一种神经网络的训练流程示意图;
图4为本发明实施例提供的一种具体实施方式的流程示意图;
图5为本发明实施例提供的一种具体实施方式的流程示意图;
图6为本发明实施例提供的资源搜索方法的第二种流程示意图;
图7为本发明实施例提供的一种资源搜索装置的结构示意图;
图8为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
为了达到上述目的,本发明实施例提供了一种资源搜索方法、装置及设备,该方法及装置可以应用于各种电子设备,具体不做限定。下面首先对资源搜索方法进行详细说明。
图1为本发明实施例提供的资源搜索方法的第一种流程示意图,包括:
S101:获取待搜索文本。
举例来说,可以搜索视频资源,如电视剧、电影、综艺节目等等;或者也可以搜索音频资源,如歌曲、广播等等。如果搜索的是视频资源,则待搜索文本可以为视频资源的全称、视频资源的简称、视频资源的关键字,等等,具体不做限定;如果搜索的是音频资源,则待搜索文本可以为音频资源的全称、音频资源的简称、音频资源的关键字,等等,具体不做限定。
S102:利用预先训练的特征提取网络对待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对神经网络的训练方向为:正向文本的嵌入特征与资源标识的嵌入特征的相似度升高,负向文本的嵌入特征与资源标识的嵌入特征的相似度降低;正向文本和资源标识的对应关系为:基于用户输入的搜索文本和用户的目标词的对应关系确定的。
举例来说,可以将待搜索文本输入至预先训练的特征提取网络,得到该特征提取网络输出的待搜索文本的嵌入特征,作为待搜索嵌入特征。
待训练的神经网络与训练完成后得到的特征提取网络的结构是相同的,训练过程可以理解为对神经网络中的参数进行迭代调整的过程。神经网络及特征提取网络的具体结构不做限定。
举例来说,参考图2所示,该神经网络中可以包括顺次连接的多头注意力层和自注意力层。对输入文本进行向量表达,得到输入向量1……输入向量n,其中,n为正整数,n与输入文本的字数相同;将输入向量1……输入向量n输入至多头注意力层,将多头注意力层的输出输入至自注意力层,得到输入文本的嵌入特征。
如上所述,以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到特征提取网络,下面参考图3介绍一种具体的训练方式,对这种实施方式进行介绍:
S301:获取搜索点击日志,搜索点击日志中包括:用户输入的历史搜索文本与用户所浏览资源的资源标识之间的对应关系。
举例来说,搜索点击日志可以理解为:记录用户输入的搜索文本与用户浏览资源的资源标识之间的对应关系的日志。资源标识可以为:资源的名称、资源的的名称的关键字,等等,具体资源标识不做限定。
资源标识为资源准确的名称或编号,而搜索文本为用户输入的,由于用户的输入问题,如打字错误、文本顺序颠倒、输入为简称等,会导致搜索文本和资源标识不一定相同。例如,若搜索点击日志的记录形式为:搜索文本-资源标识,那么若用户输入的搜索文本为“隐藏的角落”,而用户所浏览资源的资源标识为“隐秘的角落”,那么,可以将“隐藏的角落-隐秘的角落”确定为一组搜索点击对,并将这一搜索点击对记录在搜索点击日志中。搜索点击日志的记录形式不做限定。
下面介绍搜索点击日志的建立方式:
一种情况下,可以根据用户输入的搜索文本,在资源数据库中搜索与搜索文本相匹配的资源,并将相匹配的资源的资源标识以列表的形式呈现给用户,接收用户对呈现出的资源标识的点击指令,根据点击指令将用户点击的资源的资源标识确定为用户所浏览的资源的资源标识,记录该搜索文本与用户所浏览的资源的资源标识之间的对应关系,得到搜索点击日志。本发明实施例对具体资源数据库不做限定。
或者,一种情况下,也可以将相匹配的资源的资源标识呈现在不同的页面中,根据用户观看页面的观看时长,将观看时长最长的页面对应的资源的资源标识确定为用户所浏览的资源的资源标识,记录该搜索文本与用户所浏览的资源的资源标识之间的对应关系,得到搜索点击日志。
S302:针对搜索点击日志中的每个资源标识,建立该资源标识的三元组,三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该资源标识对应的正向文本为:搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
举例来说,可以将搜索点击日志中资源标识对应的历史搜索文本确定为该资源标识的正向文本。例如,若搜索点击日志的记录形式为:搜索文本-资源标识,那么,若搜索点击日志中记录了“隐藏的角落-隐秘的角落”这一搜索点击对,那么可以将“隐藏的角落”确定为“隐秘的角落”的正向文本。也就是说,若用户输入的搜索文本为“隐藏的角落”,用户点击的资源标识为“隐秘的角落”,那么,可以将“隐藏的角落”确定为“隐秘的角落”的正向文本。或者说,正向文本和资源标识的对应关系可以理解为:基于用户输入的搜索文本和用户的目标词的对应关系进行确定的。例如,若用户的目标词为“隐秘的角落”,而用户输入的搜索文本为“隐藏的角落”,这种情况下,在根据“隐藏的角落”进行搜索得到的文本中,可以确定用户的目标词“隐秘的角落”。确定用户的目标词的方式可以为将用户点击的文本确定为用户的目标词,或者也可以为根据用户观看文本的观看时长,将观看时长最长的文本确定为用户的目标词,等等,具体确定用户的目标词的方式不做限定。
举例来说,用户输入的搜索文本和用户的目标词是一一对应的,具体而言,若用户进行了两次输入,第一次输入的搜索文本为“隐藏的角落”,第二次输入的搜索文本为“他的名字”;若根据“隐藏的角落”进行搜索得到的文本为“隐秘的角落”与“角落生物”,而用户点击了“隐秘的角落”,那么可以确定用户的目标词为“隐秘的角落”,这样,可以确定搜索文本“隐藏的角落”与“隐秘的角落”具有对应关系,也就是说第一次的搜索文本“隐藏的角落”对应的目标词为“隐秘的角落”,可以将“隐藏的角落”确定为“隐秘的角落”的正向文本;若根据“他的名字”进行搜索得到的文本为“你的名字”与“他是谁”,而用户点击了“你的名字”,那么可以确定用户的目标词为“你的名字”,这样,可以确定搜索文本“他的名字”与“你的名字”具有对应关系,也就是说第二次的搜索文本“他的名字”对应的目标词为“你的名字”,可以将“他的名字”确定为“你的名字”的正向文本。
一种情况下,针对搜索点击日志中的每个资源标识,可以将历史搜索记录中的任一搜索文本确定为该资源标识的负向文本。
历史搜索记录可以理解为:在获取到本次待搜索文本之前,互联网中所有用户输入的全部历史搜索文本;或者也可以是在获取到本次待搜索文本之前,互联网中所有用户在预设时段内输入的历史搜索文本。具体预设时段不做限定。
或者,一种情况下,针对搜索点击日志中的每个资源标识,可以在历史搜索记录中剔除该资源标识对应的正向文本,再将余下的历史搜索记录中的任一搜索文本确定为该资源标识的负向文本。这样可以降低同一资源标识的正向文本和负向文本相同的可能性,降低了训练样本的冗余度,从而提高了后续训练神经网络的效率。
可以根据资源标识、资源标识对应的正向文本以及资源标识对应的负向文本,建立资源标识的三元组,三元组中包含了资源标识、资源标识对应的正向文本以及资源标识对应的负向文本之间的对应关系,三元组的结构可以为该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本。
S303:将资源标识、资源标识对应的正向文本以及资源标识对应的负向文本输入至神经网络,得到资源标识的嵌入特征、正向文本的嵌入特征以及负向文本的嵌入特征。
举例来说,嵌入特征可以理解为embedding(嵌入)向量,embedding向量可以对文本进行连续而稠密的表达,或者可以说embedding向量可以表达文本的语义。语义相近的文本对应的embedding向量的相似度高,而语义不同的文本对应的embedding向量的相似度低。
一种实施方式中,S303可以包括:将资源标识的三元组输入至神经网络,得到三元组中的资源标识的嵌入特征、资源标识对应的正向文本的嵌入特征和该资源标识对应的负向文本的嵌入特征。
S303中的输入输出可以理解为前向传播。神经网络的训练过程可以理解为参数的迭代更新过程,执行一次S303-S306即为迭代一次,或者说参数更新一次,满足损失函数收敛时,训练完成,训练完成后的神经网络即为特征提取网络。通过对神经网络的参数进行迭代更新,可以使正向文本的嵌入特征与资源标识的嵌入特征的相似度升高,使负向文本的嵌入特征与资源标识的嵌入特征的相似度降低。
S304:利用损失函数,基于资源标识的嵌入特征、正向文本的嵌入特征以及负向文本的嵌入特征,计算损失值。
损失值可以表示第一相似度与第二相似度之间的差值,第一相似度可以为:正向文本的嵌入特征与资源标识的嵌入特征之间的相似度,第二相似度可以为:负向文本的嵌入特征与资源标识的嵌入特征之间的相似度。
一种实施方式中,可以利用损失函数,基于资源标识的嵌入特征向量、正向文本的嵌入特征向量以及负向文本的嵌入特征向量,计算损失值。这种实施方式中,损失值也可以理解为向量距离的距离差,若将正向文本的嵌入特征向量与资源标识的嵌入特征向量之间的距离称作第一距离,将负向文本的嵌入特征向量与资源标识的嵌入特征向量之间的距离称作第二距离,那么,损失值可以表示第一距离和第二距离之间的距离差。
举例来说,可以利用Triplet Loss(三重态损失)函数,基于资源标识的嵌入特征向量、正向文本的嵌入特征向量以及负向文本的嵌入特征向量,计算损失值。具体损失函数不做限定。
可以利用如下算式计算Triplet Loss函数的损失值:
其中,L表示损失值,i表示资源标识的嵌入特征向量,j表示正向文本的嵌入特征向量,k表示负向文本的嵌入特征向量,Dij表示资源标识的嵌入特征向量与正向文本的嵌入特征向量之间的向量距离,Dik表示资源标识的嵌入特征向量与负向文本的嵌入特征向量之间的向量距离,m表示预先设定的Dij与Dik之间的最小差值,例如,m可以为大于零的实数,如0.5、1,等等,具体数值根据交叉验证实验确定。
S305:判断损失函数是否收敛。若否,可以执行S306;若是,可以执行S307。
S306:通过将损失值进行反向传播,更新神经网络的参数。
在更新神经网络的参数后,可以返回S303。
S307:得到特征提取网络。
训练得到的特征提取网络可以用于提取文本的嵌入特征。
S103:在预先存储的多份资源信息中,搜索与待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,资源标识的嵌入特征为:利用特征提取网络对资源标识进行特征提取得到的。
举例来说,针对资源数据库中的每个资源标识,可以将该资源标识输入至上述图3所示实施方式中训练得到的特征提取网络中,得到该资源标识的嵌入特征;将该资源标识的嵌入特征以及该资源标识对应的资源地址确定为一份资源信息,并进行存储。本发明实施例对具体资源数据库不做限定。
一种实施方式中,S103可以包括:针对预先存储的每份资源信息,计算待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;判断向量相似度是否大于相似度阈值;若是,则将该份资源信息确定为目标资源信息。
举例来说,可以计算待搜索嵌入特征向量与每份资源信息中的资源标识的嵌入特征向量的余弦相似度;若相似度阈值为0.8,那么若计算得到待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的余弦相似度为0.9,则该相似度大于相似度阈值,那么该份资源信息与待搜索嵌入特征相匹配,可以将该份资源信息确定为目标资源信息。相似度阈值可以为0.8、0.7,等等,具体相似度阈值不做限定;计算待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的相似度的方式有多种,比如,计算相似度可以为计算特征向量之间的余弦相似度、欧氏距离、均方差等,具体计算相似度的方式不做限定。
或者,一种实施方式中,S103可以包括:针对预先存储的每份资源信息,计算待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;识别大于相似度阈值的向量相似度,作为目标相似度;对目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
举例来说,可以计算待搜索嵌入特征向量与每份资源信息中的资源标识的嵌入特征向量的余弦相似度;在每份资源信息对应的相似度中,识别大于相似度阈值的相似度,作为目标相似度,若目标相似度包括:资源信息1对应的相似度、资源信息2对应的相似度、资源信息3对应的相似度,若资源信息1对应的相似度为0.8、资源信息2对应的相似度为0.9、资源信息3对应的相似度为0.7,那么对目标相似度由高到低进行排序,得到排序结果为资源信息2对应的相似度、资源信息1对应的相似度、资源信息3对应的相似度,可以根据排序结果,将排序结果中的前两个相似度对应资源信息确定为目标资源信息,也就是将资源信息2和资源信息1确定为目标资源信息。预设数量可以为1、2、3,等等,具体预设数量不做限定。
S104:将目标资源信息中的资源地址确定为搜索结果。
举例来说,上述一种实施方式中,将资源信息2和资源信息1确定为目标资源信息,那么,可以将资源信息2中的资源地址和资源信息1中的资源地址确定为搜索结果。资源地址的形式可以为:资源的链接、资源的入口,等等,具体资源地址的形式不做限定。之后,可以将搜索结果反馈给客户,例如,确定了搜索结果为资源信息1中的资源地址,那么,可以将该资源地址反馈给客户。
下面参考图4、图5,介绍一种具体实施方式:
图4中,将ALBUM(资源标识)、正QUERY(资源标识对应的正向文本)以及负QUERY(资源标识对应的负向文本)输入至神经网络,得到e_a(资源标识的嵌入特征向量)、e_q_pos(资源标识对应的正向文本的嵌入特征向量)、e_q_neg(资源标识对应的负向文本的嵌入特征向量),利用Triplet Loss(三重态损失函数),基于e_a、e_q_pos以及e_q_neg计算得到损失值;判断损失函数是否收敛,若否,则通过将损失值进行反向传播,更新神经网络的参数,并将资源标识、资源标识对应的正向文本以及资源标识对应的负向文本输入至更新参数后的神经网络;若是,则训练完成,得到特征提取网络。
图5中,资源标识1……资源标识n分别为预先存储的每份资源信息中的资源标识,分别将资源标识1……资源标识n,这n个资源标识输入至图4训练得到的特征提取网络,得到e_a_1(资源标识1的嵌入特征向量)……e_a_n(资源标识n的嵌入特征向量)这n个资源标识的嵌入特征向量;将待搜索文本输入至特征提取网络,得到e_q(待搜索文本的嵌入特征向量);分别计算e_q和n个嵌入特征向量之间的余弦相似度;判断相似度是否大于相似度阈值;若是,则可以将该相似度对应的资源信息中的资源地址确定为搜索结果。其中,n为任意正整数。
举例来说,若n为3,可以将资源标识1、资源标识2和资源标识3输入至图4训练得到的特征提取网络,得到e_a_1、e_a_2和e_a_3;将待搜索文本输入至特征提取网络,得到e_q;分别计算e_q与e_a_1、e_a_2和e_a_3的余弦相似度;若相似度阈值为0.8,若计算得到e_q与e_a_1的余弦相似度为0.7,e_q与e_a_2的余弦相似度为0.9,e_q与e_a_3的余弦相似度为0.85,那么可以将资源标识2对应的资源地址和资源标识3对应的资源地址确定为搜索结果,可以将资源标识2对应的资源地址和资源标识3对应的资源地址反馈给客户。
一些相关方案中,将与待搜索文本相同的资源标识对应的资源信息确定为搜索结果,然而用户输入的待搜索文本存在不规范的情况,如用户输入的待搜索文本会存在连续错字、文字顺序颠倒、输入名称为简称等问题,使得待搜索文本与资源标识不同,导致方案的召回率较低。召回率可以理解为查全率,表示查到的相关资源占全部相关资源的比例,也就是说,召回率越高,遗漏的相关资源越少;在本发明实施例中,召回率可以理解为:确定出的目标资源信息的数量和资源数据库中与待搜索文本相匹配的全部资源信息的数量之比,举例来说,若与待搜索文本相匹配的全部资源信息的数量为100条,确定出的目标资源信息的数量为70条,那么召回率为0.7(70÷100=0.7)。
应用本发明实施例,利用预先训练的特征提取网络对待搜索文本提取嵌入特征,作为目标嵌入特征;将目标嵌入特征与预先存储的多个资源标识的嵌入特征进行匹配,将与目标嵌入特征相匹配的资源标识的嵌入特征对应的资源地址确定为搜索结果。嵌入特征可以表达待搜索文本及资源标识的语义,利用嵌入特征进行搜索,可以理解为通过语义进行搜索,即便用户输入的待搜索文本存在不规范的情况,通过语义搜索也能够搜索到匹配的资源标识,这样,减少了由于不规范的待搜索文本导致部分资源搜索不到的情况,提高了方案的召回率。
图6为本发明实施例提供的资源搜索方法的第二种流程示意图,包括:
S601:获取搜索点击日志,搜索点击日志中包括:用户输入的历史搜索文本与用户所浏览资源的资源标识之间的对应关系。
举例来说,搜索点击日志可以理解为:记录用户输入的搜索文本与用户浏览资源的资源标识之间的对应关系的日志。资源标识可以为:资源的名称、资源的名称的关键字,等等,具体资源标识不做限定。
资源标识为资源准确的名称或名称的关键字,而搜索文本为用户输入的,由于用户的输入问题,如打字错误、文本顺序颠倒、输入为简称等,会导致搜索文本和资源标识不一定相同。例如,若搜索点击日志的记录形式为:搜索文本-资源标识,那么若用户输入的搜索文本为“隐藏的角落”,而用户所浏览资源的资源标识为“隐秘的角落”,那么,可以将“隐藏的角落-隐秘的角落”确定为一组搜索点击对,并将这一搜索点击对记录在搜索点击日志中。搜索点击日志的记录形式不做限定。
下面介绍搜索点击日志的建立方式:
一种情况下,可以根据用户输入的搜索文本,在资源数据库中搜索与搜索文本相匹配的资源,并将相匹配的资源的资源标识以列表的形式呈现给用户,接收用户对呈现出的资源标识的点击指令,根据点击指令将用户点击的资源的资源标识确定为用户所浏览的资源的资源标识,记录该搜索文本与用户所浏览的资源的资源标识之间的对应关系,得到搜索点击日志。本发明实施例对具体资源数据库不做限定。
或者,一种情况下,也可以将相匹配的资源的资源标识呈现在不同的页面中,根据用户观看页面的观看时长,将观看时长最长的页面对应的资源的资源标识确定为用户所浏览的资源的资源标识,记录该搜索文本与用户所浏览的资源的资源标识之间的对应关系,得到搜索点击日志。
S602:针对搜索点击日志中的每个资源标识,建立该资源标识的三元组,三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该资源标识对应的正向文本为:搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
举例来说,可以将搜索点击日志中资源标识对应的历史搜索文本确定为该资源标识的正向文本。例如,若搜索点击日志的记录形式为:搜索文本-资源标识,那么,若搜索点击日志中记录了“隐藏的角落-隐秘的角落”这一搜索点击对,那么可以将“隐藏的角落”确定为“隐秘的角落”的正向文本。也就是说,若用户输入的搜索文本为“隐藏的角落”,用户点击的资源标识为“隐秘的角落”,那么,可以将“隐藏的角落”确定为“隐秘的角落”的正向文本。或者说,正向文本和资源标识的对应关系可以理解为:基于用户输入的搜索文本和用户的目标词的对应关系进行确定的。例如,若用户的目标词为“隐秘的角落”,而用户输入的搜索文本为“隐藏的角落”,这种情况下,在根据“隐藏的角落”进行搜索得到的文本中,可以确定用户的目标词“隐秘的角落”。确定用户的目标词的方式可以为将用户点击的文本确定为用户的目标词,或者也可以为根据用户观看文本的观看时长,将观看时长最长的文本确定为用户的目标词,等等,具体确定用户的目标词的方式不做限定。
举例来说,用户输入的搜索文本和用户的目标词是一一对应的,具体而言,若用户进行了两次输入,第一次输入的搜索文本为“隐藏的角落”,第二次输入的搜索文本为“他的名字”;若根据“隐藏的角落”进行搜索得到的文本为“隐秘的角落”与“角落生物”,而用户点击了“隐秘的角落”,那么可以确定用户的目标词为“隐秘的角落”,这样,可以确定搜索文本“隐藏的角落”与“隐秘的角落”具有对应关系,也就是说第一次的搜索文本“隐藏的角落”对应的目标词为“隐秘的角落”,可以将“隐藏的角落”确定为“隐秘的角落”的正向文本;若根据“他的名字”进行搜索得到的文本为“你的名字”与“他是谁”,而用户点击了“你的名字”,那么可以确定用户的目标词为“你的名字”,这样,可以确定搜索文本“他的名字”与“你的名字”具有对应关系,也就是说第二次的搜索文本“他的名字”对应的目标词为“你的名字”,可以将“他的名字”确定为“你的名字”的正向文本。
一种情况下,针对搜索点击日志中的每个资源标识,可以将历史搜索记录中的任一搜索文本确定为该资源标识的负向文本。
历史搜索记录可以理解为:在获取到本次待搜索文本之前,互联网中所有用户输入的全部历史搜索文本;或者也可以是在获取到本次待搜索文本之前,互联网中所有用户在预设时段内输入的历史搜索文本。具体预设时段不做限定。
或者,一种情况下,针对搜索点击日志中的每个资源标识,可以在历史搜索记录中剔除该资源标识对应的正向文本,再将余下的历史搜索记录中的任一搜索文本确定为该资源标识的负向文本。这样可以降低同一资源标识的正向文本和负向文本相同的可能性,降低了训练样本的冗余度,从而提高了后续训练神经网络的效率。
可以根据资源标识、资源标识对应的正向文本以及资源标识对应的负向文本,建立资源标识的三元组,三元组中包含了资源标识、资源标识对应的正向文本以及资源标识对应的负向文本之间的对应关系,三元组的结构可以为该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本。
S603:将资源标识、资源标识对应的正向文本以及资源标识对应的负向文本输入至神经网络,得到资源标识的嵌入特征、正向文本的嵌入特征以及负向文本的嵌入特征。
举例来说,嵌入特征可以理解为embedding(嵌入)向量,embedding向量可以对文本进行连续而稠密的表达,或者可以说embedding向量可以表达文本的语义。语义相近的文本对应的embedding向量的相似度高,而语义不同的文本对应的embedding向量的相似度低。
一种实施方式中,S603可以包括:将资源标识、资源标识对应的正向文本以及资源标识对应的负向文本输入至神经网络,得到资源标识的嵌入特征向量、正向文本的嵌入特征向量以及负向文本的嵌入特征向量。
S603中的输入输出可以理解为前向传播。神经网络的训练过程可以理解为参数的迭代更新过程,执行一次S603-S606即为迭代一次,或者说参数更新一次,满足损失函数收敛时,训练完成,训练完成后的神经网络即为特征提取网络。通过对神经网络的参数进行迭代更新,可以使正向文本的嵌入特征与资源标识的嵌入特征的相似度升高,使负向文本的嵌入特征与资源标识的嵌入特征的相似度降低。
S604:利用损失函数,基于资源标识的嵌入特征、正向文本的嵌入特征以及负向文本的嵌入特征,计算损失值。
损失值可以表示第一相似度与第二相似度之间的差值,第一相似度可以为:正向文本的嵌入特征与资源标识的嵌入特征之间的相似度,第二相似度可以为:负向文本的嵌入特征与资源标识的嵌入特征之间的相似度。
一种实施方式中,可以利用损失函数,基于资源标识的嵌入特征向量、正向文本的嵌入特征向量以及负向文本的嵌入特征向量,计算损失值。这种实施方式中,损失值也可以理解为向量距离的距离差,若将正向文本的嵌入特征向量与资源标识的嵌入特征向量之间的距离称作第一距离,将负向文本的嵌入特征向量与资源标识的嵌入特征向量之间的距离称作第二距离,那么,损失值可以表示第一距离和第二距离之间的距离差。
举例来说,可以利用Triplet Loss(三重态损失)函数,基于资源标识的嵌入特征向量、正向文本的嵌入特征向量以及负向文本的嵌入特征向量,计算损失值。具体损失函数不做限定。
可以利用如下算式计算Triplet Loss函数的损失值:
其中,L表示损失值,i表示资源标识的嵌入特征向量,j表示正向文本的嵌入特征向量,k表示负向文本的嵌入特征向量,Dij表示资源标识的嵌入特征向量与正向文本的嵌入特征向量之间的向量距离,Dik表示资源标识的嵌入特征向量与负向文本的嵌入特征向量之间的向量距离,m表示预先设定的Dij与Dik之间的最小差值,例如,m可以为大于零的实数,如0.5、1,等等,具体数值根据交叉验证实验确定。
S605:判断损失函数是否收敛。若否,可以执行S606;若是,可以执行S607。
S606:通过将损失值进行反向传播,更新神经网络的参数。
在更新神经网络的参数后,可以返回S603。
S607:得到特征提取网络。
训练得到的特征提取网络可以用于提取文本的嵌入特征。
S608:获取待搜索文本;利用特征提取网络对待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量。
举例来说,可以搜索视频资源,如电视剧、电影、综艺节目等等;或者也可以搜索音频资源,如歌曲、广播等等。如果搜索的是视频资源,则待搜索文本可以为视频资源的全称、视频资源的简称、视频资源的关键字,等等,具体不做限定;如果搜索的是音频资源,则待搜索文本可以为音频资源的全称、音频资源的简称、音频资源的关键字,等等,具体不做限定。
举例来说,可以将待搜索文本输入至S607得到的特征提取网络,得到该特征提取网络输出的待搜索文本的嵌入特征向量,作为待搜索嵌入特征向量。
S609:针对预先存储的每份资源信息,计算待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,资源标识的嵌入特征向量为:利用特征提取网络对资源标识进行特征提取得到的。
举例来说,针对资源数据库中的每个资源标识,可以将该资源标识输入至S607得到的特征提取网络中,得到该资源标识的嵌入特征向量;将该资源标识的嵌入特征向量以及该资源标识对应的资源地址确定为一份资源信息,并进行存储。本发明实施例对具体资源数据库不做限定。
举例来说,可以计算待搜索嵌入特征向量与每份资源信息中的资源标识的嵌入特征向量的余弦相似度。计算待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的相似度的方式有多种,比如,计算相似度可以为计算特征向量之间的余弦相似度、欧氏距离、均方差等,具体计算相似度的方式不做限定。
S610:判断向量相似度是否大于相似度阈值。若是,可以执行S611。
举例来说,若相似度阈值为0.8,那么若计算得到待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的余弦相似度为0.9,则该相似度大于相似度阈值,可以执行S611。相似度阈值可以为0.8、0.7,等等,具体相似度阈值不做限定。
S611:将该向量相似度对应的资源信息确定为目标资源信息。
举例来说,若判定相似度大于相似度阈值,那么该相似度对应的资源信息与待搜索嵌入特征向量相匹配,可以将该相似度对应的资源信息确定为目标资源信息。例如,资源信息1的相似度大于相似度阈值,那么资源信息1与待搜索嵌入特征相匹配,可以将资源信息1确定为目标资源信息。
S612:将目标资源信息中的资源地址确定为搜索结果。
举例来说,上述一种实施方式中,将资源信息1确定为目标资源信息,那么,可以将资源信息1中的资源地址确定为搜索结果。资源地址的形式可以为:资源的链接、资源的入口,等等,具体资源地址的形式不做限定。之后,可以将搜索结果反馈给客户,例如,确定了搜索结果为资源信息1中的资源地址,那么,可以将该资源地址反馈给客户。
一些相关方案中,将与待搜索文本相同的资源标识对应的资源信息确定为搜索结果,然而用户输入的待搜索文本存在不规范的情况,如用户输入的待搜索文本会存在连续错字、文字顺序颠倒、输入名称为简称等问题,使得待搜索文本与资源标识不同,导致方案的召回率较低。召回率可以理解为查全率,表示查到的相关资源占全部相关资源的比例,也就是说,召回率越高,遗漏的相关资源越少;在本发明实施例中,召回率可以理解为:确定出的目标资源信息的数量和资源数据库中与待搜索文本相匹配的全部资源信息的数量之比,举例来说,若与待搜索文本相匹配的全部资源信息的数量为100条,确定出的目标资源信息的数量为70条,那么召回率为0.7(70÷100=0.7)。
应用本发明实施例,利用预先训练的特征提取网络对待搜索文本提取嵌入特征,作为目标嵌入特征;将目标嵌入特征与预先存储的多个资源标识的嵌入特征进行匹配,将与目标嵌入特征相匹配的资源标识的嵌入特征对应的资源地址确定为搜索结果。嵌入特征可以表达待搜索文本及资源标识的语义,利用嵌入特征进行搜索,可以理解为通过语义进行搜索,即便用户输入的待搜索文本存在不规范的情况,通过语义搜索也能够搜索到匹配的资源标识,这样,减少了由于不规范的待搜索文本导致部分资源搜索不到的情况,提高了方案的召回率。
与上述方法实施例相对应,本发明实施例还提供一种资源搜索装置的结构示意图,如图7所示,包括:
第一获取模块701,用于获取待搜索文本;
特征提取模块702,用于利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,所述特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对所述神经网络的训练方向为:所述正向文本的嵌入特征与所述资源标识的嵌入特征的相似度升高,所述负向文本的嵌入特征与所述资源标识的嵌入特征的相似度降低;所述正向文本和所述资源标识的对应关系为:基于用户输入的搜索文本和用户的目标词的对应关系确定的;
搜索模块703,用于在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,所述资源标识的嵌入特征为:利用所述特征提取网络对资源标识进行特征提取得到的;
第一确定模块704,用于将所述目标资源信息中的资源地址确定为搜索结果。
一种实施方式中,所述装置还包括:第二获取模块、建立模块(图中未示出),其中,
第二获取模块,用于获取搜索点击日志,所述搜索点击日志中包括:用户输入的历史搜索文本与用户所浏览资源的资源标识之间的对应关系;
建立模块,用于针对所述搜索点击日志中的每个资源标识,建立该资源标识的三元组,所述三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,所述三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该标识对应的正向文本为:所述搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
一种实施方式中,所述特征提取模块702,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块703,包括:第一计算子模块、判断子模块、第一确定子模块(图中未示出),其中,
第一计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
判断子模块,用于判断所述向量相似度是否大于相似度阈值;若是,则出发确定子模块;
第一确定子模块,用于将该份资源信息确定为目标资源信息。
一种实施方式中,所述特征提取模块702,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块703,包括:第二计算子模块、识别子模块、第二确定子模块(图中未示出),其中,
第二计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
识别子模块,用于识别大于相似度阈值的向量相似度,作为目标相似度;
第二确定子模块,用于对所述目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
一种实施方式中,所述装置还包括:第三获取模块、输入模块、计算模块、判断模块、更新模块、第二确定模块(图中未示出),其中,
第三获取模块,用于获取资源标识、以及所述资源标识对应的正向文本和负向文本;
输入模块,用于将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至神经网络,得到所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征;
计算模块,用于利用损失函数,基于所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征,计算损失值;所述损失值表示第一相似度与第二相似度之间的差值,所述第一相似度为:所述正向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度,所述第二相似度为:所述负向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度;
判断模块,用于判断所述损失函数是否收敛;若否,则触发更新模块;若是,则出发确定模块;
更新模块,用于通过将所述损失值进行反向传播,更新神经网络的参数,然后返回执行所述将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至所述神经网络的步骤;
第二确定模块,用于训练完成得到特征提取网络。
应用本发明实施例,利用预先训练的特征提取网络对待搜索文本提取嵌入特征,作为目标嵌入特征;将目标嵌入特征与预先存储的多个资源标识的嵌入特征进行匹配,将与目标嵌入特征相匹配的资源标识的嵌入特征对应的资源地址确定为搜索结果。嵌入特征可以表达待搜索文本及资源标识的语义,利用嵌入特征进行搜索,可以理解为通过语义进行搜索,即便用户输入的待搜索文本存在不规范的情况,通过语义搜索也能够搜索到匹配的资源标识,这样,减少了由于不规范的待搜索文本导致部分资源搜索不到的情况,提高了方案的召回率。
本发明实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现上述任意一种资源搜索方法。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一资源搜索方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一资源搜索方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机可读存储介质实施例、以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (9)
1.一种资源搜索方法,其特征在于,包括:
获取待搜索文本;
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,所述特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对所述神经网络的训练方向为:所述正向文本的嵌入特征与所述资源标识的嵌入特征的相似度升高,所述负向文本的嵌入特征与所述资源标识的嵌入特征的相似度降低;所述正向文本和所述资源标识的对应关系为:基于用户输入的搜索文本和所述用户的目标词的对应关系确定的;所述嵌入特征包括嵌入向量;所述嵌入向量表达文本的语义,文本之间语义的接近度与嵌入向量的相似度成正比;
在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,所述资源标识的嵌入特征为:利用所述特征提取网络对资源标识进行特征提取得到的;
将所述目标资源信息中的资源地址确定为搜索结果;
采用如下步骤训练所述神经网络:
获取资源标识、以及所述资源标识对应的正向文本和负向文本;
将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至神经网络,得到所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征;
利用损失函数,基于所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征,计算损失值;所述损失值表示第一相似度与第二相似度之间的差值,所述第一相似度为:所述正向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度,所述第二相似度为:所述负向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度;
判断所述损失函数是否收敛;
若否,则通过将所述损失值进行反向传播,更新神经网络的参数,然后返回执行所述将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至所述神经网络的步骤;
若是,则训练完成得到特征提取网络。
2.根据权利要求1所述的方法,其特征在于,采用如下步骤获取所述资源标识及其对应的正向文本和负向文本:
获取搜索点击日志,所述搜索点击日志中包括:用户输入的历史搜索文本与所述用户所浏览资源的资源标识之间的对应关系;
针对所述搜索点击日志中的每个资源标识,建立该资源标识的三元组,所述三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,所述三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该资源标识对应的正向文本为:所述搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
3.根据权利要求1所述的方法,其特征在于,所述利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征,包括:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息,包括:
针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
判断所述向量相似度是否大于相似度阈值;
若是,则将该份资源信息确定为目标资源信息。
4.根据权利要求1所述的方法,其特征在于,所述利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征,包括:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息,包括:
针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
识别大于相似度阈值的向量相似度,作为目标相似度;
对所述目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
5.一种资源搜索装置,其特征在于,包括:
第一获取模块,用于获取待搜索文本;
特征提取模块,用于利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征,作为待搜索嵌入特征;其中,所述特征提取网络为:以资源标识及其对应的正向文本和负向文本对预设结构的神经网络进行训练得到的,对所述神经网络的训练方向为:所述正向文本的嵌入特征与所述资源标识的嵌入特征的相似度升高,所述负向文本的嵌入特征与所述资源标识的嵌入特征的相似度降低;所述正向文本和所述资源标识的对应关系为:基于用户输入的搜索文本和所述用户的目标词的对应关系确定的;所述嵌入特征包括嵌入向量;所述嵌入向量表达文本的语义,文本之间语义的接近度与嵌入向量的相似度成正比;
搜索模块,用于在预先存储的多份资源信息中,搜索与所述待搜索嵌入特征相匹配的资源信息,作为目标资源信息;其中,一份资源信息中包括资源标识的嵌入特征和资源地址,所述资源标识的嵌入特征为:利用所述特征提取网络对资源标识进行特征提取得到的;
第一确定模块,用于将所述目标资源信息中的资源地址确定为搜索结果;
所述装置还包括:
第三获取模块,用于获取资源标识、以及所述资源标识对应的正向文本和负向文本;
输入模块,用于将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至神经网络,得到所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征;
计算模块,用于利用损失函数,基于所述资源标识的嵌入特征、所述正向文本的嵌入特征以及所述负向文本的嵌入特征,计算损失值;所述损失值表示第一相似度与第二相似度之间的差值,所述第一相似度为:所述正向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度,所述第二相似度为:所述负向文本的嵌入特征与所述资源标识的嵌入特征之间的相似度;
判断模块,用于判断所述损失函数是否收敛;若否,则触发更新模块;若是,则出发确定模块;
更新模块,用于通过将所述损失值进行反向传播,更新神经网络的参数,然后返回执行所述将所述资源标识、所述资源标识对应的正向文本以及所述资源标识对应的负向文本输入至所述神经网络的步骤;
第二确定模块,用于训练完成得到特征提取网络。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取搜索点击日志,所述搜索点击日志中包括:用户输入的历史搜索文本与所述用户所浏览资源的资源标识之间的对应关系;
建立模块,用于针对所述搜索点击日志中的每个资源标识,建立该资源标识的三元组,所述三元组中包括:该资源标识、该资源标识对应的正向文本和该资源标识对应的负向文本,所述三元组的结构为:该资源标识对应的正向文本-该资源标识-该资源标识对应的负向文本,该标识对应的正向文本为:所述搜索点击日志中该资源标识对应的历史搜索文本,该资源标识对应的负向文本为:历史搜索记录中的搜索文本。
7.根据权利要求5所述的装置,其特征在于,所述特征提取模块,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块,包括:
第一计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
判断子模块,用于判断所述向量相似度是否大于相似度阈值;若是,则出发确定子模块;
第一确定子模块,用于将该份资源信息确定为目标资源信息。
8.根据权利要求5所述的装置,其特征在于,所述特征提取模块,具体用于:
利用预先训练的特征提取网络对所述待搜索文本进行特征提取,得到嵌入特征向量,作为待搜索嵌入特征向量;
所述搜索模块,包括:
第二计算子模块,用于针对预先存储的每份资源信息,计算所述待搜索嵌入特征向量与该份资源信息中的资源标识的嵌入特征向量的向量相似度;其中,一份资源信息中包括资源标识的嵌入特征向量和资源地址,所述资源标识的嵌入特征向量为:利用所述特征提取网络对资源标识进行特征提取得到的;
识别子模块,用于识别大于相似度阈值的向量相似度,作为目标相似度;
第二确定子模块,用于对所述目标相似度进行排序,根据排序结果,将预设数量个目标相似度对应的资源信息确定为目标资源信息。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110270773.1A CN112883232B (zh) | 2021-03-12 | 2021-03-12 | 一种资源搜索方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110270773.1A CN112883232B (zh) | 2021-03-12 | 2021-03-12 | 一种资源搜索方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112883232A CN112883232A (zh) | 2021-06-01 |
CN112883232B true CN112883232B (zh) | 2024-07-19 |
Family
ID=76041654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110270773.1A Active CN112883232B (zh) | 2021-03-12 | 2021-03-12 | 一种资源搜索方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112883232B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112259101A (zh) * | 2020-10-19 | 2021-01-22 | 腾讯科技(深圳)有限公司 | 语音关键词识别方法、装置、计算机设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107357875B (zh) * | 2017-07-04 | 2021-09-10 | 北京奇艺世纪科技有限公司 | 一种语音搜索方法、装置及电子设备 |
CN111611452B (zh) * | 2020-05-22 | 2023-05-02 | 上海携程商务有限公司 | 搜索文本的歧义识别方法、系统、设备及存储介质 |
-
2021
- 2021-03-12 CN CN202110270773.1A patent/CN112883232B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112259101A (zh) * | 2020-10-19 | 2021-01-22 | 腾讯科技(深圳)有限公司 | 语音关键词识别方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112883232A (zh) | 2021-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10795939B2 (en) | Query method and apparatus | |
CN108280114B (zh) | 一种基于深度学习的用户文献阅读兴趣分析方法 | |
CN111797214A (zh) | 基于faq数据库的问题筛选方法、装置、计算机设备及介质 | |
US20130060769A1 (en) | System and method for identifying social media interactions | |
CN109189990B (zh) | 一种搜索词的生成方法、装置及电子设备 | |
US20100191758A1 (en) | System and method for improved search relevance using proximity boosting | |
KR20160144384A (ko) | 딥 러닝 모델을 이용한 상황 의존 검색 기법 | |
CN110991187A (zh) | 一种实体链接的方法、装置、电子设备及介质 | |
CN107577755B (zh) | 一种搜索方法 | |
CN110929125A (zh) | 搜索召回方法、装置、设备及其存储介质 | |
WO2018121198A1 (en) | Topic based intelligent electronic file searching | |
CN109190014B (zh) | 一种正则表达式生成方法、装置及电子设备 | |
CN113032589A (zh) | 多媒体文件推荐方法、装置、电子设备及可读存储介质 | |
US20140040297A1 (en) | Keyword extraction | |
CN113204953A (zh) | 基于语义识别的文本匹配方法、设备及设备可读存储介质 | |
CN112632261A (zh) | 智能问答方法、装置、设备及存储介质 | |
CN112836126A (zh) | 基于知识图谱的推荐方法、装置、电子设备及存储介质 | |
CN107193916B (zh) | 一种个性化多样化查询推荐方法及系统 | |
US11379527B2 (en) | Sibling search queries | |
WO2023029350A1 (zh) | 基于点击行为预测的信息推送方法及装置 | |
CN113656575B (zh) | 训练数据的生成方法、装置、电子设备及可读介质 | |
CN112765966B (zh) | 联想词去重方法及装置、计算机可读存储介质和电子设备 | |
CN114428910A (zh) | 资源推荐方法、装置、电子设备、产品及介质 | |
CN113946668A (zh) | 基于边缘节点的语义处理方法、系统、装置及存储介质 | |
Tang et al. | CaseGNN: Graph Neural Networks for Legal Case Retrieval with Text-Attributed Graphs |
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 |