获取推荐系统最优参数组合的方法及装置与流程

文档序号:16881184发布日期:2019-02-15 22:10阅读:368来源:国知局
获取推荐系统最优参数组合的方法及装置与流程

本发明涉及推荐系统技术领域,尤其涉及一种获取推荐系统最优参数组合的方法、装置、设备及计算机可读存储介质。



背景技术:

互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但是,由于信息量过大,使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了,这就是所谓的信息超载问题。

解决信息超载问题的一个办法是使用推荐系统,它是根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户的个性化信息推荐系统。

推荐系统在对文章进行排序时,除了对用户的点击率进行预估以外,还会引入多个参数来调整排序的权重(例如对不同类型资源有不同的提权系数),从而生成更符合用户兴趣的推荐列表。

目前,推荐系统的最优参数组合通常采用以下方式确定:

选定一批实验用户,然后对这批实验用户不断调整参数组合的取值,观察这些实验用户在推荐系统上的整体表现,确定该参数组合的取值所对应的系统效果;将最优的系统效果对应的参数组合取值作为推荐系统的最优参数组合。例如,每隔一段时间更换参数组合的取值,测试这段时间内这部分实验用户在这组参数组合取值上面的分发量、人均时长等,然后选出一组最优的参数组合取值,推广至所有用户。

这种方式的缺点是无法高效准确地确定推荐系统的最优参数组合,具体原因是:如果更换参数组合取值的时间间隔短,则用户的表现数据不够置信,不能很好地评测系统效果;如果更换参数组合取值的时间间隔长,则虽然评估效果更加置信,但由于参数组合中包含很多参数,参数组合取值的数目随参数数目呈指数级增长,数量庞大,因此很难在有限的时间里遍历所有的参数组合取值。



技术实现要素:

本发明实施例提供一种获取推荐系统最优参数组合的方法、装置、设备及计算机可读存储介质,以至少解决现有技术中的以上技术问题。

第一方面,本发明实施例提供了一种获取推荐系统最优参数组合的方法,包括:

筛选多个实验用户;

以实验用户的会话为粒度进行参数试验,得到学习样本,所述学习样本包括参数组合的部分取值及其对应的系统效果评估值;

采用所述学习样本训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系,所述参数组合空间包括参数组合的全部取值;

利用所述映射关系获取系统效果空间中的最优系统效果及其对应的参数组合取值,将获取的参数组合取值作为所述推荐系统的最优参数组合

结合第一方面,本发明在第一方面的第一种实施方式中,所述以实验用户的会话为粒度进行参数试验,得到学习样本,包括:测试阶段和统计阶段;

其中,所述测试阶段针对每个实验用户分别执行以下步骤:

当实验用户的一个会话开始时,随机选取参数组合的一个取值,所述推荐系统采用选取的参数组合的取值进行推荐;

记录所述实验用户的行为数据,在所述实验用户的会话结束时,将所述行为数据作为选取的参数组合的取值在所述实验用户的会话中的实际系统效果;

所述统计阶段针对随机选取的各个参数组合的取值分别执行以下步骤:

获取参数组合的取值在不同实验用户的会话中的实际系统效果;

计算所述实际系统效果的平均值,将所述实际系统效果的平均值作为该参数组合的取值所对应的系统效果评估值。

结合第一方面的第一实施方式,本发明在第一方面的第二实施方式中,当实验用户的当前刷新的起始时刻与上一刷新的最后活跃时刻的间隔超过预先设定的阈值时,将所述实验用户的当前刷新的起始时刻作为所述实验用户的当前会话的开始时刻,并将所述实验用户的上一刷新的最后活跃时刻作为所述实验用户的上一会话的结束时刻。

结合第一方面、第一方面的第一实施方式、第一方面的第二种实施方式,本发明在第一方面的第三实施方式中,所述利用所述映射关系获取系统效果空间中的最优系统效果及其对应的参数组合取值,包括:

在所述参数组合空间中随机选择多个参数组合的取值,作为种子样本;

针对每个种子样本,采用爬山法在所述映射关系中寻找由该种子样本出发能够达到的系统效果极值点;

从各个种子样本出发能够达到的系统效果极值点中确定最优值,将所述最优值作为所述系统效果空间中的最优系统效果,并获取所述最优系统效果所对应的参数组合取值。

第二方面,本发明实施例提供了一种获取推荐系统最优参数组合的装置,包括:

实验用户筛选模块,用于筛选多个实验用户;

