掌桥专利:专业的专利平台
掌桥专利
首页

一种数据处理方法、装置、计算机设备及存储介质

文献发布时间:2023-06-19 19:27:02


一种数据处理方法、装置、计算机设备及存储介质

技术领域

本公开涉及机器学习技术领域,具体而言,涉及一种数据处理方法、装置、计算机设备及存储介质。

背景技术

目前,应用基于机器学习的流失预测模型对用户进行预测,从而筛选出流失概率高的用户,再对流失概率高的用户采取对应策略是维持用户量的一个重要手段。但是由于用户的喜好多种多样,流失的原因也各有不同,如何精准分析用户的流失原因,从而采取相应的策略是一个亟待解决的技术问题。

发明内容

本公开实施例至少提供一种数据处理方法、装置、计算机设备及存储介质。

第一方面,本公开实施例提供了一种数据处理方法,包括:

获取目标用户在目标游戏中的游戏数据,并基于所述游戏数据,生成与所述目标用户对应的用户特征数据;

利用流失预测模型对所述用户特征数据进行处理,得到所述目标用户的流失概率;以及

利用多个归因预测模型对所述用户特征数据进行处理,得到所述目标用户在不同流失原因下的归因概率;其中,所述流失原因和所述多个归因预测模型一一对应;

基于所述流失概率、以及所述归因概率,确定目标策略。

这样,将用户特征数据分别输入到流失预测模型以及归因预测模型,得到目标用户的流失概率以及与各流失原因分别对应的归因概率,在基于流失概率得到目标用户潜在的流失风险的同时,基于各流失原因分别对应的归因概率,分析出目标用户可能的流失原因,从而可以有效的针对目标用户的流失风险以及流失原因确定目标策略,实现精准定位目标用户的流失原因,并采取对应的目标策略,从而可以以较小的成本提高整体用户留存,有助于减少用户流失,维持用户量。

一种可选的实施方式中,采用下述方式训练所述流失预测模型:

获取第一样本用户在所述目标游戏中的第一样本游戏数据,并确定与所述第一样本游戏数据对应的第一标签信息;其中,所述第一标签信息用于指示所述第一样本用户是否为流失用户;

利用所述第一样本游戏数据、和所述第一标签信息,训练流失预测模型。

一种可选的实施方式中,所述确定与所述第一样本游戏数据对应的第一标签信息,包括:

获取多个所述第一样本用户连续未登录所述目标游戏的时长;

将所述时长大于或等于第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为流失用户;

将所述时长小于所述第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为非流失用户。

这样,由于第一标签信息指示了多个第一样本用户是否为流失用户的标准结果,将待训练的流失预测模型输出的多个第一样本用户是否为流失用户的预测结果与标准结果进行比对,可以得出待训练的流失预测模型的预测准确率,进而可以根据预测准确率对模型的网络参数进行修正,使得经过训练后的流失预测模型输出更为准确的预测结果。

一种可选的实施方式中,采用下述方式训练所述归因预测模型:

获取第二样本用户在所述目标游戏中的第二样本游戏数据,并确定与所述第二样本游戏数据对应的第二标签信息;其中,所述第二标签信息用于指示所述第二样本用户的实际流失原因与所述归因预测模型对应的流失原因是否相同;

利用所述第二样本游戏数据、和所述第二标签信息,训练归因预测模型。

一种可选的实施方式中,所述确定与所述第二样本游戏数据对应的第二标签信息,包括:

获取多个所述第二样本用户;其中,任一第二样本用户的当前游戏状态为:已流失、或者将要流失;

针对每个第二样本用户,对所述每个第二样本用户执行与目标流失原因对应的目标策略;其中,所述目标流失原因为和所述归因预测模型对应的流失原因;

基于所述目标策略是否有效,确定与所述每个第二样本用户对应的第二标签信息。

这样,根据每个流失原因对应的待训练的归因预测模型分别输出的第二样本用户的预测归因概率确定出第二样本用户的预测流失原因,根据预测流失原因与第二样本用户的目标流失原因进行对比,得出待训练的归因预测模型的预测准确率,进而可以根据预测准确率对模型的网络参数进行修正,使得经过训练后的归因预测模型输出更为准确的预测结果。

一种可选的实施方式中,所述方法还包括:

获取所述第二样本用户在目标时段内在所述目标游戏中的活跃度信息;其中,所述目标时段包括:对所述每个第二样本用户执行与目标流失原因对应的目标策略后的持续第二预设时长的时段;

基于所述活跃度信息,确定所述目标策略是否有效。

这样,在对每个第二样本用户执行与目标流失原因对应的目标策略后,通过观察活跃度信息,可以确定目标策略是否有效,为确定第二标签信息提供有效判据。

一种可选的实施方式中,所述基于所述流失概率、以及所述归因概率,确定目标策略,包括:

将所述流失概率、和预设的流失概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值,基于多个所述归因预测模型分别预测的所述归因概率,对多个所述归因预测模型进行排序,并从排序后的多个所述归因预测模型中,确定目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

