用户行为预测方法和装置与流程

文档序号:11215524阅读:1540来源:国知局
用户行为预测方法和装置与流程

本公开涉及互联网技术领域,尤其涉及一种用户行为预测方法和装置。



背景技术:

很多大型网站的信息功能、功能越来越丰富,然而获取所需信息的复杂度却骤然突增,操作路径越来越深;并且对用户而言,用户间操作习惯差异大、操作内容不尽相同,网站的结构一致缺乏个性化导致用户使用效率降低,体验下降。

为了提高用户体验,可通过用户行为分析来实现。用户行为分析是指在获得用户在网络的操作行为的相关数据的情况下,对相关数据进行统计分析,从而获取用户的特征(比如用户的群体构成和喜好等),以及为后续相关操作提供依据,比如后续内容的预取以及网站结构的优化。

目前,现有技术提供了一种基于概率后缀树pst的用户行为学习方法,依据无线网络中的业务对网络qos要求的不同,将基于业务的用户行为分为4类:无业务、会话类业务、交互类业务、流媒体类业务,产生4进制用户行为状态序列;通过学习构建概率后缀树(pst)训练用户行为序列,并采用可变长markov模型预测下时段可能发生的用户行为,即可根据预测的业务行为选择适合的网络资源为用户提供高质量的业务。

然而,现有的用户行为学习方法,在预测准确性有待进一步提高。



技术实现要素:

鉴于现有技术中的上述缺陷或不足,期望提供一种能够提高预测准确性的用户行为预测方案。

第一方面,本申请实施例提供了一种用户行为预测方法,所述方法包括:

获取当前操作事件的操作状态及其对应的当前账户状态;

将当前操作事件的操作状态及其对应的当前账户状态输入至当前的用户行为预测模型;以及

由所述用户行为预测模型输出当前操作事件之后的预测行为;

其中,所述用户行为预测模型基于预先获取的用户操作事件日志和用户账户状态日志训练得到。

第二方面,本申请实施例还提供了一种用户行为预测装置,包括:

状态获取单元,配置用于获取当前操作事件的操作状态及其对应的当前账户状态;

状态输入单元,配置用于将当前操作事件的操作状态及其对应的当前账户状态输入至当前的用户行为预测模型,其中,所述用户行为预测模型基于预先获取的用户操作事件日志和用户账户状态日志训练得到;

预测输出单元,配置用于由所述用户行为预测模型输出当前操作事件之后的预测行为。

第三方面,本申请实施例还提供了一种计算设备,包括一个或多个处理器以及存储器,所述存储器包含可由所述处理器执行的指令以使得所述处理器执行本申请实施例提供的所述用户行为预测方法。

第四方面,本申请实施例还提供了一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行所述用户行为预测方法。

本申请实施例提供的用户行为预测方案,将当前账户状态和当前操作事件的操作状态输入至当前的用户行为预测模型;以及由基于预先获取的用户操作事件日志和用户账户状态日志训练得到的用户行为预测模型输出当前操作事件之后的预测行为。相较于现有根据用户行为状态序列来预测,通过用户操作事件日志和用户账户状态日志训练所得到的行为预测模型,能够得到更为准确的预测。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出了其中可以应用本申请实施例的示例性系统架构;

图2示出了根据本申请实施例的用户行为预测方法的示例性流程图;

图3示出了根据本申请一个实施例的用户行为预测模型训练方法的示例性流程图;

图4示出了根据本申请一个实施例的用户行为预测装置的示例性结构框图;

图5示出了根据本申请一个实施例的用户行为预测系统的示例性结构框图;以及

图6示出了适于用来实现本申请实施例的计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

请参考图1,其示出了可以应用本申请实施例的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、网络103和服务器104、105、106和107。网络103用以在终端设备101、102和服务器104、105、106、107之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户110可以使用终端设备101、102通过网络103与服务器104、105、106、107交互,以访问各种服务。终端设备101、102上可以安装有各种客户端应用。

终端设备101、102可以是各种电子设备,包括但不限于个人电脑、智能手机、智能电视、平板电脑、个人数字助理、电子书阅读器等等。

服务器104、105、106、107可以是提供各种服务的服务器。服务器可以响应于用户的服务请求而提供服务。可以理解,一个服务器可以提供一种或多种服务,同一种服务也可以由多个服务器来提供。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

如背景技术中所提到的,现有技术通过markov(马尔科夫)链模型或其变种来预测用户行为,预测用户后续操作,基于此来进行内容预取,改变网站结构等优化来提升用户体验。然而简单的markov链模型及其变种主要刻画用户在当前操作与下一个操作之间的关系,无法刻画出用户更为本质的操作意图,导致其预测准确性很低。