学习样本生成模块,用于以实验用户的会话为粒度进行参数试验,得到学习样本,所述学习样本包括参数组合的部分取值及其对应的系统效果评估值;

映射关系生成模块,用于采用所述学习样本训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系,所述参数组合空间包括参数组合的全部取值;

最优参数获取模块,用于利用所述映射关系获取系统效果空间中的最优系统效果及其对应的参数组合取值,将获取的参数组合取值作为所述推荐系统的最优参数组合。

结合第二方面,本发明在第二方面的第一实施方式中,所述学习样本生成模块包括:测试子模块和统计子模块;

其中,所述测试子模块针对每个实验用户分别执行以下操作:

当实验用户的一个会话开始时,随机选取参数组合的一个取值,指示所述推荐系统采用选取的参数组合的取值进行推荐;记录所述实验用户的行为数据,在所述实验用户的会话结束时,将所述行为数据作为选取的参数组合的取值在所述实验用户的会话中的实际系统效果;

所述统计子模块针对随机选取的各个参数组合的取值分别执行以下操作:

获取参数组合的取值在不同实验用户的会话中的实际系统效果;计算所述实际系统效果的平均值,将所述实际系统效果的平均值作为该参数组合的取值所对应的系统效果评估值。

结合第二方面的第一实施方式,本发明在第二方面的第二实施方式中,所述测试子模块,用于当实验用户的当前刷新的起始时刻与上一刷新的最后活跃时刻的间隔超过预先设定的阈值时,将所述实验用户的当前刷新的起始时刻作为所述实验用户的当前会话的开始时刻,并将所述实验用户的上一刷新的最后活跃时刻作为所述实验用户的上一会话的结束时刻。

结合第二方面、第二方面的第一实施方式、第二方面的第二种实施方式,本发明在第二方面的第三实施方式中,所述最优参数获取模块,包括:

种子样本选取子模块,用于在所述参数组合空间中随机选择多个参数组合的取值,作为种子样本;

极值点获取子模块,用于针对每个种子样本,采用爬山法在所述映射关系中寻找由该种子样本出发能够达到的系统效果极值点;

最优获取子模块,用于在由各个种子样本出发能够达到的系统效果极值点中获取最优值,将所述最优值作为所述系统效果空间中的最优系统效果,并获取所述最优系统效果所对应的参数组合取值,将获取的参数组合取值作为所述推荐系统的最优参数组合。

所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。

在一个可能的设计中,获取推荐系统最优参数组合的装置的结构中包括处理器和存储器,所述存储器用于存储支持获取推荐系统最优参数组合的装置执行上述第一方面中获取推荐系统最优参数组合的方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述获取推荐系统最优参数组合的装置还可以包括通信接口,用于获取推荐系统最优参数组合的装置与其他设备或通信网络通信。

第三方面,本发明实施例提供了一种计算机可读存储介质,用于存储获取推荐系统最优参数组合的装置所用的计算机软件指令,其包括用于执行上述第一方面中获取推荐系统最优参数组合的方法为获取推荐系统最优参数组合的装置所涉及的程序。

上述技术方案中的一个技术方案具有如下优点或有益效果:

本发明实施例以实验用户的会话为粒度进行参数试验,获取参数组合的部分取值及其对应的系统效果评估值,这种方式相比针对所有实验用户统一更换参数组合取值的方式更为高效。并且,利用在线参数学习技术,将已经完成测试的参数组合取值和对应的系统效果评估值作为样本,构建机器学习模型进行学习,得到参数组合空间(包含参数组合的所有取值)到系统效果空间之间的映射关系,避免了对数量庞大的参数组合取值进行遍历,因此能够高效准确地确定出推荐系统的最优参数组合。

上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。

附图说明

在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。

图1为本发明实施例一的获取推荐系统最优参数组合的方法流程图;

图2为本发明实施例二的实现流程图;

图3为一个实验用户的会话的划分方式示意图;

图4为本发明实施例三的实现流程图;

图5为本发明实施例三中采用爬山法获取系统效果极值点ei_max的一个实现过程示意图;

图6为本发明实施例四的获取推荐系统最优参数组合的装置结构示意图;

图7为本发明实施例五的获取推荐系统最优参数组合的装置结构示意图;

图8为本发明实施例六的获取推荐系统最优参数组合的设备结构示意图。

具体实施方式

在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。

本发明实施例主要提供了一种获取推荐系统最优参数组合的方法和装置,下面分别通过以下实施例进行技术方案的展开描述。

实施例一