一种可选的实施方式中,所述基于所述流失概率、以及所述归因概率,确定目标策略,包括:

将所述流失概率、和预设的流失概率阈值进行比对;以及,

针对每个归因预测模型,将所述每个归因预测模型预测的归因概率、和所述每个归因预测模型对应的归因概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值、且任一归因预测模型预测的归因概率大于或等于该任一归因预测模型对应的归因概率阈值,将该任一归因预测模型确定为目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

这样,可以根据各个归因预测模型预测的归因概率,以及归因概率阈值确定至少一个目标策略,在提高挽回成功率的同时,可以覆盖所有可能的流失原因,避免遗漏实际流失原因,造成挽回失败。

第二方面,本公开实施例还提供一种数据处理装置,所述装置包括:

获取模块,用于获取目标用户在目标游戏中的游戏数据,并基于所述游戏数据,生成与所述目标用户对应的用户特征数据;

计算模块,用于利用流失预测模型对所述用户特征数据进行处理,得到所述目标用户的流失概率;以及

利用多个归因预测模型对所述用户特征数据进行处理,得到所述目标用户在不同流失原因下的归因概率;其中,所述流失原因和所述多个归因预测模型一一对应;

确定模块,用于基于所述流失概率、以及所述归因概率,确定目标策略。

一种可选的实施方式中,所述装置还包括训练模块,用于采用下述方式训练所述流失预测模型:

获取第一样本用户在所述目标游戏中的第一样本游戏数据,并确定与所述第一样本游戏数据对应的第一标签信息;其中,所述第一标签信息用于指示所述第一样本用户是否为流失用户;

利用所述第一样本游戏数据、和所述第一标签信息,训练流失预测模型。

一种可选的实施方式中,所述训练模块在确定与所述第一样本游戏数据对应的第一标签信息时,还用于:

获取多个所述第一样本用户连续未登录所述目标游戏的时长;

将所述时长大于或等于第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为流失用户;

将所述时长小于所述第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为非流失用户。

一种可选的实施方式中,所述训练模块还用于采用下述方式训练所述归因预测模型:

获取第二样本用户在所述目标游戏中的第二样本游戏数据,并确定与所述第二样本游戏数据对应的第二标签信息;其中,所述第二标签信息用于指示所述第二样本用户的实际流失原因与所述归因预测模型对应的流失原因是否相同;

利用所述第二样本游戏数据、和所述第二标签信息,训练归因预测模型。

一种可选的实施方式中,所述训练模块在确定与所述第一样本游戏数据对应的第二标签信息时,还用于:

获取多个所述第二样本用户;其中,任一第二样本用户的当前游戏状态为:已流失、或者将要流失;

针对每个第二样本用户,对所述每个第二样本用户执行与目标流失原因对应的目标策略;其中,所述目标流失原因为和所述归因预测模型对应的流失原因;

基于所述目标策略是否有效,确定与所述每个第二样本用户对应的第二标签信息。

一种可选的实施方式中,所述训练模块还用于:

获取所述第二样本用户在目标时段内在所述目标游戏中的活跃度信息;其中,所述目标时段包括:对所述每个第二样本用户执行与目标流失原因对应的目标策略后的持续第二预设时长的时段;

基于所述活跃度信息,确定所述目标策略是否有效。

一种可选的实施方式中,所述确定模块还用于:

将所述流失概率、和预设的流失概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值,基于多个所述归因预测模型分别预测的所述归因概率,对多个所述归因预测模型进行排序,并从排序后的多个所述归因预测模型中确定目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

一种可选的实施方式中,所述确定模块还用于:

将所述流失概率、和预设的流失概率阈值进行比对;以及,

针对每个归因预测模型,将所述每个归因预测模型预测的归因概率、和所述每个归因预测模型对应的归因概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值、且任一归因预测模型预测的归因概率大于或等于该任一归因预测模型对应的归因概率阈值,将该任一归因预测模型确定为目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。

关于上述数据处理装置、计算机设备、及计算机可读存储介质的效果描述参见上述数据处理方法的说明,这里不再赘述。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开的技术方案。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开一些实施例所提供的数据处理方法的流程图;

图2示出了本公开一些实施例所提供的一种提取用户特征数据的流程图;

图3示出了本公开一些实施例所提供的一种数据处理方法的示例图;

图4示出了本公开一些实施例所提供的数据处理装置的示意图;

图5示出了本公开一些实施例所提供的计算机设备的示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。

例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。

作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。

可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。

目前的流失用户判断方法仅能分析用户是否流失却无法分析用户的流失原因,在实际应用中不能根据用户的流失原因有针对性的制定目标策略。因此,精准分析用户的流失原因,从而采取有效的目标策略仍是一个亟待解决的技术问题。

基于上述研究,本公开提供了一种数据处理方法,可以有效的针对目标用户的流失风险以及流失原因确定目标策略,实现精准定位目标用户的流失原因,并采取对应的目标策略,从而可以以较小的成本提高整体用户留存,有助于减少用户流失,维持用户量。

针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种数据处理方法进行详细介绍,本公开实施例所提供的数据处理方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该数据处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

