本公开涉及互联网技术领域,尤其涉及一种用于预测用户行为的方法和装置以及计算设备。
背景技术:
随着互联网技术的发展,O2O(Online to Offline,线上到线下)已经兴起成为一种为广大消费者所接受的商业模式。O2O的基本商业逻辑是,用户在线上平台浏览甚至预先支付,然后到线下消费体验。对于这种商业模式中的商家而言,用户从线上浏览到线下消费的转化是一项非常重要的数据,收集到完整的用户转化数据对于O2O商家追踪其营销效果等各项工作都有着极大的帮助。然而,由于O2O商业模式中存在线上与线下之间信息不闭环的问题,导致线上平台无法获取到其给线上商家带来的所有转化数据。
目前用户转化数据的收集主要通过下面一种基于经验的方法。用户在O2O平台(例如网站或应用)访问一家门店后,如果在后续一段时间内有线上消费行为,则被计为一次有效的线上转化;如果用户后续一段时间内没有线上消费行为,但是有其他的行为(比如点击评论或给商家打电话),则可以使用基于经验设定的系数,给平台收集到的这些非消费行为计算粗略的转化数。例如,用户浏览了某家门店后,在当天的某个时间给商家打了一个电话,基于经验设定得知电话后有约10%的概率去门店消费,则该行为被计为0.1次转化。最后,整合以上两种情况下的计数,得到最终的用户转化数据。
然而,上述基于经验设定系数预测的用户行为与实际的消费转化行为可能存在较大的区别,而且使用固定的系数也没有考虑到不同环境下的消费转化概率,因此往往会导致用户的消费转化被错误的估计。
技术实现要素:
本公开的目的是提供一种用于预测用户行为的方法和装置以及计算设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的第一方面,提供一种用于预测用户行为的方法,包括:处理当前的用户行为日志得到无目标行为的第一用户数据;从所述第一用户数据中提取对应行为特征;以及根据提取的所述对应行为特征和历史数据来预测所述第一用户数据对应的用户行为转化成所述目标行为的概率。
根据本公开实施例的第二方面,提供一种用于预测用户行为的装置,包括:预处理模块,设置为处理当前的用户行为日志得到无目标行为的第一用户数据;特征提取模块,设置为从所述第一用户数据中提取对应行为特征;以及行为预测模块,设置为根据提取的所述对应行为特征和历史数据来预测所述第一用户数据对应的用户行为转化成所述目标行为的概率。
根据本公开实施例的第三方面,提供一种存储有计算机程序的存储介质,所述计算机程序在由计算设备的处理器运行时,使所述计算设备执行如以上任一实施例所述的方法。
根据本公开实施例的第四方面,提供一种计算设备,包括:处理器;存储器,存储有可由所述处理器执行的指令;其中所述处理器被配置为执行如以上任一实施例所述的方法。
根据本公开的实施例,通过基于历史数据训练的非线性模型来预测用户的目标行为,能够提高预测用户行为转化的精度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
图1为根据本公开一实施例用于预测用户行为的方法流程图。
图2为根据本公开另一实施例用于预测用户行为的方法流程图。
图3为根据本公开再一实施例用于预测用户行为的方法流程图。
图4为图3所示方法中模型训练的实施例流程图。
图5为图4所示方法中转化预测的实施例流程图。
图6为根据本公开一实施例用于预测用户行为的装置示意框图。
图7为根据本公开另一实施例用于预测用户行为的装置示意框图。
图8为根据本公开一实施例的计算设备示意框图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种用于预测用户行为的方法和装置以及介质和计算设备。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
图1为根据本公开一实施例用于预测用户行为的方法流程图,如图所示,本实施例的方法包括以下步骤S101-S103。在一个实施例中,本实施例的方法可由与用户终端通信的服务器等计算设备来执行。
在步骤S101中,处理当前的用户行为日志得到无目标行为的第一用户数据。
当前的用户行为日志是与待处理的所有用户数据对应的数据记录,其中既包括确定已转化目标行为的用户数据,也包括待预测转化概率的用户数据。本步骤对这些数据记录进行处理,从中区别出无目标行为(待预测转化概率)的第一用户数据和有目标行为(确定已转化)的第二用户数据,并使用第一用户数据进行后续的预测处理。
在步骤S102中,从第一用户数据中提取对应行为特征。
本步骤是针对当前待处理的用户数据提取相应的行为特征。举例而言,以O2O用户消费转化行为预测的应用场景为例,假设行为特征包括线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息,则本步骤完成从第一用户数据中提取出对应的线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息等特征。
在步骤S103中,根据提取的对应行为特征和历史数据来预测第一用户数据对应的用户行为转化成目标行为的概率。
本步骤中基于历史数据对步骤S103从第一用户数据中提取到的对应行为特征进行处理,即可预测得到第一用户数据对应的用户行为转化成目标行为的概率。
根据本公开的实施例,基于历史数据来预测用户的目标行为,能够提高预测用户行为转化的精度。
图2为根据本公开另一实施例用于预测用户行为的方法流程图,如图所示,本实施例的方法包括以下步骤S201-S204。在一个实施例中,本实施例的方法可由与用户终端通信的服务器等计算设备来执行。
在步骤S201中,基于历史数据拟合得到行为特征与目标行为的非线性关系模型。
与传统方法使用固定的经验设定系数来预测行为不同,本实施例中通过历史数据训练得到行为特征与目标行为之间的非线性关系模型,进一步基于该非线性关系模型结合后续提取的行为特征进行预测,从而得到准确度更高的用户行为预测结果。
在一个实施例中,目标行为是指需要预测的用户行为的转化结果。历史数据中能够确定哪些用户行为已知转化为目标行为,一经选取用户行为的行为特征,便可基于历史数据拟合得到这些行为特征与目标行为之间的非线性关系模型。
在步骤S202中,处理当前的用户行为日志得到无目标行为的第一用户数据。
本步骤对应于图1实施例的步骤S101,此处不再赘述。
在步骤S203中,从第一用户数据中提取对应行为特征。
步骤S201是基于历史数据得到选取的行为特征与目标行为之间的非线性关系模型,本步骤是针对当前待处理的用户数据提取相应的行为特征。举例而言,以O2O用户消费转化行为预测的应用场景为例,假设步骤S201训练非线性关系模型时选取的行为特征包括线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息,则本步骤完成从第一用户数据中提取出对应的线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息等特征。
在步骤S204中,根据提取的对应行为特征,使用非线性关系模型来预测第一用户数据对应的用户行为转化成目标行为的概率。
由于步骤S201中已经基于历史数据训练得到行为特征与目标行为之间的非线性关系模型,本步骤中使用该模型对步骤S203从第一用户数据中提取到的对应行为特征进行处理,即可预测得到第一用户数据对应的用户行为转化成目标行为的概率。
根据本公开的实施例,通过基于历史数据训练的非线性模型来预测用户的目标行为,能够提高预测用户行为转化的精度。
下面以O2O用户消费转化行为预测的应用场景为例描述本公开用于预测用户行为的方法的另一实施例。
图3为根据本公开另一实施例用于预测用户行为的方法流程图。如图所示,本实施例的方法包括以下步骤S301-S305。在一个实施例中,本实施例的方法可由O2O平台的服务器等计算设备来执行。
在步骤S301中,基于历史数据拟合得到行为特征与消费行为的非线性关系模型。
本实施例提出一种基于机器学习预测用户消费转换的方案。用户线上消费的场景和用户线下消费的场景存在着很多的共通性,本方案通过机器学习的方法,从线上有过消费行为的那些用户中,学习到他们在行为、属性以及选择门店偏好中的特点,从而预测那些线上浏览门店后没有线上消费行为的用户后续作出消费行为的可能,进一步达成期望的由用户线上消费场景泛化到用户线下消费场景的目的。
在样本的定义上,本方案将单个用户在一天内与其浏览过的门店的所有相关的行为属性整合作为一个样本。如果基于历史数据确认用户当天在这个门店做过线上消费,则将这个样本标注为正样本,否则就将这个样本标注为负样本。需要说明的是,这里所述浏览的门店并不限于门店主页,例如还可包括门店商品所对应的团单。
对于上述行为特征,本方案的一个实施例可选取用户在浏览某个门店时的行为、用户属性、门店属性以及用户与门店之间的关联性四大类特征,具体如下所述。
(1)用户线上行为,例如包括用户在门店页面的停留时间、用户浏览该页面各个模块的次数、用户点击该页面各个按钮的次数等。
(2)用户属性,例如包括用户的年龄、性别、所在城市、消费水平等。
(3)门店属性,例如包括门店的综合水平、口味星级、评价数等。
(4)用户与门店之间的关联性,例如包括用户浏览门店时与门店的距离、用户偏好商圈与门店所在商圈的关联性等。这里的关联性例如包括用户偏好商圈与门店所在商圈是否一致。
对于上述非线性关系模型,本方案的一个实施例可使用GBDT(Gradient Boosting Decision Tree,梯度提升决策树)来描述用户消费转化。GBDT是一种基于决策树实现的分类回归算法,其基本原理在于通过训练新的CART(Classification and Regression Trees,分类与回归树)来拟合当前一轮迭代之前得到的所有树的结论和的残差,让样本的损失尽量的小。
在用户消费转化预测的场景中,本实施例使用GBDT主要用于解决以下两个问题。首先,在上述选取的行为特征中,用户与门店之间的关联大多是离散的特征(取值表现为0或1),但用户在门店页面停留时长这种行为特征则是连续的,GBDT可以同时处理连续型和离散型的特征,从而不需要对特征进行进一步的人工处理。其次,GBDT是一个非线性的模型,可以很好拟合上述行为特征与实际用户消费转化的非线性关系;例如,用户点击页面很少但不表示其消费的可能性很小,用户在门店页面停留时间很长,但不代表其消费的可能性很大;线性模型无法描述这种关系,而GBDT可以很好的解决这个问题。
另外,O2O平台的入驻商家通常包括支持线下消费、支持线下消费与同时支持两种消费方式三个类别。在一个实施例中,为了让训练样本更纯净,本方案在采样时尽可能选取那些只支持线上消费或线上消费比例更大的门店。
进一步,由于实际数据中正样本比例远小于负样本,为了改善效果,在一个实施例中,本方案可对正样本进行重复采样,从而让正负样本比例趋于均衡,以保证模型学习时不会过于偏向负样本。
在一个实施例中,步骤S301可基于图4所示的步骤S401-S406来实施。
在步骤S401中,从外部数据源获取已有的用户属性及门店属性;
在步骤S402中,处理用户属性及门店属性的关联性,获得关联性特征;
在步骤S403中,从线上网站与客户端日志中获取用户的行为日志;
在步骤S404中,处理用户行为日志,计算停留时长等行为特征,同时确定用户在该门店是否有消费转化;
在步骤S405中,合并规整所有行为特征,区分有消费转化和无消费转化的用户行为以生成数据样本;
在步骤S406中,通过迭代训练得到GBDT模型。
通过以上步骤,最终得到选取的行为特征与消费转化行为之间的非线性关系模型。
在步骤S302中,处理当前的用户行为日志得到无消费转化行为的第一用户数据和有目标行为的第二用户数据。
如果仅需要预测用户的消费转化概率,则类似步骤S202只需从当前的用户行为日志中区分出无消费转化行为的第一用户数据。在本实施例中,假设需要统计最终的用户消费转化数,则执行步骤S302从当前的用户行为日志中区分出无消费转化行为的第一用户数据和有目标行为的第二用户数据,其中第一用户数据用于得到后续预测部分的转化数,第二用户数据则可用于直接得到确定部分的转化数。
在步骤S303中,从第一用户数据中提取对应的行为特征。
在步骤S304中,根据提取的对应行为特征,使用非线性关系模型预测第一用户数据对应的用户行为转化成消费行为的概率。
步骤S303-S304分别对应于图2所示实施例的步骤S203-S204。在一个实施例中,步骤S303-S304所进行的转化预测可基于图5所示的步骤S501-S504来实施。
在步骤S501中,从线上网站与客户端日志中获取用户的行为日志;
在步骤S502中,处理用户行为日志,区分有线上转化的用户门店对与无线上转化的用户门店对;
在步骤S503中,对于无线上转化的用户门店对,获取用户行为、用户属性和门店属性,生成行为特征;
在步骤S504中,使用之前训练的非线性关系模型处理上述行为特征,以预测无线下转化的用户门店对的弱转化结果。
通过以上步骤,最终得到无消费转化行为的第一用户数据所对应的用户行为最终可能转化成消费行为的概率。
在步骤S305中,统计第二用户数据和上述预测的概率得到所有用户行为至所述目标行为的转化数。
例如,针对某个门店,假设基于步骤S302的第二用户数据得到确定有消费转化行为的转化数为16,基于第一用户数据经过步骤S303-S304得到三个用户的消费转化概率为0.1、0.6、0.3,则步骤S305最终可得出当前O2O平台对于该门店的消费转化贡献数为16+0.1+0.6+0.3=17。需要说明的是,此处仅为数据整合统计的简单示例,本公开并不仅限于此。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
本示例实施方式中进一步提供了一种用于预测用户行为的装置。
图6为根据本公开一实施例用于预测用户行为的装置示意框图。如图所示,本实施例的装置包括预处理模块61、特征提取模块62和行为预测模块63。
在一个实施例中,预处理模块61设置为处理当前的用户行为日志得到无目标行为的第一用户数据;特征提取模块62设置为从所述第一用户数据中提取对应行为特征;行为预测模块63设置为根据提取的所述对应行为特征和历史数据来预测所述第一用户数据对应的用户行为转化成所述目标行为的概率。
在一个实施例中,所述目标行为包括用户消费行为,所述行为特征包括线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息。
在一个实施例中,所述线上行为信息包括以下至少一种:用户在商家对应页面的停留时间、用户浏览该页面中各模块的次数以及用户点击该页面中各按钮的次数。
在一个实施例中,所述用户与商家之间的关联性信息包括以下至少一种:用户在浏览商家对应页面时与该商家的距离,用户偏好商圈与该商家所在商圈的关联性。
根据本公开的实施例,基于历史数据来预测用户的目标行为,能够提高预测用户行为转化的精度。
图7为根据本公开另一实施例用于预测用户行为的装置示意框图。如图所示,在图6所示实施例的基础上,本实施例的装置还包括模型训练模块64和转化统计模块65。
在一个实施例中,模型训练模块64设置为基于历史数据拟合得到行为特征与目标行为的非线性关系模型。相应的,本实施例中,行为预测模块63设置为根据提取的所述对应行为特征,使用模型训练模块64得到的非线性关系模型来预测所述第一用户数据对应的用户行为转化成所述目标行为的概率。
在另一个实施例中,预处理模块61还设置为处理当前的用户行为日志得到有目标行为的第二用户数据。相应的,转化统计模块65设置为统计上述第二用户数据和行为预测模块63预测的概率得到所有用户行为至目标行为的转化数。
在一个实施例中,所述目标行为包括用户消费行为,所述行为特征包括线上行为信息、用户属性、商家属性以及用户与商家之间的关联性信息。
在一个实施例中,所述线上行为信息包括以下至少一种:用户在商家对应页面的停留时间、用户浏览该页面中各模块的次数以及用户点击该页面中各按钮的次数。
在一个实施例中,所述用户与商家之间的关联性信息包括以下至少一种:用户在浏览商家对应页面时与该商家的距离,用户偏好商圈与该商家所在商圈的关联性。
在一个实施例中,所述非线性关系模型为梯度提升决策树GBDT模型。
根据本公开的实施例,通过基于历史数据训练的非线性模型来预测用户的目标行为,能够提高预测用户行为转化的精度。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上实施方式的描述,本领域的技术人员易于理解,上文描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。
例如,在一个示例实施方式中,还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述任意一个实施例中所述方法的步骤。所述方法的具体步骤可参考前述实施例中的详细描述,此处不再赘述。所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在另一个示例实施方式中,还提供一种计算设备,该计算设备可以是手机、平板电脑等移动终端,也可以是台式计算机、服务器等终端设备,本示例实施方式中对此不作限制。图8示出根据本公开示例实施方式中一种计算设备80的示意图。例如,计算设备80可以被提供为与用户终端通信的服务器。参照图8,设备80包括处理组件81,其进一步包括一个或多个处理器,以及由存储器82所代表的存储器资源,用于存储可由处理组件81的执行的指令,例如应用程序。存储器82中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件81被配置为执行指令,以执行上述用于预测用户行为的方法。该方法的步骤可参考前述方法实施例中的详细描述,此处不再赘述。
计算设备80还可以包括一个电源组件83被配置为执行计算设备80的电源管理,一个有线或无线网络接口84被配置为将计算设备80连接到网络,和一个输入输出(I/O)接口85。计算设备80可以操作基于存储在存储器82的操作系统。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
虽然已参照几个典型实施例描述了本公开,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本公开能够以多种形式具体实施而不脱离申请的精神或实质,所以应当理解,上述实施例不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。