参见图1,图1为本发明实施例一的获取推荐系统最优参数组合的方法流程图,包括以下步骤:

s110:筛选多个实验用户。

根据实际需求,可以从全量用户中随机抽样一定比例的用户作为实验用户。例如,从全量用户中随机抽样1%的用户作为实验用户。抽样的比例可以按照实际需求设置,抽样比例越高,本实施例的处理量越大,但获取最优参数组合的效果更好。

s120:以实验用户的会话(session)为粒度进行参数试验,得到学习样本,所述学习样本包括参数组合的部分取值及其对应的系统效果评估值。

与现有技术中以实验用户为粒度更换参数组合的取值不同,在本步骤中,以用户的会话为粒度进行参数试验,同样的时间内进行参数试验的次数更多,因此能够更高效地确定参数组合的取值所对应的系统效果评估值。

由于参数组合取值的数量庞大,难以在有限的时间内遍历参数组合的所有取值,因此,本步骤中通过参数试验仅确定出参数组合的部分取值所对应的系统效果评估值。至于其余的参数组合取值所对应的系统效果,则通过后续步骤s130中的利用机器学习模型得到。

s130:采用所述学习样本训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系,所述参数组合空间包括参数组合的全部取值。

本步骤利用机器学习模型的泛化能力,得到了参数组合的全部取值所对应的系统效果,避免了对参数组合的全部取值进行遍历,因此能够高效准确地确定出推荐系统的最优参数组合。

s140:利用所述映射关系获取系统效果空间中的最优系统效果及其对应的参数组合取值,将所述参数组合取值作为所述推荐系统的最优参数组合。

以下采用具体的实施例,对实施例一中的部分步骤进行详细介绍。

实施例二

本实施例介绍实施例一中步骤s120的一种具体实现方式。

为便于理解,在介绍具体步骤之前,首先介绍两个相关概念。

第一,用户的会话:

在推荐系统中,用户的行为模式通常是以会话为单位进行刷新和浏览的。即:从某个时刻开始,连续刷新并浏览阅读文章一段时间,然后停止,过一段时间后再开始持续刷新浏览一段时间,如此往复。

设用户为u,用户u的第i个会话记为su(i)。一个用户会话可以包含很多次刷新,即su(i)={ru(i,j)|1<=j<=nu(i)},其中ru(i,j)为用户u第i个会话中的第j次刷新,nu(i)为用户u第i个会话中的总刷新次数。

记stu(i,j)为用户u的第i个会话中第j次刷新的起始时间,etu(i,j)为用户u第i个会话中第j次刷新的最后活跃时间(在客户端记录的最后有用户动作的时间)。在一个用户会话内,所有的用户刷新是按照时间顺序排列的,即stu(i,j)<etu(i,j)<stu(i,j+1)<etu(i,j+1)。

用户会话的划分可以按照公式(1)进行:

stu(i+1,1)-etu(i,nu(i))>=thre&&stu(i,j+1)-etu(i,j)<thre(1)

其中,1&lt;=j&lt;nu(i);

thre为预先设定的阈值;

公式(1)的含义是:第i个会话中最后一次刷新的最后活跃时间,与第i+1个会话中第一次刷新的起始时间的时间间隔,要大于或等于预先设定的阈值thre。而对于一个会话内的相邻两次刷新,前一次刷新的最后活跃时间与后一次刷新的起始时间的时间间隔,要小于该阈值thre。

时间间隔阈值(thre)的具体值可以根据实际情况设置,例如取30分钟。

第二,推荐系统的参数组合:

设推荐系统的参数组合中包含m个可调参数。将一个参数组合的取值定义为:p={p1=v1,p2=v2,…,pm=vm}。其中,vi表示参数组合中第i个参数的某取值。

对于任意一个参数,假设它的取值范围是x到y。将x到y的区间均匀切分成c份,可以得到该参数的c+1个离散的取值:x,x+1/c,x+2/c,…,x+(c-1)/c,y。

这样,当参数组合包含m个参数时,每个参数pi都存在c+1可能取值,该参数组合则存在(c+1)m个可能取值。

介绍完上述两个相关概念,以下参照图2,介绍实施例二的具体实施方式。图2为本发明实施例二的实现流程图。在本实施例中,以实验用户的会话为粒度进行参数试验,得到学习样本,该学习样本包括参数组合的部分取值及其对应的系统效果评估值。

如图2所示,整个流程包括2个阶段:测试阶段和统计阶段;

其中,在测试阶段针对每个实验用户分别执行以下步骤:

s121:当实验用户的一个会话开始时,随机选取参数组合的一个取值,推荐系统采用选取的参数组合的取值进行推荐。

s122:记录所述实验用户的行为数据,在所述实验用户的会话结束时,将所述行为数据作为该参数组合的取值在该实验用户的会话中的实际系统效果。

对于实验用户的会话,可以采用如下方式进行划分:当实验用户的当前刷新的起始时刻与上一刷新的最后活跃时刻的间隔超过预先设定的阈值时,将所述实验用户的当前刷新的起始时刻作为所述实验用户的当前会话的开始时刻,并将所述实验用户的上一刷新的最后活跃时刻作为所述实验用户的上一会话的结束时刻。

如图3为一个实验用户的会话的划分方式示意图。图3中带箭头的直线表示时间轴,斜线填充的矩形表示实验用户的刷新。在时间轴上,一个实验用户的行为包括多次刷新。在划分会话时,当一次刷新的起始时刻与上一次刷新的最后活跃时刻之间的间隔大于预先设定的阈值时,则将这一次刷新划分至下一个会话中;如果一次刷新的起始时刻与上一次刷新的最后活跃时刻之间的间隔小于或等于预先设定的阈值时,则不进行划分,当前会话仍延续。

当实验用户的一个新的会话开始时,随机选取参数组合的一个取值,也就是以会话为粒度更换参数组合的取值。在实验用户的这个会话中,推荐系统使用选取的这组参数组合的取值对文章进行排序,并按照排序后的顺序为实验用户推荐文章。

在实验用户的会话的多次刷新中,实验用户可能会点击多个文章并进行阅读。步骤s122中将该点击行为记录下来,在当前会话结束时,将点击次数作为该参数组合的取值在实验用户的会话中的实际系统效果。实际系统效果可以是实验用户在会话中的总点击次数,也可以是实验用户在会话中的总阅读时长。具体用哪种指标,取决于推荐系统的调优目标。

测试阶段的持续时间可以按照一定的标准预先进行设置。通过测试阶段,得到了参数组合的多个取值所对应的实际系统效果。由于对于一个参数组合的取值,可能在多个实验用户的会话(包括同一实验用户的不同会话,以及不同实验用户的会话)中进行了测试,因此同一个参数组合的取值可能对应了多个实际系统效果。为了得到针对参数组合的取值的系统效果评估值,继续执行统计阶段。具体如下:

在统计阶段针对随机选取的参数组合的各个取值分别执行以下步骤:

s123:获取参数组合的取值在不同实验用户的会话中的实际系统效果。

假定上述测试阶段中,针对某一参数组合的取值做了n次测试,则本步骤中可以获取到该参数组合的取值在n个会话中所存在的n个实际系统效果。n为大于或等于1的正整数。

s124:计算所述实际系统效果的平均值,将所述实际系统效果的平均值作为该参数组合的取值所对应的系统效果评估值。

这样,通过测试阶段和统计阶段的步骤,可以得到参数组合的部分取值及其对应的系统效果评估值:(p1,e1),(p2,e2),……。其中pi代表一个参数组合的取值,ei代表这组参数组合的取值所对应的系统效果评估值。

之后,可以执行前述步骤s130,即:将上述参数组合的部分取值及其对应的系统效果评估值作为学习样本,训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系f:p-&gt;e,其中,参数组合空间包括参数组合的全部取值。

建立这个映射的优点在于:在上述步骤s121随机选取参数组合的取值时,由于参数组合可能取值的数量呈几何级数增长,参数组合的一些取值可能从来没有被选取过,因此无法直接得到这些参数组合的取值所对应的系统效果评估值。那么,可以通过机器学习模型建立这种映射关系,利用机器学习模型的泛化能力,就可以把没有测试到的参数组合的取值弥补上,从而得到参数组合的所有取值所对应的系统效果。

实施例三

本实施例介绍实施例一中步骤s140的一种具体实现方式。参见图4,图4为本发明实施例三的实现流程图。

在本实施例中,需要从上述系统效果空间中找出最优系统效果及其对应的参数组合取值,该对应的参数组合取值就是推荐系统的最优参数组合。由于系统效果空间中包含的数据量非常大,无法通过直接比较的方式找出最优系统效果,因此,本实施例采用爬山法获取系统效果空间中的最优系统效果。以下参照图4详细介绍。本发明实施例三包括以下步骤:

s141:在参数组合空间中随机选择多个参数组合的取值pi,作为种子样本。