下面对本公开实施例提供的数据处理方法加以说明。

参见图1所示,为本公开实施例提供的数据处理方法的流程图,所述方法包括步骤S101~S104,其中:

S101:获取目标用户在目标游戏中的游戏数据,并基于所述游戏数据,生成与所述目标用户对应的用户特征数据。

此处,可以通过数据埋点的方式获取目标用户在目标游戏中的游戏数据。通过数据埋点的方式获取游戏数据包括下述步骤:

在目标游戏中部署数据埋点,采集游戏数据。

示例性的,可以在目标游戏中根据需求选取用于分析用户流失以及流失归因的游戏数据,根据需求部署数据埋点,当用户触发埋点事件时,数据埋点会采集游戏数据。例如,采集的游戏数据包括用户登录数据,那么数据埋点可能会采集的游戏数据有:用户登录次数、在线时长、以及活跃天数等。

在一个具体的实施方式中,可以从下述a1~a7种数据维度采集目标用户在目标游戏内的游戏数据:

a1:登录信息,包括用户登录次数、在线时长、活跃天数等。

a2:注册信息,包括语言、渠道、创角天数等。

a3:游戏数值,包括角色等级、角色经验值、段位;

a4:游戏战斗挫败缓解投放,包括简单关卡投放等。

a5:社交缺失补充投放,包括好友推荐等。

a6:攻略缺失补充投放,包括自带攻略推荐、外部攻略推荐等。

a7:福利缺失补充投放,包括游戏资源礼包等。

此处,a1~a3是用户在目标游戏中的一些表现对应的游戏数据。a4~a7是针对用户在目标游戏中的一些表现,采取的一些目标策略的游戏数据。具体的,以a4为例,当用户在目标游戏中针对同一关卡连续多次挑战失败时,可以为其投放一些相对简单的关卡帮助用户熟悉游戏中的一些操作,以增加用户的游戏信心,减少因为关卡难度造成的用户流失。

在通过数据埋点获取上述游戏数据后,将游戏数据进行储存。

在一个可能的实施方式中,为了将上述分散、零乱、标准不统一的游戏数据整合在一起,将通过数据埋点采集到的游戏数据经过抽取、转换、以及加载(Extract-Transform-Load,ETL)的处理过程后,将游戏数据存储在分布式数据库中。

接着,针对数据库中存储的经过ETL处理后的游戏数据,统计近1天、7天、14天、30天内的各个相关的数据内容的最大、最小、平均、中位数等数值。

统计最近一次登出时刻的各个相关的数据内容的最新段位、各种虚拟物品数量等数值。

另外,还可以统计已经投放的投放内容标识码、投放次数等。具体的可以根据实际需求在数据库中对游戏数据进行统计,本公开在此不做过多赘述。

根据上述统计得到的游戏数据,在大数据通用计算平台SPARK中计算得到用户特征数据。

进一步的,如图2所示的一种提取用户特征数据的流程图,包括下述S201~S203中至少一项处理,其中:

S201:将现有游戏数据按照业务关系组成新的特征。

示例性的,将处于相同段位用户的一些关键游戏数据进行K-Means聚类得到新的特征,这里的处于相同段位用户例如包括角色等级相同、或在线时长相同、或创角天数相同等,或者是处于相同段位区间内的用户也属于相同段位用户。以创角天数为例,可以按照3天为一个段位区间对用户进行划分,在同一个段位区间内则属于相同段位用户。通过对创角天数、角色等级、角色经验值等数值取百分位进行聚类,得到用户粘性特征,进而可以根据该特征与其他特征组成的用户特征数据预测用户是否会流失,以及流失原因等。此处,可以将上述示例中的以创角天数确定相同段位用户,替换为以在线时长确定相同段位用户,与上述过程类似,再此不做赘述。

这里,取百分位进行预测可以过滤掉小数值的数据,有助于聚类处理,具体的也可以通过对数据进行归一化处理,然后再进行聚类,具体根据实际情况进行设置,本公开不再赘述。

另外,上述S201中的实施例仅作为示例来表征本公开在对用户在目标游戏中的游戏数据进行特征提取处理时采用的一些具体实施方式,并不对基于何种游戏数据得到何种新特征做具体限制。

又一示例中,对于其他一些对预测用户是否流失、以及流失原因不太重要的游戏数据,例如,语言、渠道等游戏数据,这些游戏数据的权重值较低,针对这些游戏数据可以采取线性判别分析(Linear Discrimination Analysis,LDA)来进行聚类,本公开不再赘述。

另外,除上述两种聚类方法外,还可以使用其他聚类方法将一些分散的,或权重值较低的游戏数据进行聚类得到新的特征,有助于对用户特征数据进行整合,减少输入到预测模型中的数据量。从而减少预测模型的预测时间。

S202:对连续特征的游戏数据进行分箱。

示例性的,可以采用分位数分箱法、决策树分箱法等,选取合适的分界点将连续特征分为N份,并且按照顺序依次映射为整形(int)编码。

例如,对于在线时长,其属于连续特征,其中每日在线时长最长为24小时,可以将在线时长划分为多个区间(也即分箱),并为各个区间确定对应的int编码;如0-1小时,编码为000;1-3小时,编码为001;3-5小时,编码为010;5小时-10小时,编码为011;10-15小时,编码为100;15-20小时,编码为101;20-24小时,编码为110。若某用户的日平均在线时长为3小时25分17秒,则由于该在线时长落入3-5小时的区间内,因此将其在线时长转换为编码:010。

S203:对字符串(str)类型特征映射为int编码。

示例性的,可以使用顺序编码器(Ordinal Encoder)和分类编码器(LabelEncoder)将str类型特征映射为int编码。

例如,对于渠道,假设目标游戏都提供的渠道有5种,分别为渠道A、渠道B、渠道C、渠道D和渠道E。且渠道A~E分别对应的编码为:000、001、010、011、100,若某用户对应的渠道为渠道E,则将其渠道转换为编码:100。

此处,上述S201~S203仅作为上述S101中描述的基于所述游戏数据,生成与所述目标用户对应的用户特征数据的一些示例说明,其目的主要是得到可以被预测模型识别的用户特征数据;另外,通过对用户数据进行整合可以减少预测模型的计算资源和计算时间。除使用上述S201~S203提供的实施方式外,还可以使用其他方法得到用户特征数据,本公开不对采用何种方法得到用户特征数据做具体限制。

承接上述S101,在得到用户特征数据后,本公开所提供的数据处理方法还包括:

S102:利用流失预测模型对所述用户特征数据进行处理,得到所述目标用户的流失概率。

S103:利用多个归因预测模型对所述用户特征数据进行处理,得到所述目标用户在不同流失原因下的归因概率;其中,所述流失原因和所述多个归因预测模型一一对应。

此处,流失预测模型、与归因预测模型均为相互独立的二分类模型,流失预测模型与归因预测模型互不干扰,流失预测模型用于预测目标用户流失的概率;每个归因预测模型,用于预测目标用户在对应流失原因下的归因概率。此处,归因概率用于指示目标用户的实际流失原因,属于归因预测模型对应的流失原因的概率。

在流失预测模型和归因预测模型为预先训练好的情况下,可以直接使用训练好的模型来对目标用户进行预测,在本公开的下述实施例中会详细介绍在此不多赘述。现在,本公开对流失预测模型以及归因预测模型的训练过程加以详细描述。

针对流失预测模型,在本公开提供的一些实施例中,采用下述方式训练所述流失预测模型:

获取第一样本用户在所述目标游戏中的第一样本游戏数据,并确定与所述第一样本游戏数据对应的第一标签信息;其中,所述第一标签信息用于指示所述第一样本用户是否为流失用户;

这里,第一样本用户与上述目标用户均可以为目标游戏中的玩家,第一样本用户在目标游戏中的第一样本游戏数据用于输入到待训练的流失预测模型中,而目标用户在目标游戏中的游戏数据则是用于输入到已经训练好的流失预测模型中。

在一个可能的实施方式中,待训练的流失预测模型可以部署在目标游戏中,获取目标游戏中的玩家的游戏数据,此时,目标游戏中的玩家可以看作是第一样本用户,游戏数据为第一样本游戏数据,待训练的流失预测模型通过对第一样本游戏数据的识别,输出第一样本用户的预测结果,该结果用于训练流失预测模型。

另外,待训练的流失预测模型也可以部署在其他的类型相似的游戏中,获取该游戏中的玩家的游戏数据,当待训练的流失预测模型训练好后,再将其部署在目标游戏中,这里,类型相似的游戏可以指两个游戏都为角色扮演类游戏(Role-playing game,RPG),或者都为多人在线战术竞技游戏(Multiplayer Online Battle Arena,MOBA),或者其他类型的游戏等。

其中,在本公开提供的一些实施例中,采用下述方式确定与所述第一样本游戏数据对应的第一标签信息:获取多个所述第一样本用户连续未登录所述目标游戏的时长;将所述时长大于或等于第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为流失用户;将所述时长小于所述第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为非流失用户。

此处,所述第一标签信息包括流失标签以及未流失标签。获取多个第一样本用户在目标游戏中的第一样本游戏数据组成样本数据集。

示例性的,根据实际需求可以设置第一预设时长阈值为7天、30天、90天等,以30天为例,若第一样本用户连续30天或30天以上未登录目标游戏,则认为该用户为流失用户,对该用户设置流失标签,为了便于模型识别用字符1来表示,若第一样本用户在30天以内登录过目标游戏,则认为该用户为未流失用户,对该用户设置未流失标签,用字符0来表示。

根据上述实施例对样本数据集中的每个第一样本用户设置第一标签信息,完成正负样本的分类。

接着,在确定与所述第一样本游戏数据对应的第一标签信息后,利用所述第一样本游戏数据、和所述第一标签信息,训练流失预测模型。

此处,将第一样本游戏数据输入到待训练的流失预测模拟中,待训练的流失预测模型输出针对第一样本游戏数据的预测结果,该预测结果指示第一样本用户是否会流失,根据预测结果指示的第一样本用户是否为流失用户,以及第一样本用户的第一标签信息指示的第一样本用户是否为流失用户,确定待训练的流失预测模型是否预测正确。

示例性的,可以使用曲线下面积(Area Under Curve,AUC)作为评价待训练的流失预测模型的评价指标,这里的曲线指的是测试操作特征曲线(Receiver OperatingCharacteristic Curve,ROC)。具体的,利用混淆矩阵统计待训练的流失预测模型对样本数据集中的第一样本用户的预测结果,以及与第一样本用户对应的第一标签信息指示的真实结果,根据预测结果以及真实结果,可以得到四个一级指标:

True Positive,简写作TP,表示在本轮训练中的所有正样本中,待训练的流失预测模型预测为正类的比值。这里的正类表示为第一样本用户的第一标签信息指示为流失用户。

False Positive,简写作FP,表示在本轮训练中的所有负样本中,待训练的流失预测模型预测为正类的比值。

True Negative,简写作TN,表示在本轮训练中的所有负样本中,待训练的流失预测模型预测为负类的比值。这里的负类表示为第一样本用户的第一标签信息指示为未流失用户。

False Negative,简写作FN,表示为在所有正样本中,待训练的流失预测模型预测为负类的比值。

根据上述一级指标中的TP和FP,绘制ROC曲线,ROC曲线的横轴为FP;纵轴为TP,若FP等于TP,则表示待训练的流失预测模型对正负类没有区分能力,此时的AUC的最小值为0.5,而我们需要将AUC的值尽量变大,因此就需要使得TP大于FP,这样就可以使得AUC的值变大,最理想的AUC值为1,可以预设一个目标阈值(小于或等于1的值),当AUC的值大于或等于预设的目标阈值时,可以认为该待训练的流失预测模型满足实际应用需求,停止训练,并可以将该流失预测模型部署到目标游戏中。

另外,除了AUC值之外,还可以基于混淆矩阵引入二级指标中的准确率、精确率、召回率、以及三级指标中的F1-Score值等作为参考。

上述AUC值、以及准确率、精确率、召回率、以及F1-Score值等指标均是评价待训练的流失预测模型是否满足实际应用需求的评价方式,本公开在此不做过多赘述。

针对每个归因预测模型,在本公开提供的一些实施例中,采用下述方式训练所述归因预测模型:

获取第二样本用户在所述目标游戏中的第二样本游戏数据,并确定与所述第二样本游戏数据对应的第二标签信息;其中,所述第二标签信息用于指示所述第二样本用户的实际流失原因与所述归因预测模型对应的流失原因是否相同;

此处,第二样本用户表示为流失用户,或者流失概率很大,需要对其采取目标策略的用户;第二样本用户可以是上述实施例中的第一标签信息指示为流失用户的第一样本用户,也可以是不与上述实施例中的第一样本用户存在关联关系的其他样本用户。

此处的目标策略表征根据实际流失原因而采取的一些挽回策略。实际流失原因例如可以包括:游戏战斗挫败流失、社交缺失流失、攻略缺失流失、游戏玩法流失等,可以通过分析第二样本游戏数据中的对第二样本用户执行挽回策略的游戏数据,以及执行挽回策略后的第二样本游戏数据的变化,确定第二样本用户的实际流失原因;根据实际流失原因与归因预测模型可以预测的流失原因,为第二样本用户设置对应的第二标签信息。

这里,第二样本用户的实际流失原因若与归因预测模型可以预测的流失原因相同,则表示对该第二样本用户采取与实际流失原因相应的挽回策略有效。

示例性的,根据实际需求可以将采取挽回策略有效的第二样本用户确定为挽回成功用户,对该用户设置挽回成功标签,为了便于模型识别用字符1来表示,将采取挽回策略无效的第二样本用户确定为挽回失败用户,对该用户设置挽回失败标签,用字符0来表示。

示例性的,可以通过分析第二样本用户在目标游戏中的第二样本游戏数据确定第二样本用户的实际流失原因,这里,第二样本游戏数据与上述第一样本游戏数据的数据维度一致,例如,在第二样本用户挑战某一关卡时,连续多次挑战失败后,直接退出游戏,并在一段时间内没有登录游戏,则可以确定该第二样本用户的实际流失原因为:战斗挫败流失。又例如,第二样本用户在目标游戏中寻找一处宝藏,在连续寻找未果后,直接退出游戏,并在一段时间内没有登录游戏,则可以确定该第二样本用户的实际流失原因为:攻略缺失流失。

这里,实际流失原因是已知结果,仅作为样本标签训练归因预测模型。

在本公开提供的一些实施例中,采用下述方式确定与所述第一样本游戏数据对应的第二标签信息:获取多个所述第二样本用户;其中,任一第二样本用户的当前游戏状态为:已流失、或者将要流失;针对每个第二样本用户,对所述每个第二样本用户执行与目标流失原因对应的目标策略;其中,所述目标流失原因为和所述归因预测模型对应的流失原因;基于所述目标策略是否有效,确定与所述每个第二样本用户对应的第二标签信息。

其中,游戏状态为将要流失的第二样本用户可以根据第二样本游戏数据中的用户登录次数、在线时长、角色等级等数据的增量来判断,例如,统计30天内,第二样本用户每5天的登录次数的情况:第一个五天登录次数为4,第二个五天登录次数为2、第三个五天登录次数为1、第四个五天登录次数为0、第五个五天登录次数为0、第六个5天登录次数为0,则认为该第二样本用户将要流失。

此处,根据用户可能存在的多种流失原因,设置与每种流失原因对应的归因预测模型,每个归因预测模型仅对一种流失原因进行预测,确定用户在该流失原因下的归因概率。

示例性的,若第二样本用户的目标流失原因为战斗挫败流失,则对其投放简单关卡,若投放简单关卡有效,则对该用户设置挽回成功标签,用字符1表示,若投放简单关卡无效,则对该用户设置挽回失败标签,用字符0表示。

具体的,对于如何确定目标策略是否有效,在本公开提供的一些实施例中,获取所述第二样本用户在目标时段内在所述目标游戏中的活跃度信息;其中,所述目标时段包括:对所述每个第二样本用户执行与目标流失原因对应的目标策略后的持续第二预设时长的时段;基于所述活跃度信息,确定所述目标策略是否有效。

示例性的,可以根据对第二样本用户执行挽回策略后的目标时段内的活跃度信息,来确定挽回策略是否有效,活跃度信息可以从目标时段内的第二样本游戏数据中分析得到。在对第二样本用户执行挽回策略后,在目标时段内,通过确定第二样本用户的在线时长、登录次数、角色经验值等游戏数据有增量,且任一或者多个增量满足一定的判断条件,则确定挽回策略有效。例如,在对第二样本用户执行挽回策略前,第二样本用户的一周内在线时长为1小时,角色经验值增量为300、登录次数为1;执行挽回策略后,在目标时段为5天内,第二样本用户的在线时长为20小时,角色经验值增量为1500、登录次数为10,而假设判断条件为:在线时长10小时,角色经验值增量为800,登录次数为5,则表示对第二样本用户执行挽回策略有效。

接着,在确定与所述第二样本游戏数据对应的第二标签信息后,利用所述第二样本游戏数据、和所述第二标签信息,训练归因预测模型。

这里,关于对各归因预测模型的训练过程与上述对流失预测模型的训练过程类似,相同之处本公开在此不做过多赘述。

接下来,针对已经训练好的流失预测模型、以及各归因预测模型,将各个模型部署在目标游戏中,用于接收目标用户的用户特征数据。在各模型得到用户特征数据后,各模型分别对用户特征数据进行单独处理,得到目标用户的流失概率、以及与每个归因预测模型对应的归因概率。

承接上述S103,在确定了目标用户的流失概率以及归因概率后,本公开所提供的数据处理方法还包括:

S104:基于所述流失概率、以及所述归因概率,确定目标策略。

示例性的,根据目标游戏的流失原因,设置与流失原因数量对应的归因预测模型,例如目标游戏中的流失原因有:战斗挫败流失、社交缺失流失、游戏玩法流失、攻略缺失流失、福利缺失流失、版本更新流失。根据这些流失原因,设置战斗挫败流失预测模型、社交缺失流失预测模型、游戏玩法流失预测模型、攻略缺失流失预测模型、福利缺失流失预测模型、版本更新流失预测模型,这里的目标游戏的流失原因可以是通过分析用户的游戏数据来确定。

在本公开提供的一些实施例中,所述基于所述流失概率、以及所述归因概率,确定目标策略,包括:将所述流失概率、和预设的流失概率阈值进行比对;响应于所述流失概率大于或等于所述流失概率阈值,基于多个所述归因预测模型分别预测的所述归因概率,从多个所述归因预测模型中,确定目标归因预测模型;基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

示例性的,预设的流失概率阈值可以是基于混淆矩阵确定的,先确定一个候选流失概率阈值,得出本轮训练基于候选流失概率阈值的预测正确率,若预测正确率没有满足预测正确率阈值,则调整模型的参数,进行下一轮训练,直至预测正确率满足预测正确率阈值,将该轮训练对应的候选流失概率阈值确定为流失概率阈值。

示例性的,在流失预测模型预测的目标用户的流失概率大于或等于流失概率阈值的情况下,对多个归因预测模型分别预测的归因概率,选择归因概率最高的归因预测模型,将其确定为目标归因预测模型,根据目标归因预测模型预测的流失原因,确定目标策略。

此处,是通过排序的方法选择归因概率最高的流失原因来确定目标策略。例如,归因概率最高的流失原因为福利缺失,则相应的向目标用户的终端投放游戏资源礼包等。

在本公开提供的一些实施例中,所述基于所述流失概率、以及所述归因概率,确定目标策略,包括:将所述流失概率、和预设的流失概率阈值进行比对;以及,针对每个归因预测模型,将所述每个归因预测模型预测的归因概率、和所述每个归因预测模型对应的归因概率阈值进行比对;响应于所述流失概率大于或等于所述流失概率阈值、且任一归因预测模型预测的归因概率大于或等于该任一归因预测模型对应的归因概率阈值,将该任一归因预测模型确定为目标归因预测模型;基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

此处,预设的归因概率阈值与上述预设的流失概率阈值的确定方法类似,本公开在此不做过多赘述。

示例性的,在流失预测模型预测的目标用户的流失概率大于或等于流失概率阈值的情况下,通过确实各个归因预测模型预测的归因概率是否大于各自对应的归因概率阈值,来确定一个或多个目标归因预测模型,若存在多个目标归因预测模型,则根据每个目标归因预测模型对应的流失原因,确定目标策略。

此处,通过归因概率阈值的设置,可以确定多个流失原因,在实际应用中,可能会出现多个归因概率相近的情况,若选择归因概率最高的流失原因对应的目标策略,而放弃其他相近的归因概率对应的流失原因对应的目标策略,则可能会错过用户真实的流失原因,导致挽回失败。

另外,本公开还提供一个数据处理方法的具体示例,请参阅图3所示的一种数据处理方法的示例图,所述数据处理方法应用于目标游戏,包括下述S301~S306,其中:

S301:获取目标用户的游戏数据。

通过数据埋点获得目标用户的游戏数据。并且经过ETL处理后存储在HDFS上。

S302:基于目标用户的游戏数据提取用户特征数据。

统计近1天、7天、14天、30天内各游戏数据中的最大、最小、平均、中位数值。

统计最近一次登出时刻的各数据信息值:最新段位、各种虚拟物品量、角色经验值等数据,确定其增量。

将目标用户一段时间内的游戏数据的统计值通过SPARK计算后得到一份描述目标用户各方面特征的用户特征数据。

S303:对目标用户的用户特征数据进行预处理。

在当前同段位的目标用户中,各重要数值的百分位、对部分重要数值采取k-means聚类、部分类别特征的LDA聚类。

将重要的连续特征分箱,主要有分位数分箱法、CART树分箱法等,选取合适的分界点将连续特征分为N份,并且按照顺序依次映射为int编码。

最后将str类型特征映射为int编码,以便模型识别。

S304:获取样本数据集。

将样本数据集中的30天未登录的用户定义为流失用户,并且选择5天采取措施的预留时间,即选择前35天作为考察日期,前30天未登录的用户赋予流失标签1,其余赋予未流失标签0。

分析流失可能的原因,例如战斗挫败流失、社交缺失流失、攻略缺失流失等,同时可以在训练数据集中找到相关目标策略的游戏数据,如战斗挫败对应的简单关卡投放、社交缺失对应的陪玩服务投放、攻略缺失对应的攻略投放等。

同时根据前35天至前30天内的各种归因策略是否有效,将用户赋予归因标签,其中措施有效,活跃度提升从而挽回成功的用户赋予标签1,措施无效,活跃度继续降低赋予标签0。

S305:选择待训练的流失预测模型以及各归因预测模型并进行训练。

将样本数据集划分为训练、验证、测试集。将所有样本数据按照时间顺序先后排序后分为7:2:1。其中训练集用于模型训练,验证集用于超参调节,测试集用于模型评估。

基于AUC评价指标以及特征处理方式,选择合适的机器学习模型。

本公开示例主要选择基于CART决策树的模型,如随机森林、自适应增强(AdaBoost)、极端梯度提升(XGBoost)、分布式梯度提升(LightGBM)等,此类模型可以自动进行特征交叉,并且无需归一化。最终,通过超参调节、对比验证后选择XGBoost作为分类模型,通过调节树的个数、层数、学习率等超参进一步优化。

使用AUC值作为主要判断模型是否训练完毕;使用准确率、精准度、召回率、F1-Score值等用于辅助判断。

通过模型的特征重要性进行特征选择,删除特征重要性小于等于0的特征,同时测试重要性前5%、后5%的特征对模型AUC学习的影响,如果没有正向作用则删除。

S306:计算目标用户的流失概率以及归因概率,并确定目标策略。

对流失概率大于流失概率阈值,如大于0.6的目标用户进行相应的挽回策略的投放。具体挽回策略通过各流失归因概率进行选择,例如对战斗挫败归因概率大于0.8的目标用户投放简单关卡,对社交归因概率大于0.7的目标用户投放陪玩服务等。

对于其他流失概率阈值的用户,选取少量用户进行随机投放,用于扩充样本量。

上述S304~S305是模型选择以及训练过程,若模型已经选择并训练好后,则可以直接由S303跳转到S306。

本公开提供的数据处理方法,除了应用于游戏场景外,还可以应用于其他场景,例如,银行、短视频、社交等需要维持用户量,分析用户流失情况以及流失原因等应用场景。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与数据处理方法对应的数据处理装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述数据处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图4所示,为本公开实施例提供的一种数据处理装置的示意图,所述装置包括:获取模块41、计算模块42、以及确定模块43,其中,

获取模块41,用于获取目标用户在目标游戏中的游戏数据,并基于所述游戏数据,生成与所述目标用户对应的用户特征数据;

计算模块42,用于利用流失预测模型对所述用户特征数据进行处理,得到所述目标用户的流失概率;以及

利用多个归因预测模型对所述用户特征数据进行处理,得到所述目标用户在不同流失原因下的归因概率;其中,所述流失原因和所述多个归因预测模型一一对应;

确定模块43,用于基于所述流失概率、以及所述归因概率,确定目标策略。

一种可选的实施方式中,所述装置还包括训练模块44,用于采用下述方式训练所述流失预测模型:

获取第一样本用户在所述目标游戏中的第一样本游戏数据,并确定与所述第一样本游戏数据对应的第一标签信息;其中,所述第一标签信息用于指示所述第一样本用户是否为流失用户;

利用所述第一样本游戏数据、和所述第一标签信息,训练流失预测模型。

一种可选的实施方式中,所述训练模块44在确定与所述第一样本游戏数据对应的第一标签信息时,还用于:

获取多个所述第一样本用户连续未登录所述目标游戏的时长;

将所述时长大于或等于第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为流失用户;

将所述时长小于所述第一预设时长阈值的第一样本用户的第一标签信息确定为:指示对应的第一样本用户为非流失用户。

一种可选的实施方式中,所述训练模块44还用于采用下述方式训练所述归因预测模型:

获取第二样本用户在所述目标游戏中的第二样本游戏数据,并确定与所述第二样本游戏数据对应的第二标签信息;其中,所述第二标签信息用于指示所述第二样本用户的实际流失原因与所述归因预测模型对应的流失原因是否相同;

利用所述第二样本游戏数据、和所述第二标签信息,训练归因预测模型。

一种可选的实施方式中,所述训练模块44在确定与所述第一样本游戏数据对应的第二标签信息时,还用于:

获取多个所述第二样本用户;其中,任一第二样本用户的当前游戏状态为:已流失、或者将要流失;

针对每个第二样本用户,对所述每个第二样本用户执行与目标流失原因对应的目标策略;其中,所述目标流失原因为和所述归因预测模型对应的流失原因;

基于所述目标策略是否有效,确定与所述每个第二样本用户对应的第二标签信息。

一种可选的实施方式中,所述训练模块44还用于:

获取所述第二样本用户在目标时段内在所述目标游戏中的活跃度信息;其中,所述目标时段包括:对所述每个第二样本用户执行与目标流失原因对应的目标策略后的持续第二预设时长的时段;

基于所述活跃度信息,确定所述目标策略是否有效。

一种可选的实施方式中,所述确定模块43还用于:

将所述流失概率、和预设的流失概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值,基于多个所述归因预测模型分别预测的所述归因概率,对多个所述归因预测模型进行排序,并从排序后的多个所述归因预测模型中确定目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

一种可选的实施方式中,所述确定模块43还用于:

将所述流失概率、和预设的流失概率阈值进行比对;以及,

针对每个归因预测模型,将所述每个归因预测模型预测的归因概率、和所述每个归因预测模型对应的归因概率阈值进行比对;

响应于所述流失概率大于或等于所述流失概率阈值、且任一归因预测模型预测的归因概率大于或等于该任一归因预测模型对应的归因概率阈值,将该任一归因预测模型确定为目标归因预测模型;

基于所述目标归因预测模型对应的流失原因,确定所述目标策略。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。

本公开实施例还提供了一种计算机设备,如图5所示,为本公开实施例提供的计算机设备结构示意图,包括:

处理器51和存储器52;所述存储器52存储有处理器51可执行的机器可读指令,处理器51用于执行存储器52中存储的机器可读指令,所述机器可读指令被处理器51执行时,处理器51执行下述步骤:

获取目标用户在目标游戏中的游戏数据,并基于所述游戏数据,生成与所述目标用户对应的用户特征数据;

利用流失预测模型对所述用户特征数据进行处理,得到所述目标用户的流失概率;以及

利用多个归因预测模型对所述用户特征数据进行处理,得到所述目标用户在不同流失原因下的归因概率;其中,所述流失原因和所述多个归因预测模型一一对应;

基于所述流失概率、以及所述归因概率,确定目标策略;

上述存储器52包括内存521和外部存储器522;这里的内存521也称内存储器,用于暂时存放处理器51中的运算数据,以及与硬盘等外部存储器522交换的数据,处理器51通过内存521与外部存储器522进行数据交换。

上述指令的具体执行过程可以参考本公开实施例中所述的数据处理方法的步骤,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的数据处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的数据处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。

其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 一种数据处理方法、数据处理装置、计算机设备及可读存储介质
  • 数据处理方法、装置、计算机设备及计算机可读存储介质
  • 数据仓库内数据处理方法、装置、计算机设备和存储介质
  • 一种数据处理方法及装置、一种计算设备及存储介质
  • 一种元数据存储方法、装置、设备及计算机可读存储介质
  • 一种数据处理方法、装置、计算机设备和计算机可读存储介质
  • 一种数据处理方法、装置、计算机设备及计算机存储介质
技术分类

06120115915481