CN110543600A - 基于神经网络的搜索排序方法、系统、设备和存储介质 - Google Patents
基于神经网络的搜索排序方法、系统、设备和存储介质 Download PDFInfo
- Publication number
- CN110543600A CN110543600A CN201910857240.6A CN201910857240A CN110543600A CN 110543600 A CN110543600 A CN 110543600A CN 201910857240 A CN201910857240 A CN 201910857240A CN 110543600 A CN110543600 A CN 110543600A
- Authority
- CN
- China
- Prior art keywords
- neural network
- search
- task
- model
- parameter
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 116
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000012549 training Methods 0.000 claims abstract description 25
- 238000004364 calculation method Methods 0.000 claims abstract description 16
- 238000005065 mining Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 61
- 238000005457 optimization Methods 0.000 claims description 31
- 239000013598 vector Substances 0.000 claims description 15
- 238000012163 sequencing technique Methods 0.000 claims description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 10
- 238000007418 data mining Methods 0.000 claims description 4
- 101100261000 Caenorhabditis elegans top-3 gene Proteins 0.000 abstract description 6
- 238000003062 neural network model Methods 0.000 abstract description 5
- 230000004913 activation Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000007781 pre-processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 230000003287 optical effect Effects 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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- 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/048—Activation functions
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/14—Travel agencies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于神经网络的搜索排序方法、系统、设备和存储介质,搜索排序方法包括以下步骤:对用户的搜索需求数据进行挖掘得到特征数据;将特征数据输入到搜索排序模型,进行前向计算,得到若干搜索目标及每个搜索目标对应的评分;根据评分对若干搜索目标进行排序,输出排序结果;其中,搜索排序模型在训练过程中任务之间的参数共享为有选择的参数共享。本发明提出的动态多任务搜索排序模型能够获得到更好的Top3命中指标。本发明中多任务的神经网络采用有选择的参数共享策略,解决了传统的多任务的神经网络的模型中由于网络层数较浅,不能够有效的学习到各领域的相关信息并进行充分共享的问题,进而提升了用户体验以及降低线上线下差异。
Description
技术领域
本发明属于人工智能领域,特别涉及一种基于神经网络的搜索排序方法、系统、设备和存储介质。
背景技术
在线上旅游场景的应用中,搜索排序的目的就是帮助用户快速的找到需要的旅游产品。从技术的角度来说,就是指将用户输入的关键词所匹配到的旅游产品中最符合用户需求的产品排在产品展示页面的最前端。
由于旅游等应用场景搜索需求的多样性和场景的复杂性,按照当前主流的搜索排序方法帮助用户快速找到需要的对象在线下线上测试结果差异较大,用户体验差,使得主流的搜索排序方法并不能够满足为用户提供优质服务的需求。如何进一步提升用户的体验,降低线上线下差异,提出新的搜索排序算法尤为重要。
发明内容
本发明要解决的技术问题是为了克服现有技术中主流的搜索排序方法帮助用户快速找到需要的对象在线下线上测试结果差异较大,用户体验差的缺陷,提供一种能够提高Top3命中指标进而提升用户体验以及降低线上线下差异的基于神经网络的搜索排序方法、系统、设备和存储介质。
本发明是通过下述技术方案来解决上述技术问题:
本发明提供了一种基于多任务的神经网络的搜索排序方法,包括以下步骤:
对用户的搜索需求数据进行挖掘得到特征数据;
将所述特征数据输入到基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个所述搜索目标对应的评分;
根据所述评分对若干所述搜索目标进行排序,输出排序结果;
其中,所述搜索排序模型在训练过程中任务之间的参数共享为有选择的参数共享。
本方案中,利用基于多任务的神经网络的搜索排序模型实现了一种搜索排序方法,利用任务之间的相关性使得主任务能够利用相关子任务中各领域的相关信息来提升自身任务的泛化效果,相比较于单任务模型而言,能够获得到更好的Top3命中指标,也就是搜索对象列表中前三个结果中包含用户所需要的对象与总的搜索次数的占比。本方案中,多任务的神经网络采用有选择的参数共享策略,任务之间的参数根据层之间进行共享,这种共享是有选择的,并不是全值共享,共享的参数是有选择的,可训练的,由此解决了传统的多任务的神经网络的模型中由于网络层数较浅,不能够有效的学习到各领域的相关信息并进行充分共享的问题,进而提升了用户的体验以及降低线上线下差异。
较佳地,所述任务之间的参数共享为有选择的参数共享为:
所述任务之间的参数共享是所述搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享。
本方案中,任务之间的参数共享是通过模型根据优化函数决定,具有自主学习能力,让模型自主决定哪些部分的信息对本身任务是有效的,哪些任务对自身任务是无帮助的或抑制作用的,这种共享是有选择的,并不是全值共享。
较佳地,所述优化函数为:
其中,n为正整数,n表示所述搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示所述神经网络待训练的参数;
t表示所述神经网络训练过程中的迭代次数;
表示任务i在所述神经网络迭代t次后的参数;
表示任务i在所述神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
较佳地,所述搜索排序方法还包括以下步骤:
生成所述基于多任务的神经网络的搜索排序模型;
所述生成所述基于多任务的神经网络的搜索排序模型的步骤包括:
将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到所述主任务的第一预测值ym以及所述相关子任务的第二预测值ye;其中,e为正整数,e表示所述相关子任务的数量;
根据所述第一预测值ym和对应的样本标签的真实值计算得到所述主任务的损失函数值,根据所述第二预测值ye和对应的样本标签的真实值计算得到每个所述相关子任务的损失函数值;
利用优化算法对所述主任务的损失函数值及全部所述相关子任务的损失函数值分别进行极小化优化,不断的相互迭代所述主任务的全连接神经网络和所述相关子任务的全连接神经网络,直到收敛,最终得到所述基于多任务的神经网络的搜索排序模型。
本方案进一步限定了基于多任务的神经网络的搜索排序模型的训练过程。样本的特征向量采用对历史数据进行离线挖掘得到样本对应的特征数据,然后进行预处理,得到样本的特征向量,对这些经过预处理过后的样本的特征向量作为多任务的神经网络的输入数据。神经网络的第一层为输入层,输入层的输入值为对样本进行预处理过后得到的样本的特征向量,在网络的最后一层为输出层,输出层内容不需使用激活函数激活;该结构由2~9层的全连接网络层组成,在各全连接层之间使用修正线性单元激活函数、sigmoid(神经网络中常用的一种激活函数)或Tanh激活函数等进行激活。在每一层中的神经网络的网络待训练参数,每个任务在训练过程中会同时受到其他任务的网络参数的影响,同时影响的大小是通过网络训练过程中学习得到的。利用基于SGD(Stochastic Gradient Descent,随机梯度下降法)或自适应矩估计优化算法,通过端到端的学习对神经网络进行优化,学习共享参数以及模型参数。
较佳地,所述第二预测值ye采用sigmoid激活得到pt,pt的计算公式如下:
所述相关子任务采用的损失函数如下:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重。
本方案采用改进版的交叉熵损失函数,解决了由于正负样本的不均衡所带来的模型的泛化效果较差以及最终得到的搜索结果不够理想导致用于体验较差的问题。
本发明还提供了一种基于多任务的神经网络的搜索排序系统,包括:
特征数据挖掘模块,用于对用户的搜索需求数据进行挖掘得到特征数据;
搜索评分执行模块,用于将所述特征数据输入到基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个所述搜索目标对应的评分;
排序输出模块,用于根据所述评分对若干所述搜索目标进行排序,输出排序结果;
其中,所述搜索排序模型在训练过程中任务之间的参数共享为有选择的参数共享。
较佳地,所述任务之间的参数共享为有选择的参数共享为:
所述任务之间的参数共享是所述搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享。
较佳地,所述优化函数为:
其中,n为正整数,n表示所述搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示所述神经网络待训练的参数;
t表示所述神经网络训练过程中的迭代次数;
表示任务i在所述神经网络迭代t次后的参数;
表示任务i在所述神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
较佳地,所述搜索排序系统还包括模型生成模块;
所述模型生成模块用于生成所述基于多任务的神经网络的搜索排序模型;
所述模型生成模块包括预测值生成单元、计算单元以及迭代单元;
所述预测值生成单元用于将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到所述主任务的第一预测值ym以及所述相关子任务的第二预测值ye;其中,e为正整数,e表示所述相关子任务的数量;
所述计算单元用于根据所述第一预测值ym和对应的样本标签的真实值计算得到所述主任务的损失函数值,根据所述第二预测值ye和对应的样本标签的真实值计算得到每个所述相关子任务的损失函数值;
所述迭代单元用于利用优化算法对所述主任务的损失函数值及全部所述相关子任务的损失函数值分别进行极小化优化,不断的相互迭代所述主任务的全连接神经网络和所述相关子任务的全连接神经网络,直到收敛,最终得到所述基于多任务的神经网络的搜索排序模型。
较佳地,所述第二预测值ye采用sigmoid激活得到pt,pt的计算公式如下:
所述相关子任务采用的损失函数如下:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重。
本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述的基于多任务的神经网络的搜索排序方法。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述的基于多任务的神经网络的搜索排序方法的步骤。
本发明的积极进步效果在于:本发明提供的基于神经网络的搜索排序方法、系统、设备和存储介质利用任务之间的相关性使得主任务能够利用子任务中领域相关信息来提升自身任务的泛化效果,相比较于单任务模型而言,本发明提出的多任务搜索排序模型为动态多任务搜索排序模型,能够获得到更好的Top3命中指标。本发明中多任务的神经网络采用有选择的参数共享策略,任务之间的参数根据层之间进行共享,这种共享是有选择的,并不是全值共享,共享的参数是有选择的,可训练的,由此解决了传统的多任务的神经网络的模型中由于网络层数较浅,不能够有效的学习到各领域的相关信息并进行充分共享的问题,进而提升了用户体验以及降低了线上线下差异。
附图说明
图1为本发明实施例1的基于多任务的神经网络的搜索排序方法的流程图。
图2为本发明实施例1中基于多任务的神经网络的搜索排序模型的结构示意图。
图3为本发明实施例1中步骤101的流程图。
图4为本发明实施例2的基于多任务的神经网络的搜索排序系统的模块示意图。
图5为本发明实施例2中模型生成模块的结构示意图。
图6为本发明实施例3的电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
如图1所示,本实施例提供了一种基于多任务的神经网络的搜索排序方法,包括以下步骤:
步骤101、生成如图2所示的基于多任务的神经网络的搜索排序模型。
其中多任务包括主任务和包括若干子任务的子任务集,最终用到的相关子任务从子任务集中选择得到。该搜索排序模型内部的神经网络中包括隐含节点和输出节点。
步骤102、对用户的搜索需求数据进行挖掘得到特征数据。
其中特征数据包括用户特征数据和产品特征数据,存储在数据库中。
步骤103、将步骤102得到的特征数据输入到步骤101生成的基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个搜索目标对应的评分。
步骤104、根据步骤103得到的评分对若干搜索目标进行排序,输出排序结果。
其中,步骤104在具体实施时可以对搜索目标例如产品的评分按分值从大到小进行排序,产品分值越高,说明模型判别该产品与用户的搜索需求越契合,根据排序结果将产品列表展示给用户。
由于搜索排序推荐模型的神经网络结构的层数一般较浅,在传统的多任务学习中,网络层数较浅导致不能够有效的学习到各领域的相关信息并进行充分共享。另外,在传统的多任务的神经网络模型中,各任务之间的参数是无选择的、完全的共享。本发明中采用有选择的参数共享策略,任务之间的参数是模型根据优化函数进行自主学习得到。在动态多任务的神经网络之间,任务之间的参数根据层之间进行共享,但是这种共享是有选择的,并不是全值共享,共享的参数是有选择的,可训练的。其中,任务之间的参数共享是搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享,也就是说,任务之间的参数共享,是通过模型根据优化函数决定,具有自主学习能力,让模型自主决定哪些部分的信息对本身任务是有效的,哪些任务对自身任务是无帮助的或抑制作用的。具体采用的优化函数表示如下:
其中,n表示搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示搜索排序模型中的神经网络的待训练的参数;
t表示搜索排序模型中的神经网络训练过程中的迭代次数;
表示任务i在搜索排序模型中的神经网络迭代t次后的参数;
表示任务i在搜索排序模型中的神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
本实施例中,如图3所示,步骤101包括以下步骤:
步骤1011、对离线挖掘到的特征数据进行预处理,预处理包括缺失值填充、连续值离散化处理、类别值编码处理,再将处理过后的值进行归一化处理,最终得到m个样本的特征向量。
其中,离线挖掘到的特征数据来源于历史数据,历史数据组成样本数据。
步骤1012、将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到主任务的第一预测值ym以及相关子任务的第二预测值ye;其中,e表示相关子任务的数量。
步骤1013、根据第一预测值ym和对应的样本标签的真实值计算得到主任务的损失函数值,根据第二预测值ye和对应的样本标签的真实值计算得到每个相关子任务的损失函数值。
其中,每个样本数据来源于历史数据,都有对应的样本标签的真实值。
步骤1014、利用自适应矩估计优化算法对主任务的损失函数值及全部相关子任务的损失函数值分别进行极小化优化,不断的相互迭代主任务的全连接神经网络和相关子任务的全连接神经网络,直到收敛,最终得到基于多任务的神经网络的搜索排序模型。
其中,步骤1014中也可以采用基于SGD随机梯度下降的优化算法进行极小化优化处理。
其中,主任务采用的损失函数如下:
Lm(pkl)={-p′kllog(pkl)-(1-p′kl)log(1-pkl)}·|ΔNDCG|。
其中,k表示第k个样本,l表示第l个样本,pkl表示的是第k个样本排序排在第l个样本前面的概率,NDCG(Normalized Discounted Cummulative Gain)表示归一化折损累积增益。
其中子任务集的损失函数需要根据具体任务来确定。如果使用的任务是对用户是否进行预测,是一个二分类问题,采用对子任务的第二预测值ye进行sigmoid激活得到pt,pt的计算公式如下:
同时对于正负样本不均衡的情况,采用改进版的交叉熵损失函数,具体地,相关子任务采用的损失函数为:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重,二者均为根据具体的任务预设的超参数。
同时,本实施例中还使用排序的回归子任务,该任务的损失函数表示为:Lmse=(ye-y)2,其中Lmse表示均方误差损失函数。
本发明中,限定了基于多任务的神经网络的搜索排序模型的训练过程。样本的特征向量采用对历史数据进行离线挖掘得到样本对应的特征数据,然后进行预处理,预处理包括缺失值填充,连续值离散化处理,类别值编码处理,再将处理过后的值进行归一化处理,得到样本的特征向量,对这些经过预处理过后的样本的特征向量作为多任务的神经网络的输入数据。主体神经网络的结构模型采用金字塔结构,神经网络的第一层为输入层,输入层的输入值为对样本进行预处理过后得到的样本的特征向量,在网络的最后一层为输出层,输出层内容不需使用激活函数激活;该结构由2~9层的全连接网络层组成,在各全连接层之间使用修正线性单元激活函数、sigmoid或Tanh激活函数等进行激活。在每一层中的神经网络的网络待训练参数,每个任务在训练过程中会同时受到其他任务的网络参数的影响,同时影响的大小是通过网络训练过程中学习得到的。利用基于SGD随机梯度下降法或自适应矩估计优化算法,通过端到端的学习对神经网络进行优化,学习共享参数以及模型参数。
本实施例中,对于每一层中的神经网络的网络待训练参数,每个任务在训练过程中会同时受到其他任务的网络参数的影响,同时影响的大小是在网络训练过程中学习到的。
本实施例中,采用改进版的交叉熵损失函数,解决了由于正负样本的不均衡所带来的模型的泛化效果较差以及最终得到的搜索结果不够理想导致用于体验较差的问题。
本实施例提供的基于多任务的神经网络的搜索排序方法,利用任务之间的相关性,让主任务共享子任务的特征表征,提高任务的泛化效果,让模型将最符合用户需求的搜索目标即产品展示在用户搜索页面的最前端,保障用户的搜索体验,为用户提供优质服务。
本实施例提供的基于多任务的神经网络的搜索排序方法应用到出发地跟团游产品搜索中使用时,搜索排序模型利用任务之间的相关性使得主任务能够利用子任务中领域相关信息来提升自身任务的泛化效果,相比较于单任务模型而言,本发明提出的动态多任务的搜索排序模型能够获得到更好的Top 3命中指标。
实施例2
如图4所示,本实施例提供了一种基于多任务的神经网络的搜索排序系统,包括模型生成模块1、特征数据挖掘模块2、搜索评分执行模块3和排序输出模块4。
模型生成模块1用于生成基于多任务的神经网络的搜索排序模型。
特征数据挖掘模块2用于对用户的搜索需求数据进行挖掘得到特征数据。
搜索评分执行模块3用于将特征数据输入到基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个所述搜索目标对应的评分。
排序输出模块4用于根据评分对若干搜索目标进行排序,输出排序结果。
其中,任务之间的参数共享是搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享。优化函数表示如下:
其中,n表示所述搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示所述神经网络待训练的参数;
t表示所述神经网络训练过程中的迭代次数;
表示任务i在所述神经网络迭代t次后的参数;
表示任务i在所述神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
如图5所示,本实施例中,模型生成模块1包括预测值生成单元11、计算单元12以及迭代单元13。
预测值生成单元11用于将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到主任务的第一预测值ym以及相关子任务的第二预测值ye;其中,e表示相关子任务的数量。
计算单元12用于根据第一预测值ym和对应的样本标签的真实值计算得到主任务的损失函数值,根据第二预测值ye和对应的样本标签的真实值计算得到每个相关子任务的损失函数值。
迭代单元13用于利用自适应矩估计优化算法对主任务的损失函数值及全部相关子任务的损失函数值分别进行极小化优化,不断的相互迭代主任务的全连接神经网络和相关子任务的全连接神经网络,直到收敛,最终得到基于多任务的神经网络的搜索排序模型。
本实施例中,第二预测值ye采用sigmoid激活得到pt,pt的计算公式如下:
相关子任务采用的损失函数如下:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重。
本发明提供的基于多任务的神经网络的搜索排序系统利用任务之间的相关性使得主任务能够利用子任务中领域相关信息来提升自身任务的泛化效果,相比较于单任务模型而言,本发明提出的动态多任务搜索排序模型能够获得到更好的Top3命中指标。本发明中多任务的神经网络采用有选择的参数共享策略,任务之间的参数根据层之间进行共享,这种共享是有选择的,并不是全值共享,共享的参数是有选择的,可训练的,由此解决了传统的多任务的神经网络的模型中由于网络层数较浅,不能够有效的学习到各领域的相关信息并进行充分共享的问题,进而提升了用户体验并降低线上线下差异。
实施例3
图6为本发明实施例3提供的一种电子设备的结构示意图。所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现实施例1所提供的基于多任务的神经网络的搜索排序方法。图6显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
总线33包括数据总线、地址总线和控制总线。
存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。
存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1所提供的基于多任务的神经网络的搜索排序方法。
电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例4
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1所提供的基于多任务的神经网络的搜索排序方法的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1所提供的基于多任务的神经网络的搜索排序方法中的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (12)
1.一种基于多任务的神经网络的搜索排序方法,其特征在于,包括以下步骤:
对用户的搜索需求数据进行挖掘得到特征数据;
将所述特征数据输入到基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个所述搜索目标对应的评分;
根据所述评分对若干所述搜索目标进行排序,输出排序结果;
其中,所述搜索排序模型在训练过程中任务之间的参数共享为有选择的参数共享。
2.如权利要求1所述的基于多任务的神经网络的搜索排序方法,其特征在于,所述任务之间的参数共享为有选择的参数共享为:
所述任务之间的参数共享是所述搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享。
3.如权利要求2所述的基于多任务的神经网络的搜索排序方法,其特征在于,所述优化函数为:
其中,n为正整数,n表示所述搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示所述神经网络待训练的参数;
t表示所述神经网络训练过程中的迭代次数;
表示任务i在所述神经网络迭代t次后的参数;
表示任务i在所述神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
4.如权利要求1所述的基于多任务的神经网络的搜索排序方法,其特征在于,所述搜索排序方法还包括以下步骤:
生成所述基于多任务的神经网络的搜索排序模型;
所述生成所述基于多任务的神经网络的搜索排序模型的步骤包括:
将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到所述主任务的第一预测值ym以及所述相关子任务的第二预测值ye;其中,e为正整数,e表示所述相关子任务的数量;
根据所述第一预测值ym和对应的样本标签的真实值计算得到所述主任务的损失函数值,根据所述第二预测值ye和对应的样本标签的真实值计算得到每个所述相关子任务的损失函数值;
利用优化算法对所述主任务的损失函数值及全部所述相关子任务的损失函数值分别进行极小化优化,不断的相互迭代所述主任务的全连接神经网络和所述相关子任务的全连接神经网络,直到收敛,最终得到所述基于多任务的神经网络的搜索排序模型。
5.如权利要求4所述的基于多任务的神经网络的搜索排序方法,其特征在于,所述第二预测值ye采用sigmoid激活得到pt,pt的计算公式如下:
所述相关子任务采用的损失函数如下:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重。
6.一种基于多任务的神经网络的搜索排序系统,其特征在于,包括:
特征数据挖掘模块,用于对用户的搜索需求数据进行挖掘得到特征数据;
搜索评分执行模块,用于将所述特征数据输入到基于多任务的神经网络的搜索排序模型,进行前向计算,得到若干搜索目标及每个所述搜索目标对应的评分;
排序输出模块,用于根据所述评分对若干所述搜索目标进行排序,输出排序结果;
其中,所述搜索排序模型在训练过程中任务之间的参数共享为有选择的参数共享。
7.如权利要求6所述的基于多任务的神经网络的搜索排序系统,其特征在于,所述任务之间的参数共享为有选择的参数共享为:
所述任务之间的参数共享是所述搜索排序模型在训练过程中根据优化函数进行自主学习实现的有选择的参数共享。
8.如权利要求7所述的基于多任务的神经网络的搜索排序系统,其特征在于,所述优化函数为:
其中,n为正整数,n表示所述搜索排序模型所包括的任务的数量;
i和j均为正整数,取值范围为1到n;
W表示所述神经网络待训练的参数;
t表示所述神经网络训练过程中的迭代次数;
表示任务i在所述神经网络迭代t次后的参数;
表示任务i在所述神经网络迭代t+1次后的参数;
是指更新时所有其它任务对任务i的参数贡献量,其中,表示任务j对任务i的参数贡献量的程度,取值范围为0~1,表示任务i和任务j的共享参数。
9.如权利要求6所述的基于多任务的神经网络的搜索排序系统,其特征在于,所述搜索排序系统还包括模型生成模块;
所述模型生成模块用于生成所述基于多任务的神经网络的搜索排序模型;
所述模型生成模块包括预测值生成单元、计算单元以及迭代单元;
所述预测值生成单元用于将m个样本的特征向量输入至主任务和若干个相关子任务的全连接神经网络,经前向运算得到所述主任务的第一预测值ym以及所述相关子任务的第二预测值ye;其中,e为正整数,e表示所述相关子任务的数量;
所述计算单元用于根据所述第一预测值ym和对应的样本标签的真实值计算得到所述主任务的损失函数值,根据所述第二预测值ye和对应的样本标签的真实值计算得到每个所述相关子任务的损失函数值;
所述迭代单元用于利用优化算法对所述主任务的损失函数值及全部所述相关子任务的损失函数值分别进行极小化优化,不断的相互迭代所述主任务的全连接神经网络和所述相关子任务的全连接神经网络,直到收敛,最终得到所述基于多任务的神经网络的搜索排序模型。
10.如权利要求9所述的基于多任务的神经网络的搜索排序系统,其特征在于,所述第二预测值ye采用sigmoid激活得到pt,pt的计算公式如下:
所述相关子任务采用的损失函数如下:
FL(pt)=-βt(1-pt)γ·log(pt);
其中,γ表示聚焦参数,βt表示用于控制正负样本对总损失的共享权重。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述的基于多任务的神经网络的搜索排序方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5任一项所述的基于多任务的神经网络的搜索排序方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910857240.6A CN110543600A (zh) | 2019-09-11 | 2019-09-11 | 基于神经网络的搜索排序方法、系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910857240.6A CN110543600A (zh) | 2019-09-11 | 2019-09-11 | 基于神经网络的搜索排序方法、系统、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110543600A true CN110543600A (zh) | 2019-12-06 |
Family
ID=68713236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910857240.6A Pending CN110543600A (zh) | 2019-09-11 | 2019-09-11 | 基于神经网络的搜索排序方法、系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543600A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325338A (zh) * | 2020-02-12 | 2020-06-23 | 暗物智能科技(广州)有限公司 | 神经网络结构评价模型构建和神经网络结构搜索方法 |
CN111460101A (zh) * | 2020-03-30 | 2020-07-28 | 广州视源电子科技股份有限公司 | 知识点类型的识别方法、装置及处理器 |
CN111612134A (zh) * | 2020-05-20 | 2020-09-01 | 鼎富智能科技有限公司 | 神经网络结构搜索方法、装置、电子设备及存储介质 |
CN112328646A (zh) * | 2021-01-04 | 2021-02-05 | 平安科技(深圳)有限公司 | 多任务课程推荐方法、装置、计算机设备及存储介质 |
CN113761084A (zh) * | 2020-06-03 | 2021-12-07 | 北京四维图新科技股份有限公司 | 一种poi搜索排序模型训练方法、排序装置与方法及介质 |
CN114117253A (zh) * | 2021-11-19 | 2022-03-01 | 北京达佳互联信息技术有限公司 | 群组搜索方法、装置、设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108657A (zh) * | 2017-11-16 | 2018-06-01 | 浙江工业大学 | 一种基于多任务深度学习的修正局部敏感哈希车辆检索方法 |
CN108921013A (zh) * | 2018-05-16 | 2018-11-30 | 浙江零跑科技有限公司 | 一种基于深度神经网络的视觉场景识别系统及方法 |
CN109033140A (zh) * | 2018-06-08 | 2018-12-18 | 北京百度网讯科技有限公司 | 一种确定搜索结果的方法、装置、设备和计算机存储介质 |
CN109903099A (zh) * | 2019-03-12 | 2019-06-18 | 合肥工业大学 | 用于评分预测的模型构建方法和系统 |
-
2019
- 2019-09-11 CN CN201910857240.6A patent/CN110543600A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108657A (zh) * | 2017-11-16 | 2018-06-01 | 浙江工业大学 | 一种基于多任务深度学习的修正局部敏感哈希车辆检索方法 |
CN108921013A (zh) * | 2018-05-16 | 2018-11-30 | 浙江零跑科技有限公司 | 一种基于深度神经网络的视觉场景识别系统及方法 |
CN109033140A (zh) * | 2018-06-08 | 2018-12-18 | 北京百度网讯科技有限公司 | 一种确定搜索结果的方法、装置、设备和计算机存储介质 |
CN109903099A (zh) * | 2019-03-12 | 2019-06-18 | 合肥工业大学 | 用于评分预测的模型构建方法和系统 |
Non-Patent Citations (2)
Title |
---|
ZHAO CHEN等: "GradNorm:Gradient Normalization for Adptive Loss Balancing in Deep Multitask Networks", 《RESEARCHGETE: HTTPS://WWW.RESEARCHGATE.NET/PUBLICATION/320920333》 * |
程虓: "多任务学习技术在混合推荐中的应用研究与实现", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325338A (zh) * | 2020-02-12 | 2020-06-23 | 暗物智能科技(广州)有限公司 | 神经网络结构评价模型构建和神经网络结构搜索方法 |
CN111460101A (zh) * | 2020-03-30 | 2020-07-28 | 广州视源电子科技股份有限公司 | 知识点类型的识别方法、装置及处理器 |
CN111460101B (zh) * | 2020-03-30 | 2023-09-15 | 广州视源电子科技股份有限公司 | 知识点类型的识别方法、装置及处理器 |
CN111612134A (zh) * | 2020-05-20 | 2020-09-01 | 鼎富智能科技有限公司 | 神经网络结构搜索方法、装置、电子设备及存储介质 |
CN111612134B (zh) * | 2020-05-20 | 2024-04-12 | 鼎富智能科技有限公司 | 神经网络结构搜索方法、装置、电子设备及存储介质 |
CN113761084A (zh) * | 2020-06-03 | 2021-12-07 | 北京四维图新科技股份有限公司 | 一种poi搜索排序模型训练方法、排序装置与方法及介质 |
CN113761084B (zh) * | 2020-06-03 | 2023-08-08 | 北京四维图新科技股份有限公司 | 一种poi搜索排序模型训练方法、排序装置与方法及介质 |
CN112328646A (zh) * | 2021-01-04 | 2021-02-05 | 平安科技(深圳)有限公司 | 多任务课程推荐方法、装置、计算机设备及存储介质 |
CN114117253A (zh) * | 2021-11-19 | 2022-03-01 | 北京达佳互联信息技术有限公司 | 群组搜索方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110543600A (zh) | 基于神经网络的搜索排序方法、系统、设备和存储介质 | |
Li | Reinforcement learning applications | |
US20210390653A1 (en) | Learning robotic tasks using one or more neural networks | |
Dong et al. | Task scheduling based on deep reinforcement learning in a cloud manufacturing environment | |
KR102208989B1 (ko) | 강화 학습을 통한 디바이스 배치 최적화 | |
US10860928B2 (en) | Generating output data items using template data items | |
US20240303494A1 (en) | Method for few-shot unsupervised image-to-image translation | |
EP3568811A1 (en) | Training machine learning models | |
CN111860649A (zh) | 基于多智能体强化学习的动作集合输出方法及系统 | |
US20230351750A1 (en) | Video classification method and server | |
US20240029436A1 (en) | Action classification in video clips using attention-based neural networks | |
US9852177B1 (en) | System and method for generating automated response to an input query received from a user in a human-machine interaction environment | |
US11010664B2 (en) | Augmenting neural networks with hierarchical external memory | |
US10860895B2 (en) | Imagination-based agent neural networks | |
CN109948807A (zh) | 一种主动学习方法及装置 | |
US20200327450A1 (en) | Addressing a loss-metric mismatch with adaptive loss alignment | |
CN110297885B (zh) | 实时事件摘要的生成方法、装置、设备及存储介质 | |
CN111461345A (zh) | 深度学习模型训练方法及装置 | |
EP4150533A1 (en) | Task-aware recommendation of hyperparameter configurations | |
CN114186084A (zh) | 在线多模态哈希检索方法、系统、存储介质及设备 | |
US20230107409A1 (en) | Ensembling mixture-of-experts neural networks | |
CN111008689B (zh) | 使用softmax近似来减少神经网络推理时间 | |
Sankararaman et al. | Bayesformer: Transformer with uncertainty estimation | |
CN115048560B (zh) | 一种数据处理方法及相关装置 | |
Chen et al. | Enhancing visual question answering through ranking-based hybrid training and multimodal fusion |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191206 |
|
RJ01 | Rejection of invention patent application after publication |