s142:针对每个种子样本pi,采用爬山法在上述映射关系f:p-&gt;e中寻找由该种子样本pi出发能够达到的系统效果极值点ei_max。

爬山法是解多变量无约束最优化问题的一类方法,又称直接搜索法,是通过点的直接移动产生目标值有所改善的点,经过这样的移动,逐步到达使目标函数最优的点。如果把目标函数的几何图形看成一个山峰,那么点的直接移动就像人在爬山,选择方向,逐步向山顶移动。爬山法是按照下述原则进行试探的方法:由这个步骤所达到的终结状态是所有可容许步骤所能达到的终结状态中,最接近最终目标的一个。这样的步骤称为最优步骤。按照这样的原则依次选取步骤,顺序试探下去,直到最终目标为止。如果达不到最终目标,可以回过头来,从已经经历过的某一中间状态开始,改用直接效果稍差一点的次优步骤,沿着另一条分支途径再行试探下去。当然,也可以一下子回转到整个问题的起始状态,沿着另一条全新的途径进行试探。

如图5显示了本发明实施例三中采用爬山法获取系统效果极值点ei_max的一个实现过程。在图5中包括三个坐标轴:x轴、y轴和z轴。其中,x轴、y轴分别对应种子样本中的两个参数(为方便描述,在本实施例中,作为种子样本的参数组合包含两个参数),z轴对应系统效果。

图5中的折线显示了由一个种子样本确定出一个系统效果极值点的实现轨迹。该折线最左下端的点为起始点,起始点的x轴、y轴的值由种子样本中的两个参数的取值决定,起始点的z轴的值为该种子样本所对应的系统效果。通过采用爬山法逐步试探,最终达到终点,即该折线最右上端的点。终点的z轴的值为该点的系统效果,可以看出,该系统效果是由该种子样本出发所能够达到的极大值。

s143:从多个种子样本寻找到的系统效果极值点ei_max中获取最优值,将所述最优值作为所述系统效果空间中的最优系统效果,并获取所述最优系统效果所对应的参数组合取值pbest。

上述过程中确定出的pbest就是推荐系统的最优参数组合,在推荐系统中对全量用户生效。

在本实施例中,之所以要针对多个种子样本采用爬山法获取由种子样本出发能够达到的系统效果极值点,再在这些系统效果极值点中找到最优值,其原因是:映射函数f:p-&gt;e往往是多峰值的。如果仅使用一个种子样本来寻找最优系统效果,那么很有可能找到的只是局部最优点,而非全局最优点。

实施例四

本实施例介绍一种获取推荐系统最优参数组合的装置,如图6为本发明实施例四的获取推荐系统最优参数组合的装置结构示意图,该装置包括:

实验用户筛选模块610,用于筛选多个实验用户。

学习样本生成模块620,用于以实验用户的会话为粒度进行参数试验,得到学习样本,所述学习样本包括参数组合的部分取值及其对应的系统效果评估值。

映射关系生成模块630,用于采用所述学习样本训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系,所述参数组合空间包括参数组合的全部取值。

最优参数获取模块640,用于利用所述映射关系获取系统效果空间中的最优系统效果及其对应的参数组合取值,将获取的参数组合取值作为所述推荐系统的最优参数组合。

其中,实验用户筛选模块610可以根据实际需求,从全量用户中随机抽样一定比例的用户作为实验用户。例如,从全量用户中随机抽样1%的用户作为实验用户。抽样的比例可以按照实际需求设置,抽样比例越高,本实施例装置的处理量越大,但确定最优参数组合的效果更好。

由于参数组合取值的数量庞大,无法在有限的时间内遍历参数组合的所有取值,因此,学习样本生成模块620通过参数试验仅获取参数组合的部分取值所对应的系统效果评估值,至于其余的参数组合取值所对应的系统效果,则由映射关系生成模块630利用机器学习模型得到。

实施例五

本实施例介绍另一种获取推荐系统最优参数组合的装置,如图7为本发明实施例五的获取推荐系统最优参数组合的装置结构示意图,该装置包括:

实验用户筛选模块610,用于筛选多个实验用户。

学习样本生成模块620,用于以实验用户的会话为粒度进行参数试验,得到学习样本,所述学习样本包括参数组合的部分取值及其对应的系统效果评估值。

学习样本生成模块620可以包括:测试子模块621和统计子模块622;

其中,测试子模块621针对每个实验用户分别执行以下操作:

当实验用户的一个会话开始时,随机选取参数组合的一个取值,指示推荐系统采用选取的参数组合的取值进行推荐;记录所述实验用户的行为数据,在所述实验用户的会话结束时,将所述行为数据作为选取的参数组合的取值在所述实验用户的会话中的实际系统效果。

统计子模块622针对随机选取的各个参数组合的取值分别执行以下操作:

获取参数组合的取值在不同实验用户的会话中的实际系统效果;计算所述实际系统效果的平均值,将所述实际系统效果的平均值作为该参数组合的取值所对应的系统效果评估值。

不同于现有技术中以实验用户为粒度更换参数组合取值的方式,测试子模块621以用户的会话为粒度进行参数试验,因此同样的时间内进行参数试验的次数更多,能够更高效地获取参数组合的取值所对应的系统效果评估值。

关于实验用户会话的划分,上述测试子模块621,可以用于当实验用户的当前刷新的起始时刻与上一刷新的最后活跃时刻的间隔超过预先设定的阈值时,将所述实验用户的当前刷新的起始时刻作为所述实验用户的当前会话的开始时刻,并将所述实验用户的上一刷新的最后活跃时刻作为所述实验用户的上一会话的结束时刻。

本实施例提出的推荐系统最优参数组合的装置结构还包括:

映射关系生成模块630,用于采用所述学习样本训练机器学习模型,得到参数组合空间与系统效果空间之间的映射关系,所述参数组合空间包括参数组合的全部取值。

映射关系生成模块630利用机器学习模型的泛化能力,得到了参数组合的全部取值所对应的系统效果,避免了对参数组合的全部取值进行遍历。

映射关系生成模块630生成了参数组合空间和系统效果空间的映射关系,由于系统效果空间中包含的数据量非常大,无法通过直接比较的方式找出最优系统效果,因此,本实施例可以由最优参数获取模块640采用爬山法获取系统效果空间中的最优系统效果及其对应的参数组合的取值。具体的,最优参数获取模块640包括:

种子样本选取子模块641,用于在所述参数组合空间中随机选择多个参数组合的取值,作为种子样本。

极值点获取子模块642,用于针对每个种子样本,采用爬山法在所述映射关系中寻找由该种子样本出发能够达到的系统效果极值点。

最优获取子模块643,用于从由各个种子样本出发能够达到的系统效果极值点中获取最优值,将所述最优值作为所述系统效果空间中的最优系统效果,并获取所述最优系统效果所对应的参数组合取值,将获取的参数组合取值作为所述推荐系统的最优参数组合。

由上述描述可见,本发明实施例五提出的获取推荐系统最优参数组合的装置,以用户的会话为粒度进行参数测试,得到包括参数组合的部分取值及其对应的系统效果评估值的学习样本;并采用该学习样本训练机器学习模型,得到包含参数组合的全部取值的参数组合空间与系统效果空间之间的映射关系,实现了准确高效地获取推荐系统的最优参数组合。

实施例六

本发明实施例六提供一种获取推荐系统最优参数组合的设备,如图8为本发明实施例五的获取推荐系统最优参数组合的设备结构示意图,该设备包括:存储器810和处理器820,存储器810存储有可在处理器820上运行的计算机程序。所述处理器820执行所述计算机程序时实现上述实施例中的获取推荐系统最优参数组合的方法。所述存储器810和处理器820的数量可以为一个或多个。

所述设备还可以包括:

通信接口830,用于与外界设备进行通信,进行数据交换传输。

存储器810可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

如果存储器810、处理器820和通信接口830独立实现,则存储器810、处理器820和通信接口830可以通过总线相互连接并完成相互之间的通信。所述总线可以是工业标准体系结构(isa,industrystandardarchitecture)总线,外部设备互连(pci,peripheralcomponentinterconnect)总线或扩展工业标准体系结构(eisa,extendedindustrystandardarchitecture)等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,并不表示仅有一根总线或一种类型的总线。

可选的,在具体实现上,如果存储器810、处理器820及通信接口830集成在一块芯片上,则存储器810、处理器820及通信接口830可以通过内部接口完成相互间的通信。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以是只读存储器,磁盘或光盘等。

综上所述,本发明实施例提出的获取推荐系统最优参数组合的方法、装置、设备和存储介质,以用户会话为粒度更换参数组合的取值,得到参数组合的部分取值与系统效果评估值的对应关系,能够高效地进行参数试验;并且,将该对应关系作为学习样本训练机器学习模型,得到参数组合的全部取值所对应的系统效果,从而避免了对所有参数组合进行实际测试,达到准确高效地获取最优参数组合。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1