鉴于现有技术的上述缺陷,本申请实施例提供了一种用户行为预测方案,由基于预先获取的用户操作事件日志和用户账户状态日志训练得到的用户行为预测模型输出当前操作事件之后的预测行为。相较于当前操作与下一个操作之间的关系,用户操作事件日志中挖掘出的用户操作序列以及每个操作对应的账户状态实际上能更好的表达用户的操作意图,将这些信息输入到深度神经网络进行训练能更好的挖掘出操作意图特征,基于该模型来预测用户操作行为,从而提高预测的准确性。

下面将结合流程图来描述本申请实施例的方法。

参考图2,其示出了根据本申请一个实施例的用户行为预测方法的示例性流程图。图2所示的方法可以在图1中的服务器端执行。

如图2所示,在步骤210中,获取当前操作事件的操作状态及其对应的当前账户状态。

为了预测当前操作事件的后续行为,本申请实施例中,获取当前操作事件的操作状态,以及该操作对应的当前账户状态。

步骤220中,将当前操作事件的操作状态及其对应的当前账户状态输入至当前的用户行为预测模型。

其中,用户行为预测模型基于预先获取的用户操作事件日志和用户账户状态日志训练得到。

本申请实施例中,用户行为预测模型是线上训练或预先线下训练的;当前的用户行为预测模型可以是指当前线上所使用的用于在线预测用户行为的用户行为预测模型;或者可以是指当前线下用于离线预测用户行为的用户行为预测模型。

关于用户行为预测模型的训练将在后续详细介绍,此处不再详述。

步骤230中,由用户行为预测模型输出当前操作事件之后的预测行为。

本申请实施例中,由基于预先获取的用户操作事件日志和用户账户状态日志训练得到的用户行为预测模型输出当前操作事件之后的预测行为。相较于现有根据用户行为状态序列来预测,通过用户操作事件日志和用户账户状态日志训练所得到的行为预测模型,能够得到更为准确的预测。

图3示出了根据本申请一个实施例的用户行为预测模型的训练方法的示例性流程图。

如图3所示,在步骤310中,获取设定时间内的用户操作事件日志及其对应的用户账户状态日志。

具体地,可以首先采集设定时间段内的用户操作事件日志。

其中,用户操作事件日志可以包括:该时间段内涉及的所有操作事件,以及每个操作事件的用户会话标识sessionid、操作事件前的操作状态、操作事件本身的操作状态和操作事件触发后的操作状态。

操作状态主要是指操作事件当前所处页面或ajaxurl(asynchronousjavascriptandxmluniformresourcelocator,异步爪哇脚本和可扩展标记语言统一资源定位符)。

继而,基于用户操作事件日志中的sessionid,获取对应的用户账户状态日志。其中,获取的用户账户状态日志含有对应的用户操作事件日志中每个操作事件的账户状态信息,包括:操作事件前的账户状态和操作事件触发后的账户状态。

在步骤320中,对获取的用户操作事件日志和用户账户状态日志进行预处理,形成深度神经网络模型的训练数据。

具体地,可以合并用户操作事件日志和用户账户状态日志,形成事件流日志并存储。其中,基于操作事件和账户状态的对应关系,将步骤310获取的用户操作事件日志中的操作事件与用户账户状态日志中对应的账户状态进行合并操作,形成事件流日志;并进行持久化存储。

本申请实施例中,按照设定粒度拉取存储的事件流日志;继而,对拉取出的事件流日志进行数据标注并序列化成深度神经网络模型的训练数据。

其中拉取事件流日志的粒度由本领域技术人员根据实际需求进行预先设定,例如,每天、每小时等。

针对拉取出的存储的事件流日志,可以预先进行非必要数据的过滤、必要数据的特征抽取等一系列操作,进而针对必要数据进行数据标注。

其中,必要数据主要包括:任一操作事件的操作事件前的操作状态、操作事件本身的操作状态、操作事件前的账户状态。

基于事件流日志中对应该操作事件的操作事件触发后的操作状态,对抽取出的对应的必要数据特征进行数据标注。

这样,完成对抽取的必要数据的特征的数据标注后,进行序列化形成深度神经网络模型的训练数据。

步骤330中,利用训练数据完成模型训练,得到用户行为预测模型。

本申请实施例中,用户行为预测模型为深度神经网络模型,其根据预设粒度不断获取新的训练数据进行迭代学习,可提高预测准确度。

本申请实施例中,利用训练数据完成模型训练,得到用户行为预测模型之后,还可以将线上的用户行为预测模型更新为当前训练好的用户行为预测模型。

从上面描述可以看出,在本申请的实施例中,针对预测准确性的提高问题,提出了基于用户操作事件和对应的账户状态进行后续操作的预测方案。这样基于更多维度的信息来预测用户行为,可提高预测的准确性。

参考图4,其示出了根据本申请一个实施例的用户行为预测装置400的示例性结构框图。

如图4所示,用户行为预测装置400可以包括:状态获取单元401、状态输入单元402和预测输出单元403。

状态获取单元401配置用于获取当前操作事件的操作状态及其对应的当前账户状态。

状态输入单元402配置用于将当前操作事件的操作状态及其对应的当前账户状态输入至当前的用户行为预测模型,其中,所述用户行为预测模型基于预先获取的用户操作事件日志和用户账户状态日志训练得到。

预测输出单元403配置用于由用户行为预测模型输出当前操作事件之后的预测行为。

进一步地,如图4所示,用户行为预测装置400还可以包括:模型训练单元404。

模型训练单元404配置用于获取设定时间内的用户操作事件日志及其对应的用户账户状态日志;对获取的用户操作事件日志和用户账户状态日志进行预处理,形成深度神经网络模型的训练数据;利用训练数据完成模型训练,得到用户行为预测模型。

本申请实施例中,具体地,模型训练单元404可以采集设定时间内的用户操作事件日志。

其中,用户操作事件日志包括:该时间段内涉及的所有操作事件、以及每个操作事件的用户会话标识、操作事件前的操作状态、操作事件本身的操作状态,以及操作事件触发后的操作状态。操作状态主要是指操作事件当前所处页面或ajaxurl。

继而,模型训练单元404基于所述用户会话标识,获取对应的用户账户状态日志。其中,用户账户状态日志含有对应的用户操作事件日志中每个操作事件的账户状态信息,包括:操作事件前的账户状态和操作事件触发后的账户状态。

接着,模型训练单元404合并获取的用户操作事件日志和用户账户状态日志,形成事件流日志并存储;按照设定粒度拉取存储的事件流日志;对拉取出的事件流日志进行数据标注并序列化成深度神经网络模型的训练数据;利用所述训练数据完成模型训练,得到用户行为预测模型。

进一步地,本申请实施例中,用户行为预测装置400还可以包括:模型更新单元。

模型更新单元配置用于将线上的用户行为预测模型更新为当前训练好的用户行为预测模型。

应当理解,用户行为预测装置400中记载的诸单元与参考图2-图3描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于用户行为预测装置400及其中包含的单元,在此不再赘述。

参考图5,其示出了根据本申请一个实施例的用户行为预测系统500的示例性结构框图。

如图5所示,用户行为预测系统500可以包括:事件流日志服务器501、模型训练服务器502、模型服务器503、线上web服务器504、以及浏览器505。

其中,事件流日志服务器501可以从浏览器505采集用户操作事件日志;用户操作事件日志可以包括:该时间段内涉及的所有操作事件,以及每个操作事件的用户会话标识sessionid、操作事件前的操作状态、操作事件本身的操作状态和操作事件触发后的操作状态。

继而,事件流日志服务器501基于用户操作事件日志中的sessionid,获取对应的用户账户状态日志。其中,获取的用户账户状态日志含有对应的用户操作事件日志中每个操作事件的账户状态信息,包括:操作事件前的账户状态和操作事件触发后的账户状态。

事件流日志服务器501合并用户操作事件日志和用户账户状态日志,形成事件流日志并存储。

模型训练服务器502按照设定粒度拉取存储的事件流日志;继而,对拉取出的事件流日志进行数据标注并序列化成深度神经网络模型的训练数据;利用训练数据完成模型训练,得到用户行为预测模型。

模型服务器503将线上的用户行为预测模型更新为当前训练好的用户行为预测模型。

线上web服务器504获取当前操作事件的操作状态及其对应的当前账户状态,并将获取的当前操作事件的操作状态和当前账户状态发送至模型服务器503。

模型服务器503利用更新后的用户行为预测模型,根据线上web服务器504发送的当前操作事件的操作状态和当前账户状态,输出当前操作事件的预测行为并反馈给线上web服务器504。这样,线上web服务器504可以根据预测行为,进行数据预取、改变网站结构等优化来提高用户的操作效率从而提升用户体验。

进一步地,本申请实施例还提供了一种计算设备,包括一个或多个处理器以及存储器;其中,存储器包含可由处理器执行的指令以使得处理器执行图2-图3的方法。

下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机设备600的结构示意图。

如图6所示,计算机设备600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有设备600操作所需的各种程序和数据。cpu601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本公开的实施例,上文参考图2-图3描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图2-图3的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中。这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的公式输入方法。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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