CN105224959A - 排序模型的训练方法和装置 - Google Patents
排序模型的训练方法和装置 Download PDFInfo
- Publication number
- CN105224959A CN105224959A CN201510733085.9A CN201510733085A CN105224959A CN 105224959 A CN105224959 A CN 105224959A CN 201510733085 A CN201510733085 A CN 201510733085A CN 105224959 A CN105224959 A CN 105224959A
- Authority
- CN
- China
- Prior art keywords
- search
- order
- user
- order models
- clicking rate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种排序模型的训练方法和装置,其中的方法包括:根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。本发明实施例可以在用户行为偏好发生变化时能够自动调整模型参数以适应用户的点击行为,相对于现有技术需要重新构建数据集,可以提高训练模型参数的效率。
Description
技术领域
本发明涉及网络技术领域,特别是涉及一种排序模型的训练方法和装置。
背景技术
随着互联网应用的发展,搜索处理技术已经成为互联网最主要的应用之一。例如,搜索引擎可以根据用户输入的关键词搜索得到符合该关键词特征的所有网页,再根据排序模型对搜索结果进行排序,最后以超级链接的方式向用户展示排序后的搜索结果,用户点击相应的链接就可以进入相应的网络资源网站,从而找到所需信息。然而,上述搜索到的结果通常数以百万计,通过排序模型将内容最相关的搜索结果排在前面,因此,如何对排序模型中的参数进行训练,以优化排序模型,从而得到更加符合用户需求的排序结果,一直是学术界和工业界的研究热点。
目前,通常采用基于规则的方法或者基于机器学习的方法对排序模型进行训练。其中,基于规则的方法,即通过线上AB测试,人工调整模型参数,该方法需要耗费大量的人力、时间来确定模型参数,由于训练成本太高,使得获取的模型参数很难达到最优;此外,在用户行为发生变化时,需要重新训练模型参数,导致训练模型参数的效率较低。
而基于机器学习的方法,可以不借助于人工调整模型参数,而是自动训练模型参数,该方法称为LTR(LearningToRank,学习排序)。具体地,LTR通过构建排序数据集,采用机器学习算法如支持向量机的排序学习算法RankSVM等自动训练模型参数,从而使得模型参数相对于数据集达到最优。然而,LTR的排序效果严重依赖于数据集的质量,而构建数据集又是一件耗时耗力的工作,而且在用户行为发生变化时,也需要重新构建数据集,从而导致训练模型参数的效率较低。
发明内容
本发明实施例提供一种排序模型的训练方法和装置,用以解决现有技术中训练模型参数效率较低的问题,以提高训练模型参数的效率。
为了解决上述问题,本发明实施例公开了一种排序模型的训练方法,包括:
根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;
根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
优选地,所述根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果的步骤,包括:
向具有相同模型和不同参数的多个排序模型中的任意一个,发送来自用户的用户搜索请求;
接收来自所述排序模型的所述用户搜索请求对应的搜索排序结果。
优选地,所述根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新的步骤,包括:
根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新,直到各排序模型对应的搜索点击率达到稳定值。
优选地,所述根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率的步骤,包括:
收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
优选地,所述预置的参数更新算法为梯度下降算法;
所述根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新的步骤,包括:
确定所述各排序模型的初始参数;
确定所述各排序模型对应的搜索点击率;
根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
优选地,所述方法还包括:
根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
依据本发明的另一个方面,公开了一种排序模型的训练装置,包括:
排序模块,用于根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
反馈模块,用于根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;及
更新模块,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
优选地,所述排序模块,包括:
请求发送子模块,用于向具有相同模型和不同参数的多个排序模型中的任意一个,发送来自用户的用户搜索请求;
结果接收子模块,用于接收来自所述排序模型的所述用户搜索请求对应的搜索排序结果。
优选地,所述更新模块,包括:
更新子模块,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新,直到各排序模型对应的搜索点击率达到稳定值。
优选地,所述反馈模块,包括:
收集子模块,用于收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
计算子模块,用于根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
优选地,所述预置的参数更新算法为梯度下降算法;
所述更新模块,包括:
初始化子模块,用于确定所述各排序模型的初始参数;
点击率确定子模块,用于确定所述各排序模型对应的搜索点击率;
迭代更新子模块,用于根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
优选地,所述装置还包括:
优化排序模块,用于根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
本发明实施例包括以下优点:
在本发明实施例中,根据用户针对搜索排序结果的点击反馈得到排序模型的搜索点击率,以及根据搜索点击率对排序模型的模型参数进行更新,可以在用户行为偏好发生变化时能够自动调整模型参数以适应用户的点击行为,相对于现有技术需要重新构建数据集,可以提高训练模型参数的效率。
附图说明
图1示出了本发明的一种排序模型的训练方法实施例一的步骤流程图;
图2示出了本发明的一种排序模型的训练系统的结构示意图;
图3示出了本发明的一种排序模型的训练方法实施例二的步骤流程图;
图4示出了本发明的一种排序模型的训练装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参照图1,示出了本发明的一种排序模型的训练方法实施例一的步骤流程图,具体可以包括:
步骤101、根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
本发明实施例可适用于为用户提供搜索服务,并且将搜索得到的相关信息展示给用户的各种应用场景,比如百度、谷歌、雅虎等搜索引擎或者具有搜索功能的其他场景,本发明对于具体的搜索场景不加以限制。为了便于描述,以下均以搜索引擎为例进行说明,其它应用场景相互参照即可。
在具体应用中,搜索引擎可以获取服务器中与用户搜索请求相应的内容;具体地,首先可以对用户搜索请求对应的搜索词进行分词,得到多个关键词,然后,通过释放大量的抓取程序,获取互联网上的网页,并按照网页相关性原理在每一个关键词和所有相关的网页之间建立一个对应关系,储存在服务器的数据库中。这样,在用户在搜索引擎中输入搜索词(例如“刘德华主演的电影”)进行搜索时,就可以在服务器中搜索找到与关键词“刘德华”以及“刘德华主演的电影”相匹配的搜索结果,假设搜索结果的数目为3,540,000。
在获得搜索结果之后,接下来就是如何对这3,540,000个搜索结果进行排序。现有的各个搜索引擎都具有自己的排序模型,不同的排序模型可以采用不同的排序算法,因为本发明的目的是对现有排序模型的优化,因此,本发明不需要限定具体的排序模型,即本发明可以应用在各种可行的已有排序模型上。例如网页搜索中的PageRank(网页排名)排序模型等。
在本发明实施例中,首先可以对待训练的排序模型确定模型初始参数,该模型初始参数可以是根据经验确定的,并且排序效果比较好的模型参数,在该模型参数的基础上进行训练和学习,可以得到更优的模型参数。
步骤102、根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;
其中,上述点击反馈具体可以包括:用户搜索次数和用户点击次数。在实际应用中,当用户行为发生变化时,例如,用户的兴趣爱好发生改变或者用户近期关注的内容发生变化,都会导致用户的点击反馈发生相应的改变,例如,用户输入搜索词“刘德华”,可以得到与刘德华相关的歌曲、电影和新闻,其中,刘德华的歌曲的用户点击次数较多,通常排在搜索结果的前面,如果近期刘德华没有出新歌,而是出演了几部新电影,用户有可能更多地关注刘德华的电影,那么刘德华的电影的用户点击次数会增多。
本发明实施例可以收集用户针对搜索排序结果的点击反馈,周期性地计算排序模型对应的搜索点击率,基于搜索点击率对排序模型的模型参数进行迭代更新,在此过程中,可以不断对模型参数进行调整,由于本发明实施例在使用排序模型的过程中收集用户针对搜索排序结果的点击反馈,并根据点击反馈不断调整模型参数,以使模型参数随着用户行为的变化而改变,相对于现有技术,可以不用单独构建数据集,因此可以提高训练参数的效率。可以理解,上述点击反馈包括用户搜索次数和用户点击次数仅作为本发明的一种应用示例,在实际应用中,本领域技术人员可以灵活选择点击反馈的具体内容,本发明对于点击反馈的具体内容不加以限制。
在本发明的一种优选实施例中,所述根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率的步骤,包括:
步骤S11、收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
在本发明实施例中,在根据排序模型,确定用户搜索请求对应的搜索排序结果之后,可以将搜索排序结果返回给用户,并且收集用户针对所述搜索排序结果的点击反馈,具体地,可以收集所述排序结果对应的用户搜索次数(impression_count)和用户点击次数(click_count)。
步骤S12、根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
具体地,搜索点击率ctr可以通过click_count/impression_count计算得到。
步骤103、根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
在本发明实施例中,对排序模型进行训练的目的,就是使得模型参数更优,以提高排序模型对应的搜索点击率。其中,搜索点击率ctr与模型参数的关系可以参见如下公式:
ctr=f(α1,α2,...αm)(1)
其中,α1,α2...αm为模型参数。上述公式(1)表示搜索点击率ctr与模型参数α1,α2...αm之间的函数关系,该函数关系可以是线性函数,也可以是非线性函数,具体函数可以根据采用的排序模型来确定,本发明对于函数的具体形式不加以限制。
在本发明实施例中,为了使得排序模型可以自适应地进行学习,不断优化模型参数,以提高搜索点击率,本发明实施例采用多个排序模块来实现模型参数的自适应学习过程,该排序模块可以用于处理来自用户的搜索请求,并根据排序模型确定所述搜索请求对应的搜索排序结果。每个排序模块包括一个排序模型,且各排序模块的排序模型具有相同的模型和不同的模型参数,根据各排序模块对应的搜索点击率,自适应地调整各排序模块对应的模型参数,以使调整后的模型参数可以得到更高的搜索点击率,最终搜索点击率达到稳定值时,也就得到了最优的模型参数。由于训练数据可以通过各排序模块产生,因此,相对于现有技术,不用构建数据集,可以节省大量的时间。
在本发明的一种应用示例中,假设采用排序模块A和排序模块B两个排序模块,排序模块A和排序模块B使用相同的排序模型,其中,排序模块A中的模型参数为:α1,α2...αm,排序模块B中的模型参数为:α1+Δα1,α2...αm。通过收集用户针对排序模块A和排序模块B的点击反馈,可以分别得到排序模块A的搜索点击率以及排序模块B的搜索点击率,由于两个排序模块只有第一个参数α1不同,因此,可以根据两个排序模块的搜索点击率对其中的参数α1进行更新,以得到更大的搜索点击率。按照同样的方法,在下一轮更新时,可以对第二个参数α2进行更新,直到m个参数更新完毕,即可得到在搜索点击率达到极大值时的最优模型参数。
在本发明的一种优选实施例中,所述预置的参数更新算法具体可以为梯度下降法;
所述根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新的步骤,包括:
步骤S21、确定所述各排序模型的初始参数;
其中,模型的初始参数一般是通过经验确定的,并且能够达到比较好的排序效果,否则,模型参数训练过程中会在一定程度上影响到用户体验;
在本发明实施例中,假设排序模型包括m个参数,每一轮参数的更新包含m步(其中,m与模型参数个数一致),也即,每一步更新其中的一个参数。例如,本发明实施例中包括排序模块RSB_1和排序模块RSB_2,在第k轮更新时,RSB_1和RSB_2的模型参数分别为α1 k,α2 k...αm k和α1 k+Δα1 k,α2 k...αm k。
步骤S22、确定所述各排序模型对应的搜索点击率;
具体地,通过收集排序模块RSB_1和排序模块RSB_2两种参数下用户的点击反馈,并分别计算出排序模块RSB_1的搜索点击率为ctr_1,以及排序模块RSB_2的搜索点击率为ctr_2;
步骤S23、根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
具体地,在得到搜索点击率ctr_1和ctr_2后,可以通过如下公式计算参数α1对应的参数斜率:
然后按照步骤S23的过程,依次计算α2...αm各参数对应的参数斜率:
根据上述各参数斜率对模型参数进行如下更新:
……
其中s为学习步长,取值范围为(0,1)。在α1 k+1-α1 k,α2 k+1-α2 k,…,αm k+1-αm k都小于预设阈值时,说明该训练过程达到稳态,也即搜索点击率达到最大值(稳定值),此时可以结束训练,将α1 k+1,α2 k+1...αm k+1作为训练的最优模型参数。其中,所述预设阈值和具体选取的排序模型有关,通常可以根据经验将所述预设阈值设置为较小的实数。由于整个过程都是在ctr=f(α1,α2,...αm)的梯度方向上最大化搜索点击率ctr,因而,当到达局部最大值处,训练过程会处于稳态。
其中,梯度下降法较为常用,而且可以得到较快的收敛速度。当用户行为发生变化时,用户的点击反馈会发生相应的变化,从而改变各排序模块的点击率(ctr),ctr的变化会影响梯度学习的方向,以调整模型参数,从而实现模型参数的自适应更新。可以理解,上述梯度下降法作为参数更新算法仅作为本发明的一种应用示例,在实际应用中,本领域技术人员可以根据需要选择合适的参数更新算法,本发明对于参数更新算法的种类不加以限制。
在本发明的一种优选实施例中,所述方法还可以包括:
根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
在本发明实施例中,当搜索点击率达到最大值(稳定值)时可以结束训练,此时得到最优模型参数。由于该排序模型是根据用户的点击反馈训练得到的,因此,根据该排序模型对搜索结果进行排序,可以使得排序结果更加符合用户行为,从而提高搜索排序结果的准确率。
综上,在本发明实施例中,根据用户针对搜索排序结果的点击反馈得到排序模型的搜索点击率,以及根据搜索点击率对排序模型的模型参数进行更新,可以在用户行为偏好发生变化时能够自动调整模型参数以适应用户的点击行为,相对于现有技术需要重新构建数据集,可以提高训练模型参数的效率。
实施例二
参照图2,示出了本发明的一种排序模型的训练系统的结构示意图,具体可以包括:搜索请求处理模块210、排序模块220、用户行为反馈模块230以及中央控制器240。
其中,搜索请求处理模块210,用于接收来自用户的搜索请求,对搜索请求进行分词处理,然后随机向某一个排序模块220发起该搜索请求,以及将来自排序模块220的针对所述搜索请求的搜索排序结果返回给用户。
排序模块220,用于接收并处理来自所述搜索请求处理210模块的搜索请求,例如,可以利用搜索请求处理模块210得到的分词查询倒排索引,然后,基于排序模型对查询结果进行排序,得到搜索排序结果,以及将搜索排序结果返回给搜索请求处理模块210。在本发明实施例中,排序模块220的个数可以大于等于2,各排序模块可以共用一个索引,并且采用相同的排序模型以及不同的模型参数。
用户行为反馈模块230,用于收集用户针对所述搜索排序结果的点击反馈,并且周期性计算各排序模块的用户搜索次数(impression_count)、用户点击次数(click_count)以及搜索点击率(ctr,定义为click_count/impression_count)。
中央控制器240,用于根据各排序模块的搜索点击率,按照预置的参数更新算法对各排序模块的模型参数进行更新;直到搜索点击率达到稳定值,停止更新。
在具体应用中,可以在线上部署多个上述排序模块220,各排序模块共用一个索引,并且采用相同的排序模型,不同的是每个排序模块采用不同的模型参数。中央控制器240可以实时配置各个排序模块的模型参数。当用户发起搜索请求时,搜索请求处理模块210将搜索请求随机分配到某一个排序模块220上,并将来自该排序模块的搜索排序结果返回给用户。用户行为反馈模块230收集用户针对所述搜索排序结果的点击反馈(用户搜索次数impression_count、用户点击次数click_count),计算各排序模块的搜索点击率ctr,并将搜索点击率ctr发送给中央控制器240。中央控制器240根据各排序模块的搜索点击率ctr,按照梯度下降法,周期性更新各个排序模块的模型参数,每次更新后,排序模块的参数相对于上一轮的更优。迭代上述更新流程,直到搜索点击率达到稳态,上述更新流程能够使得到达稳态时搜索点击率为极大值点,此时停止更新。也即,本发明实施例通过自适应的学习更新模型参数,使得搜索点击率达到极大值,从而可以得到最优的模型参数,在提高搜索点击率的同时,可以提高训练参数的效率。
实施例三
参照图3,示出了本发明的一种排序模型的训练方法实施例二的步骤流程图,具体可以包括:
步骤301、随机向某个排序模块发送来自用户的搜索请求;
步骤302、接收来自所述排序模块的所述搜索请求对应的搜索排序结果;
步骤303、向用户返回所述搜索排序结果;
步骤304、根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;
步骤305、根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
在本发明的一种应用示例中,假设排序模块的个数为2,排序模块RSB_1和RSB_2,排序模型包含m个参数,采用基于梯度下降法更新模型参数。具体更新步骤可以如下:
步骤S31、确定模型初始参数α1 0,α2 0...αm 0;
步骤S32、假设上一轮更新之后模型参数为α1 k,α2 k...αm k;
步骤S33、中央控制器将RSB_1和RSB_2的模型参数分别设置为α1 k,α2 k...αm k和α1 k+Δα1 k,α2 k...αm k,用户行为反馈模块收集两种参数下用户的点击反馈,并计算出RSB_1对应的搜索点击率ctr_1,RSB_2对应的搜索点击率ctr_2;以及,计算参数斜率
步骤S34、重复上述步骤S33的过程,依次计算如下各参数斜率:
步骤S35、根据上述参数斜率,按照如下公式更新模型参数;
……
其中s为学习步长,取值范围为(0,1)。
步骤S36、在满足稳态条件时,停止更新。
具体地,当α1 k+1-α1 k,α2 k+1-α2 k,…,αm k+1-αm k都小于预设阈值时,说明训练结果满足稳态条件,此时,搜索点击率达到极大值,则停止更新。
在本发明实施例中,当用户发起搜索请求时,将该搜索请求随机分配到某个排序模块,并将该排序模块返回的排序结果返回给用户,基于用户针对排序结果的点击反馈更新排序模块的模型参数,在每次更新后,可以使得排序模块的参数相对于上一轮的更优。迭代上述更新过程,直到各排序模块的搜索点击率达到稳态,停止更新。在本发明实施例中,由于训练数据可以通过各排序模块产生的,因此,相对于现有技术,不用构建数据集,可以节省大量的时间。此外,当用户行为发生变化时,用户的点击反馈也会发生相应的变化,本发明基于用户针对排序结果的点击反馈更新排序模块的模型参数,因此,本发明实施例在用户行为偏好发生变化时能够自动调整模型参数以适应用户的点击行为,相对于现有技术需要重新构建数据集,可以提高训练参数的效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
装置实施例
参照图4,示出了本发明的一种排序模型的训练装置实施例的结构框图,具体可以包括:
排序模块410,用于根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
反馈模块420,用于根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;及
更新模块430,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
在本发明的一种优选实施例中,所述排序模块410,具体可以包括:
请求发送子模块,用于向具有相同模型和不同参数的多个排序模型中的任意一个,发送来自用户的用户搜索请求;
结果接收子模块,用于接收来自所述排序模型的所述用户搜索请求对应的搜索排序结果。
在本发明的另一种优选实施例中,所述更新模块430,具体可以包括:
更新子模块,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新,直到各排序模型对应的搜索点击率达到稳定值。
在本发明的又一种优选实施例中,所述反馈模块420,具体可以包括:
收集子模块,用于收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
计算子模块,用于根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
在本发明的再一种优选实施例中,所述预置的参数更新算法为梯度下降算法;
所述更新模块430,具体可以包括:
初始化子模块,用于确定所述各排序模型的初始参数;
点击率确定子模块,用于确定所述各排序模型对应的搜索点击率;
迭代更新子模块,用于根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
在本发明的再一种优选实施例中,所述装置还可以包括:
优化排序模块,用于根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种排序模型的训练方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种排序模型的训练方法,其特征在于,包括:
根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;
根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
2.根据权利要求1所述的方法,其特征在于,所述根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果的步骤,包括:
向具有相同模型和不同参数的多个排序模型中的任意一个,发送来自用户的用户搜索请求;
接收来自所述排序模型的所述用户搜索请求对应的搜索排序结果。
3.根据权利要求1所述的方法,其特征在于,所述根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新的步骤,包括:
根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新,直到各排序模型对应的搜索点击率达到稳定值。
4.根据权利要求1所述的方法,其特征在于,所述根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率的步骤,包括:
收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
5.根据权利要求3所述的方法,其特征在于,所述预置的参数更新算法为梯度下降算法;
所述根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新的步骤,包括:
确定所述各排序模型的初始参数;
确定所述各排序模型对应的搜索点击率;
根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
7.一种排序模型的训练装置,其特征在于,包括:
排序模块,用于根据排序模型,对用户搜索请求对应的搜索结果进行排序,得到对应的搜索排序结果;
反馈模块,用于根据用户针对所述搜索排序结果的点击反馈,确定所述排序模型对应的搜索点击率;及
更新模块,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新。
8.根据权利要求7所述的装置,其特征在于,所述排序模块,包括:
请求发送子模块,用于向具有相同模型和不同参数的多个排序模型中的任意一个,发送来自用户的用户搜索请求;
结果接收子模块,用于接收来自所述排序模型的所述用户搜索请求对应的搜索排序结果。
9.根据权利要求7所述的装置,其特征在于,所述更新模块,包括:
更新子模块,用于根据所述搜索点击率,按照预置的参数更新算法,对所述排序模型的模型参数进行更新,直到各排序模型对应的搜索点击率达到稳定值。
10.根据权利要求7所述的装置,其特征在于,所述反馈模块,包括:
收集子模块,用于收集所述搜索排序结果对应的用户搜索次数和用户点击次数;
计算子模块,用于根据所述用户点击次数与所述用户搜索次数的比值,确定搜索点击率。
11.根据权利要求9所述的装置,其特征在于,所述预置的参数更新算法为梯度下降算法;
所述更新模块,包括:
初始化子模块,用于确定所述各排序模型的初始参数;
点击率确定子模块,用于确定所述各排序模型对应的搜索点击率;
迭代更新子模块,用于根据所述各排序模型对应的搜索点击率,按照梯度下降算法更新所述各排序模型的初始参数,直到所述初始参数达到稳定值。
12.根据权利要求7所述的装置,其特征在于,所述装置还包括:
优化排序模块,用于根据更新后的排序模型,对用户搜索请求对应的搜索结果进行排序,得到优化后的搜索排序结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510733085.9A CN105224959B (zh) | 2015-11-02 | 2015-11-02 | 排序模型的训练方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510733085.9A CN105224959B (zh) | 2015-11-02 | 2015-11-02 | 排序模型的训练方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105224959A true CN105224959A (zh) | 2016-01-06 |
CN105224959B CN105224959B (zh) | 2019-03-26 |
Family
ID=54993919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510733085.9A Active CN105224959B (zh) | 2015-11-02 | 2015-11-02 | 排序模型的训练方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105224959B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021374A (zh) * | 2016-05-11 | 2016-10-12 | 百度在线网络技术(北京)有限公司 | 查询结果的底层召回方法和装置 |
CN106484426A (zh) * | 2016-10-20 | 2017-03-08 | 乐视控股(北京)有限公司 | 一种反馈搜索信息的方法、装置及系统 |
CN106777201A (zh) * | 2016-12-23 | 2017-05-31 | 北京奇虎科技有限公司 | 搜索结果页上的推荐数据的排序方法及装置 |
CN107463580A (zh) * | 2016-06-06 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 训练点击率预估模型方法和装置、点击率预估方法和装置 |
CN107885889A (zh) * | 2017-12-13 | 2018-04-06 | 聚好看科技股份有限公司 | 搜索结果的反馈方法、展示方法及装置 |
CN108509461A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种基于强化学习的排序学习方法及服务器 |
CN109074502A (zh) * | 2018-07-26 | 2018-12-21 | 深圳前海达闼云端智能科技有限公司 | 训练人工智能模型的方法、装置、存储介质及机器人 |
CN109241455A (zh) * | 2018-08-28 | 2019-01-18 | 北京三快在线科技有限公司 | 一种推荐对象的展示方法及装置 |
CN109597941A (zh) * | 2018-12-12 | 2019-04-09 | 拉扎斯网络科技(上海)有限公司 | 排序方法及装置、电子设备和存储介质 |
CN110020173A (zh) * | 2017-12-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 用于优化搜索排序的方法、装置及电子设备 |
CN110852838A (zh) * | 2019-10-23 | 2020-02-28 | 海南太美航空股份有限公司 | 基于航线交易平台的数据排序方法、系统及装置 |
CN111797312A (zh) * | 2020-06-22 | 2020-10-20 | 北京三快在线科技有限公司 | 模型训练的方法及装置 |
WO2020233432A1 (zh) * | 2019-05-20 | 2020-11-26 | 阿里巴巴集团控股有限公司 | 一种信息推荐方法及装置 |
CN112507196A (zh) * | 2020-12-18 | 2021-03-16 | 北京百度网讯科技有限公司 | 融合排序模型的训练方法、搜索排序方法、装置和设备 |
CN112597361A (zh) * | 2020-12-16 | 2021-04-02 | 北京五八信息技术有限公司 | 一种排序处理方法、装置、电子设备及存储介质 |
CN113516200A (zh) * | 2021-07-30 | 2021-10-19 | 盛景智能科技(嘉兴)有限公司 | 模型训练方案生成的方法、装置、电子设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101523338A (zh) * | 2005-03-18 | 2009-09-02 | 搜索引擎科技有限责任公司 | 应用来自用户的反馈来改进搜索结果的搜索引擎 |
CN101887437A (zh) * | 2009-05-12 | 2010-11-17 | 阿里巴巴集团控股有限公司 | 一种搜索结果生成方法及信息搜索系统 |
CN102779136A (zh) * | 2011-05-13 | 2012-11-14 | 北京搜狗科技发展有限公司 | 一种信息搜索的方法和装置 |
CN103440306A (zh) * | 2013-08-23 | 2013-12-11 | 百度在线网络技术(北京)有限公司 | 一种搜索结果的展现方法及装置 |
CN103793388A (zh) * | 2012-10-29 | 2014-05-14 | 阿里巴巴集团控股有限公司 | 搜索结果的排序方法和装置 |
CN103995851A (zh) * | 2014-05-07 | 2014-08-20 | 百度在线网络技术(北京)有限公司 | 对搜索结果进行处理的方法和装置 |
CN104063521A (zh) * | 2014-07-17 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 搜索业务实现方法和装置 |
CN104715022A (zh) * | 2015-02-28 | 2015-06-17 | 北京奇艺世纪科技有限公司 | 一种相关搜索方法和装置 |
US20150169639A1 (en) * | 2012-08-15 | 2015-06-18 | Google Inc. | Ranking image search results using hover data |
US20150199362A1 (en) * | 2011-02-15 | 2015-07-16 | Ebay Inc. | Method and system for ranking search results based on category demand normalized using impressions |
-
2015
- 2015-11-02 CN CN201510733085.9A patent/CN105224959B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101523338A (zh) * | 2005-03-18 | 2009-09-02 | 搜索引擎科技有限责任公司 | 应用来自用户的反馈来改进搜索结果的搜索引擎 |
CN101887437A (zh) * | 2009-05-12 | 2010-11-17 | 阿里巴巴集团控股有限公司 | 一种搜索结果生成方法及信息搜索系统 |
US20150199362A1 (en) * | 2011-02-15 | 2015-07-16 | Ebay Inc. | Method and system for ranking search results based on category demand normalized using impressions |
CN102779136A (zh) * | 2011-05-13 | 2012-11-14 | 北京搜狗科技发展有限公司 | 一种信息搜索的方法和装置 |
US20150169639A1 (en) * | 2012-08-15 | 2015-06-18 | Google Inc. | Ranking image search results using hover data |
CN103793388A (zh) * | 2012-10-29 | 2014-05-14 | 阿里巴巴集团控股有限公司 | 搜索结果的排序方法和装置 |
CN103440306A (zh) * | 2013-08-23 | 2013-12-11 | 百度在线网络技术(北京)有限公司 | 一种搜索结果的展现方法及装置 |
CN103995851A (zh) * | 2014-05-07 | 2014-08-20 | 百度在线网络技术(北京)有限公司 | 对搜索结果进行处理的方法和装置 |
CN104063521A (zh) * | 2014-07-17 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 搜索业务实现方法和装置 |
CN104715022A (zh) * | 2015-02-28 | 2015-06-17 | 北京奇艺世纪科技有限公司 | 一种相关搜索方法和装置 |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021374A (zh) * | 2016-05-11 | 2016-10-12 | 百度在线网络技术(北京)有限公司 | 查询结果的底层召回方法和装置 |
CN107463580B (zh) * | 2016-06-06 | 2020-07-24 | 腾讯科技(深圳)有限公司 | 训练点击率预估模型方法和装置、点击率预估方法和装置 |
CN107463580A (zh) * | 2016-06-06 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 训练点击率预估模型方法和装置、点击率预估方法和装置 |
CN106484426A (zh) * | 2016-10-20 | 2017-03-08 | 乐视控股(北京)有限公司 | 一种反馈搜索信息的方法、装置及系统 |
CN106777201A (zh) * | 2016-12-23 | 2017-05-31 | 北京奇虎科技有限公司 | 搜索结果页上的推荐数据的排序方法及装置 |
CN106777201B (zh) * | 2016-12-23 | 2021-01-08 | 北京奇元科技有限公司 | 搜索结果页上的推荐数据的排序方法及装置 |
US11500954B2 (en) | 2017-02-28 | 2022-11-15 | Huawei Technologies Co., Ltd. | Learning-to-rank method based on reinforcement learning and server |
CN108509461A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种基于强化学习的排序学习方法及服务器 |
CN107885889A (zh) * | 2017-12-13 | 2018-04-06 | 聚好看科技股份有限公司 | 搜索结果的反馈方法、展示方法及装置 |
CN110020173A (zh) * | 2017-12-29 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 用于优化搜索排序的方法、装置及电子设备 |
CN110020173B (zh) * | 2017-12-29 | 2023-07-18 | 阿里巴巴集团控股有限公司 | 用于优化搜索排序的方法、装置及电子设备 |
CN109074502A (zh) * | 2018-07-26 | 2018-12-21 | 深圳前海达闼云端智能科技有限公司 | 训练人工智能模型的方法、装置、存储介质及机器人 |
CN109241455A (zh) * | 2018-08-28 | 2019-01-18 | 北京三快在线科技有限公司 | 一种推荐对象的展示方法及装置 |
CN109241455B (zh) * | 2018-08-28 | 2021-08-20 | 北京三快在线科技有限公司 | 一种推荐对象的展示方法及装置 |
CN109597941A (zh) * | 2018-12-12 | 2019-04-09 | 拉扎斯网络科技(上海)有限公司 | 排序方法及装置、电子设备和存储介质 |
WO2020233432A1 (zh) * | 2019-05-20 | 2020-11-26 | 阿里巴巴集团控股有限公司 | 一种信息推荐方法及装置 |
CN110852838A (zh) * | 2019-10-23 | 2020-02-28 | 海南太美航空股份有限公司 | 基于航线交易平台的数据排序方法、系统及装置 |
CN111797312A (zh) * | 2020-06-22 | 2020-10-20 | 北京三快在线科技有限公司 | 模型训练的方法及装置 |
CN111797312B (zh) * | 2020-06-22 | 2024-03-01 | 北京三快在线科技有限公司 | 模型训练的方法及装置 |
CN112597361A (zh) * | 2020-12-16 | 2021-04-02 | 北京五八信息技术有限公司 | 一种排序处理方法、装置、电子设备及存储介质 |
CN112597361B (zh) * | 2020-12-16 | 2023-12-12 | 北京五八信息技术有限公司 | 一种排序处理方法、装置、电子设备及存储介质 |
CN112507196A (zh) * | 2020-12-18 | 2021-03-16 | 北京百度网讯科技有限公司 | 融合排序模型的训练方法、搜索排序方法、装置和设备 |
US11782999B2 (en) | 2020-12-18 | 2023-10-10 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method for training fusion ordering model, search ordering method, electronic device and storage medium |
CN113516200A (zh) * | 2021-07-30 | 2021-10-19 | 盛景智能科技(嘉兴)有限公司 | 模型训练方案生成的方法、装置、电子设备及存储介质 |
CN113516200B (zh) * | 2021-07-30 | 2024-06-04 | 盛景智能科技(嘉兴)有限公司 | 模型训练方案生成的方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105224959B (zh) | 2019-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105224959A (zh) | 排序模型的训练方法和装置 | |
JP7210531B2 (ja) | ニューラルアーキテクチャ検索 | |
EP3893154A1 (en) | Recommendation model training method and related apparatus | |
CN102591917B (zh) | 一种数据处理方法、系统及相关装置 | |
JP2021166109A (ja) | 融合順序付けモデルの訓練方法と装置、検索の順序付け方法と装置、電子デバイス、記憶媒体、及びプログラム | |
CN104572998A (zh) | 用于自动问答系统的问答排序模型更新方法及装置 | |
CN103942712A (zh) | 基于产品相似度的电子商务推荐系统及其方法 | |
CN108509617A (zh) | 知识库构建、基于知识库的智能问答方法及装置、存储介质、终端 | |
CN105574025A (zh) | 用于计算排序分及建立模型的方法、装置及商品推荐系统 | |
CN103309894B (zh) | 基于用户属性的搜索实现方法及系统 | |
CN102193999A (zh) | 一种对搜索结果进行排序的方法及设备 | |
CN103593373A (zh) | 一种用于搜索结果排序的方法与设备 | |
CN105808590A (zh) | 搜索引擎实现方法、搜索方法以及装置 | |
CN105069077A (zh) | 搜索方法及装置 | |
CN105760443A (zh) | 项目推荐系统、项目推荐装置以及项目推荐方法 | |
CN102682046A (zh) | 社交网络的节点搜索和分析方法及搜索系统 | |
EP4131031A1 (en) | Recommendation method and device based on automatic feature grouping | |
CA3062119A1 (en) | Method and device for setting sample weight, and electronic apparatus | |
CN103246985A (zh) | 一种广告点击率预测方法及装置 | |
CN104965918B (zh) | 一种基于查询关键词的搜索方法和装置 | |
CN103077254A (zh) | 网页获取方法和装置 | |
CN104750760A (zh) | 一种推荐应用软件的实现方法及装置 | |
CN106294325A (zh) | 自然语言生成语句的优化方法及装置 | |
CN105589917A (zh) | 浏览器日志信息的分析方法和装置 | |
CN105302807A (zh) | 一种获取信息类别的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |