通过强化学习向用户展示页面的方法及装置与流程

文档序号:18188307发布日期:2019-07-17 05:27阅读:244来源:国知局
通过强化学习向用户展示页面的方法及装置与流程

本说明书一个或多个实施例涉及机器学习领域,尤其涉及利用强化学习向用户展示页面的方法和装置。



背景技术:

在信息时代,各种各样的信息通过页面展示给用户。例如,各种资讯可以通过web页面展示给用户,各种应用app也是通过一个个应用页面展示给用户,比如淘宝手机客户端的商品推荐页面。如何展示页面能最大地满足用户的需求是一个很重要的问题。

通常,由专门的产品经理或者设计人员来进行页面设计,决定页面的展示方式。然而,这种方案严重依赖产品经理或设计人员的经验,人工成本高,而且可能会发生产品设计偏离用户需求的情况。此外,有时候也会采用a/b测试的方式决定展示方案,然而,这样的方式至多可以选择出多数人喜欢的一种页面展示方案,无法实现展示方式的千人千面,无法最大程度地满足不同用户的需求。

因此,希望能有改进的方案,可以针对不同用户确定出最适合的页面展示方式,如此满足用户需求,提升用户使用体验。



技术实现要素:

本说明书一个或多个实施例描述了一种向用户展示页面的方法和装置。根据实施例的方法,采用强化学习的方式,通过展示策略基于用户的用户特征确定出对应的页面布局,如此,为用户提供适合的页面展示方式。

根据第一方面,提供了一种通过强化学习向用户展示页面的方法,包括:

响应于第一用户访问第一页面的请求,获取该第一用户的用户特征,所述用户特征包括用户画像特征和用户上下文特征;

根据展示策略,将所述用户特征映射到针对所述第一页面形成的第一数目的可选页面布局中的第一页面布局;

以所述第一页面布局向所述第一用户展示所述第一页面;

获取所述第一用户对具有所述第一页面布局的第一页面的操作信息,并根据所述操作信息确定本次页面展示的奖励分数;

至少根据所述奖励分数,采用强化学习算法更新所述展示策略,用于进行页面展示。

在一个实施例中,所述用户画像特征包括以下中的至少一项:年龄、性别、注册时长、教育程度、职业、人群标签;

所述用户上下文特征包括以下中的至少一项:发出所述请求的时间、发出所述请求经由的接口、用户的操作轨迹信息。

根据一种实施方式,上述第一数目的可选页面布局通过以下方式预先形成:

确定可选的页面显示方式;

确定第一页面上页面元素的可选排列方式;

确定所述页面元素的可选属性;

通过组合所述页面显示方式,所述可选排列方式和所述可选属性,形成所述第一数目的可选页面布局。

更具体的,在一个实施例中,所述可选的页面显示方式包括,瀑布流显示和翻页显示;所述可选属性包括,页面元素的显示大小,显示形状,以及分辨率。

在一个实施例中,所述展示策略包括初始策略,相应的,将所述用户特征映射到针对所述第一页面预先形成的多个页面布局中的第一页面布局包括:

将所述第一用户随机分到第一数目的流量桶中的第一流量桶,其中所述第一数目的流量桶与所述第一数目的可选页面布局相对应;

将第一流量桶所对应的可选页面布局作为所述第一页面布局。

根据不同实施方式,所述展示策略可以通过以下之一来实现:逻辑回归模型,梯度提升决策树gbdt模型,深度神经网络。

在一个实施例中,上述操作信息包括以下中的至少一项:在页面中的点击次数,对页面的访问次数,对页面的浏览深度,在页面的停留时间;相应的,可以将所述奖励分数确定为,以上操作信息中至少一项的加权求和。

在一个实施例中,操作信息包括,基于该第一页面达成的交易金额;相应的,可以将所述奖励分数确定为,正比于所述交易金额。

根据一种实施方式,至少根据所述奖励分数,采用强化学习算法更新所述展示策略,包括:

将所述用户特征、所述第一页面布局和所述奖励分数作为一条训练样本,添加到训练样本集中;

采用强化学习算法,利用所述训练样本集更新所述展示策略。

在不同实施方式中,强化学习算法可以是以下之一:进化策略算法,q-learning算法,sarsa算法,策略梯度算法,交叉信息熵方法。

根据第二方面,提供了一种通过强化学习向用户展示页面的装置,包括:

特征获取单元,配置为响应于第一用户访问第一页面的请求,获取该第一用户的用户特征,所述用户特征包括用户画像特征和用户上下文特征;

布局确定单元,配置为根据展示策略,将所述用户特征映射到针对所述第一页面形成的第一数目的可选页面布局中的第一页面布局;

展示单元,配置为以所述第一页面布局向所述第一用户展示所述第一页面;

反馈获取单元,配置为获取所述第一用户对具有所述第一页面布局的第一页面的操作信息,并根据所述操作信息确定本次页面展示的奖励分数;

更新单元,配置为至少根据所述奖励分数,采用强化学习算法更新所述展示策略,用于进行页面展示。

根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。

根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。

根据本说明书实施例提供的方法和装置,可以在无标注的情况下,通过强化学习的策略探索和策略更新,学习到页面展示策略,该页面展示策略可以针对不同用户确定出最适合的页面展示方式,如此实现页面展示的千人千面,满足用户的个性化需求,提升用户使用体验。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出典型的强化学习系统的示意图;

图2示出本说明书披露的一个实施例的实施场景示意图;

图3示出根据一个实施例的向用户展示页面的方法流程图;

图4示出根据一个实施例的装置示意图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

为了针对不同用户进行个性化、针对性的页面展示,根据本说明书实施例,采用强化学习的构思和方式,为用户确定适合的页面展示方案。如本领域技术人员所知,强化学习是一种基于序列行为的反馈,进行的无标注的学习方法,通过不断“试错”的方式进行策略的学习。

图1示出典型的强化学习系统的示意图。如图1所示,一般地,强化学习系统包括智能体和执行环境,智能体通过与执行环境的交互和反馈,不断进行学习,优化其策略。具体而言,智能体观察并获得执行环境的状态(state),根据一定策略,针对当前执行环境的状态确定要采取的行为或动作(action)。这样的行为作用于执行环境,会改变执行环境的状态,同时产生一个反馈给智能体,该反馈又称为奖励分数(reward)。智能体根据获得的奖励分数来判断,之前的行为是否正确,策略是否需要调整,进而更新其策略。通过反复不断地观察状态、确定行为、收到反馈,使得智能体可以不断更新策略,最终目标是能够学习到一个策略,使得获得的奖励分数累积最大化。

图2示出本说明书披露的一个实施例的实施场景示意图。根据本说明书的一个或多个实施例,在强化学习的构思下,在用户请求进行页面访问时,提取用户的相关特征(相当于获取执行环境的状态s),采用一定展示策略确定该用户适合的页面布局进行展示(相当于确定出采取的动作a)。然后,将用户对页面的交互和操作信息作为反馈的奖励分数r,以此作为学习样本更新展示策略。如此反复学习,通过不断摸索和“试错”,来优化展示策略。于是,优化的展示策略即可用于,为不同用户确定出最为适合的页面展示方式。

下面描述以上构思的具体实现方法。

图3示出根据一个实施例的向用户展示页面的方法流程图。可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。如图3所示,该方法包括:步骤31,响应于第一用户访问第一页面的请求,获取该第一用户的用户特征,所述用户特征包括用户画像特征和用户上下文特征;步骤32,根据展示策略,将所述用户特征映射到针对所述第一页面形成的第一数目的可选页面布局中的第一页面布局;步骤33,以所述第一页面布局向所述第一用户展示所述第一页面;步骤34,获取所述第一用户对具有所述第一页面布局的第一页面的操作信息,并根据所述操作信息确定本次页面展示的奖励分数;步骤35,至少根据所述奖励分数,采用强化学习算法更新所述展示策略,用于进行页面展示。下面描述以上各个步骤的具体执行。

首先,在步骤31,响应于第一用户访问第一页面的请求,获取该第一用户的用户特征。需要理解的是,此处的第一用户指代的是,任意一个具体用户;上述第一页面可以是任意的一个页面。例如,第一页面可以是web页面,也可以是app页面。更具体的,在一个例子中,第一页面为天猫app首页页面或商品推荐页面。

如此,在第一用户请求访问第一页面时,获取该第一用户的用户特征。用户特征可以包括用户画像特征。在一个实施例中,用户画像特征可以包括用户的基本属性特征,例如年龄、性别、注册时长、教育程度、职业等等。

在一个实施例中,用户画像特征还可以包括,可以直接反映用户特点的人群标签。通常,人群标签可以基于用户属性特征,以及用户的历史大数据而确定。已经存在多种将用户划分为人群的方案,这些方案通过聚类、分组等多种方式,为用户添加人群标签,例如“职场新人”,“全职辣妈”等等。步骤31中可以采取各种已知的划分人群的方案得到上述人群标签;或者,也可以预先采用各种划分人群的方案为用户添加标签,在步骤31,读取用户所具有的人群标签。

用户特征还可以包括用户上下文特征。在一个实施例中,用户上下文特征可以包括,发出页面请求的时间,例如,早上、工作时间、晚上等等。用户上下文特征还可以包括,发出页面请求经由的接口,例如,用户经由哪个页面或哪个链接发出当前的页面请求。用户上下文特征还可以包括,用户的操作轨迹信息,也就是,用户在发出页面请求之前进行了哪些操作,例如,访问了哪些历史页面,在历史页面上进行了什么操作(点击,放大,缩小,输入),等等。

以上获取的用户特征即相当于强化学习系统中,执行环境的当前状态s。接着,就需要根据策略,确定当前状态s下应该采取的动作a。于是,在步骤32,根据展示策略,将上述用户特征映射到针对第一页面形成的n个可选页面布局中的第一页面布局。

上述针对第一页面的n个可选页面布局可以通过多种方式预先形成。

在一个实施例中,预先针对第一页面,确定可选的页面显示方式。具体的,对于app页面来说,可选的页面显示方式可以包括,瀑布流显示和翻页显示。对于web页面来说,可选的页面显示方式可以包括,单页显示、下拉式显示,等等。

此外,还确定第一页面上页面元素的可选排列方式。例如,页面元素分为几行进行展示,每行展示几个元素,等等。还可以确定页面元素的可选属性,这些可选属性包括,页面元素的显示大小,显示形状,以及分辨率,等等。

通过组合上述页面显示方式,页面元素的可选排列方式和可选属性,就可以形成多个可选页面布局。

此外,在一些实施例中,还可以进一步对更多与页面显示相关的因素进行选择,例如,页面的背景颜色,页面的字体风格,页面的屏幕亮度,等等。通过进一步选择上述因素,对页面布局方式进行进一步修改调整,得到更多的可选页面布局。

更具体的,假如第一页面是电商app(例如手机天猫)的商品推荐页面,其中的页面元素为待展示商品。那么,可以将2种不同的页面展示方式(瀑布流和翻页),m种不同的商品排列方式(例如,每行4个商品,每行3个商品,等等),k种商品属性选择(例如,商品图片的大小,形状,分辨率)进行组合,得到n=2*m*k个可选页面布局。

在另一实施例中,也可以由设计人员根据不同人群、不同风格,预先设计多个可选页面布局,作为上述n个可选页面布局。

上述预先形成的n个可选页面布局相当于n个可选的动作,也就是构成n维动作空间。相应的,步骤32中的展示策略用于根据用户特征,从n维动作空间中,选择出适当的动作,即适当的页面布局。换而言之,展示策略相当于一个映射函数,该映射函数用于将用户特征映射到n个可选页面布局中的一个页面布局,下文称为第一页面布局。

在一个实施例中,上述映射函数可以通过n分类算法实现,每个分类对应一个可选页面布局。如此,展示策略根据上述用户特征,将用户划分到n个分类中的一个,由此确定出对应的可选页面布局。

根据不同实施方式,上述展示策略可以通过各种机器学习模型来实现,例如包括,逻辑回归模型,梯度提升决策树gbdt模型,深度神经网络等。

初始地,该展示策略可以是随机策略,通过随机方式决定当前的第一用户适合的可选页面布局。具体的,在一个实施例中,将线上的流量划分为n个流量桶,n个流量桶与n个可选页面布局相对应。于是,当前的第一用户将会被随机分到n个流量桶中的某个,记为第一流量桶。相应的,可以将第一流量桶所对应的可选页面布局作为针对第一用户选择的第一页面布局。

当然,以上的随机策略是初始进行“试错”和策略摸索过程中的临时策略。展示策略会通过用户反馈不断进行优化和更新调整,这将在后续继续进行描述。

在步骤32中针对第一用户确定出对应的第一页面布局之后,在步骤33,以第一页面布局向该第一用户展示第一页面。这相当于向执行环境发出了执行动作a。

接着,在步骤34,获取第一用户对具有第一页面布局的第一页面的操作信息,并根据所述操作信息确定本次页面展示的奖励分数。

可以理解,强化学习中的奖励分数是对之前作出的动作a是否正确的一种衡量,也是后续策略调整的主要依据。策略调整的目标就是使得,作出的动作a获得的奖励分数的累积最大化。在页面展示的场景中,策略训练的目标是使得,展示策略确定出的页面布局能够获得最大的用户满意度,和/或,页面平台通过该页面获得最大的收益。因此,可以将奖励分数设定为,通过用户对页面的操作行为,表征用户对页面的满意度,和/或页面平台的收益大小。

具体而言,在将第一页面布局的第一页面返回给第一用户后,在一个实施例中,可以获取第一用户对第一页面的以下操作信息中的一项或多项:在页面中的点击次数a1,对页面的浏览深度a2,对页面的访问次数a3,在页面的停留时间a4,等等。可以设想,以上这些操作信息与用户的满意度具有正相关的关系,因为在用户对第一页面的页面布局不满意的情况下,会更倾向于离开页面或放弃操作。

因此,在一个实施例中,将本次页面展示的奖励分数确定为,以上操作信息中至少一项的加权求和。例如,在一个例子中,将奖励分数确定为:

r=w1*a1+w4*a4(1)

其中,w1和w4为权重因子。

在一个实施例中,上述第一页面是与交易相关的页面,例如电商app页面。在这样的情况下,可以获取用户的以下操作信息:基于该第一页面达成的交易金额tx,例如购买金额。在此基础上,可以将本次页面展示的奖励分数r确定为,正比于所述交易金额tx,即:

r=w*tx(2)

在一个实施例中,还可以将以上奖励分数的确定方式相组合,得到更多奖励分数的具体表征方式。

例如,在一个例子中,可以将奖励分数确定为:

r=w1*a1+w*tx(3)

即,奖励分数为用户在第一页面中的点击次数a1和交易金额的加权求和。

如此,获取到用户对第一页面的操作信息,并据此确定出奖励分数作为本次页面展示的反馈信息。

接着,在步骤35,至少根据所述奖励分数,采用强化学习算法更新展示策略,用于进行页面展示。根据强化学习中策略更新的构思,在本说明书实施例中,根据反馈信息(即奖励分数)不断更新展示策略,更新的目标是使得,对于同样的用户特征(环境状态s),展示策略确定出的页面布局(动作a)可以获得更多的预期累积奖励分数。

为了达到这样的目标,在一个实施例中,每获取到一个用户的奖励分数,就执行一次策略更新。例如,可以采用sarsa算法,基于当前展示策略直接执行一次动作选择,然后用本次动作选择作为样本更新当前策略。

在更普遍的情况下,收集多个用户对多个页面布局的反馈信息作为训练样本集,利用训练样本集训练展示策略,对展示策略进行更新。

具体的,对于前述的第一用户,在第一用户对第一页面布局的第一页面进行操作,从而得到本次页面展示的奖励分数后,将第一用户的用户特征(相当于环境状态s),第一页面布局(相当于动作a),奖励分数(r)作为一条训练样本,添加到训练样本集中。如此,训练样本集中包含多条<s,a,r>形式的训练样本。在一个实施例中,在持续交互的场景下,还获取第一用户在对第一页面布局进行操作之后,新的用户特征(其中用户画像特征不会发生变化,但是上下文特征有可能发生变化),这相当于获取到,执行动作a后执行环境迁移到的新的状态s’。如此,形成<s,a,r,s’>形式的训练样本。

接着,采用强化学习算法,利用训练样本集更新展示策略。根据不同实施例,可以采取多种强化学习算法进行训练,这些强化学习算法包括:进化策略算法,q-learning算法,策略梯度算法,交叉信息熵方法,等等。

下面结合典型的q-learning算法,描述展示策略的更新过程。

展示策略的更新可以包括,策略的评估和策略改进。在q-learning算法中,采用状态-动作值函数(state-actionvaluefuction)q来表示期望的累积奖励。状态-动作值函数又称为q函数,其中q(s,a)表示,从状态s出发,执行动作a后再使用策略π带来的累积奖励分数。q函数的值称为q值。累积奖励分数的计算通常可采用t步累积奖励或γ折扣累积奖励的形式,以下是q函数在这两种形式下的表达:

其中下标t表示后续执行的步数,rt为t步的奖励分数。

如前所述,收集了多条<s,a,r,s’>形式的训练样本,通过这些训练样本,可以确定出不同状态s下施加不同动作a后得到的奖励分数r,进而学习到,不同状态s下施加不同动作a对应得到的q值。

在进行策略更新时,如果采用贪心算法,就可以得到这样的展示策略:对于当前用户特征构成的状态s,确定该状态s下展示n个可选页面布局(即施加n种不同动作)各自的q值,选择n个q值中最大q值所对应的页面布局作为展示布局。

策略梯度算法则采用不同的策略评估和更新方式。该算法中并不涉及q函数的学习和评估,而是直接针对loss更小的展示策略确定出策略参数调整的梯度,按照确定出的梯度进行策略调整。

其他强化学习算法在此不一一进行描述。通过这些算法,可以对页面的展示策略进行更新,更新的方向是使得,展示的页面布局得到更多的累积奖励分数,也就是得到更大的用户满意度。如此更新得到的展示策略即可用于,针对不同用户确定出最适合的页面布局方式。

综合以上,根据以上实施例的方案,可以在无标注的情况下,通过强化学习的策略探索和策略更新,学习到页面展示策略,该页面展示策略可以针对不同用户确定出最适合的页面展示方式,如此实现页面展示的千人千面,满足用户的个性化需求,提升用户使用体验。

根据另一方面的实施例,还提供一种通过强化学习向用户展示页面的装置。该装置可以部署在任何具有计算、处理能力的设备或平台上。图4示出根据一个实施例的装置示意图。如图4所示,该装置400包括:

特征获取单元41,配置为响应于第一用户访问第一页面的请求,获取该第一用户的用户特征,所述用户特征包括用户画像特征和用户上下文特征;

布局确定单元42,配置为根据展示策略,将所述用户特征映射到针对所述第一页面形成的第一数目的可选页面布局中的第一页面布局;

展示单元43,配置为以所述第一页面布局向所述第一用户展示所述第一页面;

反馈获取单元44,配置为获取所述第一用户对具有所述第一页面布局的第一页面的操作信息,并根据所述操作信息确定本次页面展示的奖励分数;

更新单元45,配置为至少根据所述奖励分数,采用强化学习算法更新所述展示策略,用于进行页面展示。

在一个实施例中,上述用户画像特征包括以下中的至少一项:年龄、性别、注册时长、教育程度、职业、人群标签;所述用户上下文特征包括以下中的至少一项:发出所述请求的时间、发出所述请求经由的接口、用户的操作轨迹信息。

根据一种实施方式,上述第一数目的可选页面布局通过以下方式预先形成:

确定可选的页面显示方式;

确定第一页面上页面元素的可选排列方式;

确定所述页面元素的可选属性;

通过组合所述页面显示方式,所述可选排列方式和所述可选属性,形成所述第一数目的可选页面布局。

更具体的,在一个实施例中,上述可选的页面显示方式包括,瀑布流显示和翻页显示;上述可选属性包括,页面元素的显示大小,显示形状,以及分辨率。

在一个实施例中,上述展示策略可以是初始策略,相应的,布局确定单元42配置为:

将所述第一用户随机分到第一数目的流量桶中的第一流量桶,其中所述第一数目的流量桶与所述第一数目的可选页面布局相对应;

将第一流量桶所对应的可选页面布局作为所述第一页面布局。

在不同实施方式中,所述展示策略通过以下之一来实现:逻辑回归模型,梯度提升决策树gbdt模型,深度神经网络。

根据一种实施方式,操作信息可以包括以下中的至少一项:在页面中的点击次数,对页面的访问次数,对页面的浏览深度,在页面的停留时间;

相应的,所述反馈获取单元44配置为:将所述奖励分数确定为,所述操作信息中至少一项的加权求和。

根据一种实施方式,操作信息可以包括,基于该第一页面达成的交易金额;

相应的,所述反馈获取单元44可以配置为:将所述奖励分数确定为,正比于所述交易金额。

在一个实施例中,所述更新单元45配置为:

将所述用户特征、所述第一页面布局和所述奖励分数作为一条训练样本,添加到训练样本集中;

采用强化学习算法,利用所述训练样本集更新所述展示策略。

根据不同的实施方式,所述强化学习算法可以包括:进化策略算法,q-learning算法,sarsa算法,策略梯度算法,交叉信息熵方法。

通过以上的装置,可以为不同用户提供各自适合的页面布局,从而提升用户体验。

根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图3所描述的方法。

根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图3所述的方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

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