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

一种数据处理方法、系统及存储介质和终端设备

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


一种数据处理方法、系统及存储介质和终端设备

技术领域

本发明涉及信息处理技术领域,特别涉及一种数据处理方法、系统及存储介质和终端设备。

背景技术

对于某些应用,比如游戏应用,在某一特定的地区上线后,有必要对某一个特定的时间段应用在该地区所获得的收入进行估计,即对应用的流水进行估计,以便更好地对应用的实际投放进行有效地调控。

传统的应用流水估计方法,主要是根据某些应用在某一综合区域内应用的所有特征信息,直接预测出该综合区域的综合流水信息,由于预测综合流水信息过程中使用的特征信息有时多,有时少,不能保证得到的综合流水信息的准确性。

发明内容

本发明实施例提供一种数据处理方法、系统及存储介质和终端设备,实现了根据综合区域中锚点区域的信息获取综合区域的流水信息。

本发明实施例一方面提供一种数据处理方法,包括:

显示综合区域的第一参数配置界面,所述第一参数配置界面包括多个参数分别对应的配置接口,所述多个参数包括目标应用所应用的综合区域;

响应于在所述综合区域的配置接口输入的目标综合区域,获取所述目标应用分别在目标综合区域中至少一个锚点区域内的第一应用信息及对应的第一流水信息;

根据所述第一应用信息、第一流水信息及预置的综合预测模型,获取所述目标应用在目标综合区域内的综合流水信息;

将所述综合流水信息显示到所述第一参数配置界面。

本发明实施例另一方面提供一种数据处理系统,包括:

界面显示单元,用于显示综合区域的第一参数配置界面,所述第一参数配置界面包括多个参数分别对应的配置接口,所述多个参数包括目标应用所应用的综合区域;

配置接口响应单元,用于响应于在所述综合区域的配置接口输入的目标综合区域,获取所述目标应用分别在目标综合区域中至少一个锚点区域内的第一应用信息及对应的第一流水信息;

预测单元,用于根据所述第一应用信息、第一流水信息及预置的综合预测模型,获取所述目标应用在目标综合区域内的综合流水信息;

结果显示单元,用于将所述综合流水信息显示到所述第一参数配置界面。

本发明实施例另一方面还提供一种计算机可读存储介质,所述计算机可读存储介质储存多个计算机程序,所述计算机程序适于由处理器加载并执行如本发明实施例一方面所述的数据处理方法。

本发明实施例另一方面还提供一种终端设备,包括处理器和存储器;

所述存储器用于储存多个计算机程序,所述计算机程序用于由处理器加载并执行如本发明实施例一方面所述的数据处理方法;所述处理器,用于实现所述多个计算机程序中的各个计算机程序。

可见,在本实施例的方法中,数据处理系统会根据目标应用在任一综合区域中锚点区域内的第一应用信息、第一流水信息及预置的综合预测模型,直接获取目标应用在任一综合区域的综合流水信息,这样,可以参考任一综合区域中锚点区域的相关信息,即可预测出目标应用在该综合区域内的综合流水信息,使得在获取局部少量数据的情况下,可以得到目标应用在大范围内的综合流水信息,且实践证明获取的综合流水信息的准确性也较高。

附图说明

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

图1是本发明实施例提供的一种数据处理方法的示意图;

图2是本发明一个实施例提供的一种数据处理方法的流程图;

图3是本发明一个实施例中训练综合预测模型的流程图;

图4是本发明一个实施例中训练的综合预测模型中决策树的示意图;

图5是本发明另一个实施例提供的数据处理方法的示意图;

图6是本发明另一个实施例中训练单独预测模型的流程图;

图7是本发明应用实施例中对目标国家区域的数据处理方法流程图;

图8是本发明应用实施例中数据处理系统显示的第二参数配置界面的示意图;

图9是本发明应用实施例中对FM模型进行训练的方法流程图;

图10是本发明应用实施例中对目标综合区域的数据处理方法流程图;

图11是本发明应用实施例中数据处理系统显示的第一参数配置界面的示意图;

图12是本发明应用实施例中对XGboost模型进行训练的方法流程图;

图13是本发明实施例提供的一种数据处理系统的结构示意图;

图14是本发明实施例提供的一种终端设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排它的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明实施例提供一种数据处理方法,主要是对目标应用在任一综合区域的流水进行估计,如图1所示,数据处理系统可以按照如下步骤来实现对目标应用的流水估计:

显示综合区域的第一参数配置界面,所述第一参数配置界面包括多个参数分别对应的配置接口,所述多个参数包括目标应用所应用的综合区域;响应于在所述综合区域的配置接口输入的目标综合区域,获取所述目标应用分别在目标综合区域中至少一个锚点区域内的第一应用信息及对应的第一流水信息;根据所述第一应用信息、第一流水信息及预置的综合预测模型,获取所述目标应用在目标综合区域内的综合流水信息;将所述综合流水信息显示到所述第一参数配置界面。

在实际应用过程中,数据处理系统可以应用于终端设备中,由终端设备执行上述数据处理的步骤;或者数据处理系统可以应用于终端设备和服务器中,由终端设备显示第一餐数据配置界面,当响应在相应配置接口输入的目标综合区域时,服务器会获取第一应用信息和第一流水信息,且获取综合流水信息,并将综合流水信息返回给终端设备,由终端设备显示在第一参数配置界面。

这样,可以参考任一综合区域中锚点区域的相关信息,即可预测出目标应用在该综合区域内的综合流水信息,使得在获取局部少量数据的情况下,可以得到目标应用在大范围内的综合流水信息,且实践证明获取的综合流水信息的准确性也较高。

本发明一个实施例提供一种数据处理方法,主要是由数据处理系统所执行的方法,流程图如图2所示,包括:

步骤101,显示综合区域的第一参数配置界面,在第一参数配置界面包括多个参数分别对应的配置接口,在这多个参数中包括目标应用所应用的综合区域。

可以理解,用户可以操作数据处理系统,使得数据处理系统显示综合区域的第一参数配置界面,该第一参数配置界面用于对某一综合区域的流水估计过程中涉及的参数进行配置,这些参数可以包括目标应用所应用的综合区域,还可以包括时间段、目标应用中某些特定功能、上线时间及上线平台等参数。

其中,对于目标应用中某些特定功能来说,例如,目标应用为游戏应用,则目标应用中某些特定功能可以包括游戏应用中的玩法,比如动作类、棋牌类、策略类、角色扮演游戏(Role Play Games,RPG)类、益智类和新品类等玩法,或是卡牌,棋牌、音乐舞蹈、缺一音乐(Music Minus One,MMO)、部落战争(Clash of Clans,COC)、枪战、跑酷躲避等玩法。

另外,综合区域是指多个单独的子区域组合而成的区域,比如多个省(市或自治区)组合而成的国家区域,多个国家组合而成的区域等,这里不进行限定。

步骤102,响应于在综合区域的配置接口输入的目标综合区域,获取目标应用分别在目标综合区域中至少一个锚点区域内的第一应用信息及对应的第一流水信息。

由于在第一参数配置界面可以输入多个参数的配置参数值,其中,当用户通过第一参数配置界面的相应配置接口输入目标应用中的特征功能,则数据处理系统会响应于在综合区域的配置接口输入的目标综合区域及在目标应用中特定功能的配置接口输入的目标功能,会获取目标应用中的目标功能分别在目标综合区域中至少一个第一区域内的第一应用信息和对应的第一流水信息。

例如,目标应用为游戏应用,当用户通过第一参数配置界面的相应配置接口数输入的目标综合区域为“东南亚”,输入的特征功能为游戏应用的玩法1(比如动作类)内所包括的玩法2(音乐舞蹈),则数据处理系统会获取游戏应用的玩法1中的玩法2在“东南亚”区域内一个国家的第一应用信息和对应的第一流水信息。

其中,锚点区域是指作为参考点或参考系的区域,是目标综合区域内包括的一个独立子区域,针对同一综合区域的流水估计,如果选择的锚点区域不同,会导致获取结果有所差异,而锚点区域对应的第一流水信息可以是事先预置在数据处理系统中,这里第一流水信息是指目标应用在锚点区域内的收入信息。

在其它实施例中,如果目标综合区域中任一独立子区域的第一流水信息都是未知的,则数据处理系统需要根据目标应用在某一独立子区域的第一应用信息及预置的单独预测模型,来获取对应的第一流水信息,并将该独立子区域作为锚点区域。其中,目标应用在某一独立子区域的第一应用信息是指目标应用在某一独立子区域内应用的过程中产生的信息,比如可以包括但不限于如下信息:目标应用在该独立子区域的下载信息、目标应用所应用的平台(比如应用在安卓系统或苹果系统等)、玩法详情及开发商等信息。

这里预置的单独预测模型是一种基于人工智能的机器学习模型,可以事先通过一定的训练方法训练得到,并将其运行逻辑设置到数据处理系统中。具体地,该单独预测模型可以是因子分解机(Factorization Machines,FM)模型等,该FM模型可以解决稀疏数据下的特征组合问题,被广泛应用于信息推荐等预估场景中,且由于FM模型会考察特征属性共线加成的特性(即交叉项),更适合对流水信息进行估计的场景中。

步骤103,根据上述步骤102获取的第一应用信息、第一流水信息及预置的综合预测模型,获取目标应用在目标综合区域内的综合流水信息。

这里预置的综合预测模型是一种基于人工智能的机器学习模型,可以事先通过一定的训练方法训练得到,并将其运行逻辑设置到数据处理系统中,具体地,该综合预测模型可以包括多个决策树,比如极端梯度提升(extreme gradient boosting,XGBoost)决策树等,其中,XGBoost是在增加决策树的梯度(Gradient Boosted Decision Trees,GBDT)算法的基础上对boosting算法进行的改进,速度快、效果好且能处理大规模数据。

其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

而机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。

具体地,如果锚点区域为一个锚点区域,则综合预测模型会根据目标应用在一个锚点区域的第一应用信息和第一流水信息,直接获取目标应用在目标综合区域内的综合流水信息。

如果锚点区域为多个锚点区域,则综合预测模型会先分别根据多个锚点区域中各个锚点区域的第一应用信息和第一流水信息,获取目标应用在目标综合区域内的流水信息,得到多个流水信息;然后根据多个流水信息及相应锚点区域的权重信息来确定目标应用在目标综合区域内的综合流水信息。其中,任一锚点区域的权重信息是基于综合预测模型对任一锚点区域内流水信息预测的准确性获取的,如果准确性较大,则对应的权重信息也较大。

步骤104,将综合流水信息显示到第一参数配置界面。

可见,在本实施例的方法中,数据处理系统会根据目标应用在任一综合区域中锚点区域内的第一应用信息、第一流水信息及预置的综合预测模型,直接获取目标应用在任一综合区域的综合流水信息,这样,可以参考任一综合区域中锚点区域的相关信息,即可预测出目标应用在该综合区域内的综合流水信息,使得在获取局部少量数据的情况下,可以得到目标应用在大范围内的综合流水信息,且实践证明获取的综合流水信息的准确性也较高。

在一个具体的实施例中,上述预置的综合预测模型具体包括多个决策树,则数据处理系统可以通过如下步骤来训练预置的综合预测模型,参考图3所示,包括:

步骤201,确定第一训练样本,第一训练样本包括多组样本,每组样本中包括样本应用在一个综合区域的实际综合流水信息、及在一个综合区域中各个独立子区域内的应用信息和流水信息。

步骤202,根据第一训练样本中各组样本中任一独立子区域内的应用信息和流水信息确定多个条件组合。

这里任一条件组合是指独立子区域内的应用信息和流水信息中至少一个参数的条件,而多个条件组合可以是将独立子区域内的应用信息和流水信息中条件组合的所有可能组合。例如,独立子区域内的应用信息中包括下载数、应用平台和开发商等信息,则任一条件组合可以包括下载数、应用平台和开发商中至少一个参数所满足的条件,比如某一条件组合包括:下载数大于某一值及应用平台属于某一平台等。

步骤203,基于多个条件组合及实际综合流水信息确定对应的决策树。

其中,决策树包括多个根节点及其对应的根节点,根节点用于表示一个独立子区域的流水信息,叶子节点用于表示根据某一条件组合得到相应的综合区域的综合流水信息,任一条件组合为任一独立子区域的流水信息和应用信息中参数条件的组合,从根节点到一个叶子节点所经过的路径是一种条件组合。这样,针对一个独立子区域可以训练得到一组决策树。

具体在决策树的训练过程中,数据处理系统会先根据某一独立子区域内的应用信息和流水信息确定多个条件组合,并基于多个条件组合确定一个决策树后,会根据上述第一训练样本中相应的实际综合流水信息来计算该决策树的残差,该残差用于表示实际综合流水信息与根据决策树得到的综合流水信息之间的差异;进而再根据残差,及基于另一独立子区域内的应用信息和流水信息确定的多个条件组合确定另一决策树并计算其残差,这样重复多次执行确定决策树及计算残差的步骤,最终可以训练得到多个决策树,即为上述预置的综合预测模型。

其中,具体执行多少次确定决策树及计算残差的步骤,需要通过一个收敛条件来决定,即每次执行了确定决策树和计算残差的步骤后,需要判断是否满足收敛条件,如果满足,则不会再确定另一决策树,如果不满足,需要再确定另一决策树。其中,收敛条件可以包括但不限于如下条件:

例如图4所示的一个决策树包括根节点1,及5个对应的叶子节点,根节点表示一个独立子区域的应用信息和流水信息,根节点到每个根节点所经过的路径表示一个条件组合,而每个叶子节点表示相应条件组合下中综合区域的综合流水信息。

需要说明的是,在训练决策树的过程中,传统的方法是按照分类回归二叉树的方法来训练决策树,得到的决策树从根节点开始进行条件的判断,根据判断结果进入一个叶子节点,然后再进行条件判断后进入到下一层叶子节点,这样逐层地走到最终的叶子节点,比如第一层左分支节点是“东”,右分支节点是“非东”,然后右分支节点继续分第二层,左分支节点为“西”,右分支节点为“非西”,然后右分支节点再细分第三层“南”和“北”。这种方法得到的决策树的深度较大,且基于决策树得到的特征矩阵比较稀疏。

为了解决上述问题,在本发明实施例中,先得到所有可能的条件组合,然后直接将这些条件组合作为根节点到某一叶子节点的判断条件,得到的决策树从根节点开始进行条件判断后,根据判断结果可以直接达到最终的叶子节点,大大节省了决策树的深度和训练的迭代次数。例如,按照本发明实施例得到的决策树中,根据节点到各个叶子节点的条件组合可以包括:【{东},{西南北}】、【{东西},{南北}】等。

另外需要说明的是,当训练得到综合预测模型即多个决策树后,数据处理系统在执行上述步骤103时,会将第一应用信息和第一流水信息输入到每个决策树,得到一个相应的综合流水信息,然后将基于每个决策树得到的综合流水信息进行加权后,按照一定函数计算即可得到最终的综合流水信息。其中,基于每个决策树得到的综合流水信息的权重值为相应决策树的权重值,且由于在训练过程中,靠后得到的决策树是基于之前得到的决策树的残差训练得到的,则越靠前训练得到的决策树,其权重值会越大。

进一步地,由于本发明实施例中,在每个目标综合区域中选择的锚点区域不同,则最终得到的综合流水信息也会不同,因此,本实施例中,为了综合基于不同锚点区域的第一应用信息和第一流水信息获取综合流水信息,为每个锚点区域设置一个权重信息。具体地,在训练得到多个决策树后,数据处理系统还会根据第一训练样本中一个综合区域中任一独立子区域内的应用信息和流水信息,及训练好的决策树获取一个综合区域对应的综合流水信息,然后再结合第一训练样本中相应综合区域的实际综合流水信息,确定基于该独立子区域的应用信息和流水信息来获取综合区域的综合流水信息的准确度,进而根据确定的准确度来设置该独立子区域的权重信息,具体地,准确度越高,则权重信息越大。

本发明另一个实施例提供一种数据处理方法,主要是由数据处理系统所执行的方法,与上述实施例中的数据处理方法不同的是,上述实施例中的数据处理方法是对目标应用在多个独立子区域组成的任一综合区域的流水进行估计,而本实施例中的数据处理方法是对目标应用在任一独立子区域的流水进行估计,本实施例方法的示意图如图5所示,包括:

步骤301,显示独立子区域的第二参数配置界面,在第二参数配置界面包括多个参数分别对应的配置接口,在这多个参数中包括目标应用所应用的独立子区域。

可以理解,用户可以操作数据处理系统,使得数据处理系统显示独立子区域的第二参数配置界面,该第二参数配置界面用于对某一独立子区域的流水估计过程中涉及的参数进行配置,这些参数可以包括目标应用所应用的独立子区域,还可以包括时间段、目标应用中某些特定功能、上线时间及上线平台等参数。其中,独立子区域是对目标应用在实际应用的区域进行统计的单位区域,比如一个国家或一个省(市或自治区)区域等。

步骤302,响应于在独立子区域的配置接口输入的目标独立子区域,获取目标应用在目标独立子区域的第二应用信息。

由于在第二参数配置界面可以输入多个参数的配置参数值,其中,当用户通过第二参数配置界面的相应配置接口输入目标应用中的特征功能,则数据处理系统会响应于在独立子区域的配置接口输入的目标独立子区域及在目标应用中特定功能的配置接口输入的目标功能,会获取目标应用中的目标功能在目标独立子区域内的第二应用信息。其中,目标应用在目标独立子区域的第二应用信息可以包括但不限于如下信息:目标应用在该目标独立子区域的下载信息、目标应用所应用的平台(比如应用在安卓系统或苹果系统等)、玩法详情及开发商等信息。

例如,目标应用为游戏应用,当用户通过第二参数配置界面的相应配置接口数输入的目标独立子区域为“中国”,输入的特征功能为游戏应用的玩法1(比如动作类)内所包括的玩法2(音乐舞蹈),则数据处理系统会获取游戏应用的玩法1中的玩法2在“中国”区域内的第二应用信息。

步骤303,根据上述步骤102获取的第二应用信息及预置的单独预测模型,获取目标应用在目标独立子区域内的第二流水信息。

这里,预置的单独预测模型是一种基于人工智能的机器学习模型,可以事先通过一定的训练方法训练得到,并将其运行逻辑设置到数据处理系统中。具体地,该单独预测模型可以是FM模型等。

步骤304,将第二流水信息显示到第二参数配置界面。

可见,在本实施例的方法中,数据处理系统会根据目标应用在任一目标独立子区域内的第二应用信息及预置的单独预测模型,可以直接获取目标应用在目标独立子区域的第二流水信息。

在一个具体的实施例中,数据处理系统可以按照如下步骤对预置的单独预测模型进行训练,流程图如图6所示,包括:

步骤401,确定单独预测初始模型及第二训练样本,第二训练样本中包括样本应用在多个独立子区域分别对应的样本应用信息及实际流水信息。

可以理解,数据处理系统在确定单独预测初始模型时,会确定单独预测初始模型所包括的多层结构和各层结构中固定参数的初始值。

具体地,单独预测初始模型可以包括:特征提取模块和预测模块,其中,特征提取模块用于提取目标应用在任一独立子区域的第二应用信息的特征信息,预测模块用于根据特征提取模块提取到的特征信息确定目标应用在任一独立子区域的第二流水信息。

单独预测初始模型的固定参数是指单独预测初始模型中各层结构在实际计算过程中所用到的固定的,不需要随时赋值的参数,比如参数规模、网络层数、权重值、用户向量长度等参数。

步骤402,通过单独预测初始模型分别根据各个样本应用信息确定样本应用在相应独立子区域的预测流水信息。

具体地,单独预测初始模型中的特征提取模块会提取各个样本应用信息的特征信息,预测模块再根据特征提取模块提取到的特征信息确定样本应用在相应独立子区域的预测流水信息。

步骤403,根据预测流水信息及第二训练样本中的实际流水信息,调整单独预测初始模型中的固定参数值。

具体地,数据处理系统会先根据上述步骤402中单独预测初始模型得到的预测流水信息,及各个第二训练样本相应独立子区域的实际流水信息,计算与单独预测初始模型相关的损失函数,该损失函数用于指示单独预测初始模型确定的各个独立子区域的预测流水信息与实际流水信息之间的误差,该损失函数可以为交叉熵损失函数等。而单独预测初始模型的训练过程就是需要尽量减少上述误差的值,该训练过程是通过反向传播求导以及梯度下降等一系列数学优化手段不断的优化上述步骤401中确定的单独预测初始模型中固定参数的参数值即固定参数值,并使得上述损失函数的计算值降至最低。

具体地,当计算的损失函数的函数值较大时,比如大于预置的值,则需要改变固定参数值,比如将某个神经元连接的权重值减小等,使得按照调整后的固定参数值计算的损失函数的函数值减小。

需要说明的是,上述步骤402和403是通过单独预测初始模型确定的预测流水信息对单独预测初始模型中的固定参数值的一次调整,而在实际应用中,需要通过不断地循环执行上述步骤402到403,直到对固定参数值的调整满足一定的停止条件为止。

因此,单独预测初始模型在执行了上述实施例步骤402到403之后,还需要判断当前对固定参数值的调整是否满足预置的停止条件,当满足时,则结束流程;当不满足时,则针对调整固定参数值后的单独预测初始模型,返回执行上述步骤402到403。其中,预置的停止条件包括但不限于如下条件中的任何一个:当前调整的固定参数值与上一次调整的固定参数值的差值小于一阈值,即调整的固定参数值达到收敛;及对固定参数值的调整次数等于预置的次数等。

进一步地,本发明实施例中,在具体训练单独预测模型的过程中,可以通过如下几个方面来精确地训练单独预测模型:

(1)损失函数的设定

具体地,数据处理系统在具体执行上述步骤403时,在根据预测流水信息及第二训练样本中的实际流水信息计算与单独预测初始模型相关的损失函数时,确定损失函数包括:预测流水信息和实际流水信息的绝对差值,与实际流水信息的函数计算值之间的乘积;然后再根据损失函数调整单独预测初始模型中的固定参数值。其中,实际流水信息的函数计算值是指实际流水信息与其它数值的计算值,比如实际流水信息与1的和等。

例如,损失函数L可以通过如下公式1来表示,其中,y

其中,y

也就是允许单独预测模型在实际流水信息yi很小的场景下单独预测初始模型的预测准确度低,这样,由于对固定参数值的调整不够精细而使得最终得到的单独预测模型的精确度不高;而在实际流水信息yi很大的场景下单独预测初始模型的预测准确度不高时会受到较大的惩罚,这样,由于对固定参数值的调整够精细使得最终得到的单独预测模型的精确度高,更倾向找到潜在的流水信息较大的目标应用,提高对流水信息较大的目标应用的覆盖率。

(2)模型退火,也就是对训练单独预测模型的过程中,以一定的概率接受根据增加的损失函数调整的固定参数值。

具体地,数据处理系统在循环执行上述步骤403的过程中,当每次根据损失函数调整单独预测初始模型中的固定参数值之后,还可以执行如下步骤:

如果当前循环计算的损失函数小于上一次循环时计算的损失函数,根据当前循环计算的损失函数调整的固定参数值。如果当前循环计算的损失函数大于上一次循环时计算的损失函数,确定一随机数,当随机数小于预置概率,接受根据当前循环计算的损失函数调整的固定参数值;如果当前循环计算的损失函数大于上一次循环时计算的损失函数,确定一随机数,当随机数大于或小于预置概率P,将固定参数值回退到根据上一次循环计算的损失函数调整的固定参数值,也就是以一定的预置概率P接受基于当前循环计算的损失函数调整的固定参数值。

其中,预置概率P可以通过如下公式2来表示,其中,ΔL为当前循环时计算的损失函数与上一次循环时计算的损失函数之差,n为总循环次数,i为当前循环为第几次循环:

这样,通过模拟退火的方式主要是以一定的概率(即预置概率)接受使得损失函数变大的固定参数值,使得更快地对固定参数值的调整达到收敛,其中预置概率可以按照一定的方式进行更新,比如随着循环(即迭代)次数增加而减小,这样可以在训练过程中,损失函数能跳过局部极小值而更容易找到全局最小值,进而得到更合适的固定参数值。

(3)梯度裁剪

由于对单独预测模型的训练是通过梯度下降的方式更新固定参数值,使得固定参数值在训练集上的损失函数逐步逼近全局最小,其中,梯度是对损失函数求固定参数值(主要是权重信息)的偏导得到的向量。即数据处理系统需要调整固定参数值,使得计算的梯度降低,进而使得损失函数逐步逼近全局最小。

由于在计算梯度后,需要储存计算的梯度,这样,在梯度计算过程中,由于各个梯度分量涉及复合函数求导,也就是连乘,例如1000*1000会得到100万,乘积累积量比加和累积量大很多,因此,在训练过程中,容易出现由于累计的梯度太大而导致超过存储上限的情况,即梯度爆炸,因此,需要对梯度保持方向相同的裁剪,进而防止梯度爆炸。

具体地,数据处理系统在调整单独预测初始模型中的固定参数值时,当固定参数值的变化量(主要是权重信息)对应的模长超过某一阈值threshold时,先将固定参数值的变化量进行压缩,得到压缩后的变化量,其中,对固定参数值的变化量的压缩倍数为阈值与固定参数值的变化量对应的模长的比值,与1之间的最小值;然后再根据压缩后的变化量调整单独预测初始模型中的固定参数值。其中,固定参数值的变化量是基于梯度来计算的,而梯度又是根据上述计算的损失函数来计算的。

因此,压缩后的固定参数值的变化量W可以通过如下公式3来表示,这个过程称为梯度裁剪的过程:

例如,固定参数值的变化量为权重矩阵(3,4),保持该权重矩阵在梯度方向,而进行模长的压缩,比如压缩为(3/5,4/5)。

(4)提前终止

具体地,数据处理系统会设置一个验证集,该验证集中包括测试应用在任一独立子区域的验证应用信息,这样当每次执行了上述步骤402和403后,如果当前调整固定参数值后的单独预测初始模型根据验证应用信息计算的损失函数,与上一次调整固定参数值后的单独预测初始模型根据验证应用信息计算的损失函数的差值小于预置值,即ΔL小于预置值,停止循环执行所述确定预测流水信息及调整固定参数值的步骤。

这样,在训练单独预测模型的过程中,可以设置第二训练样本(Training)和测试集(Testing),还可以设置验证集(Validation),其中,第二训练样本主要是用于训练单独预测模型,验证集中的数据主要用于提前终止训练过程中循环,测试集中的数据主要用于评价训练的单独预测模型的泛化能力,即对新数据的预测效果,对应的数据占比可以分别为80%、10%和10%,或者其他比例,在此不进行限定。

以下以一个具体的应用实例来说明本发明的数据处理方法,在本实施例中,目标应用具体为游戏应用,任一独立子区域为国家区域,而综合区域为有多个国家组成的区域,本实施例的方法可以包括如下两个部分:

(一)获取游戏应用在独立子区域的流水信息

(1)如图7所示,数据处理系统可以按照如下步骤对某一游戏应用在任一国家区域的流水信息:

步骤501,显示国家区域的第二参数配置界面,第二参数配置界面包括多个参数的配置接口,多个参数包括游戏应用所应用的国家区域、时间段信息、游戏应用、一级玩法、二级玩法及应用的市场等参数。

如图8所示的FM算法的选项卡,即第二参数配置界面,在该选项卡上包括游戏应用、上线时间、时间段、国家、市场、一级玩法和二级玩法的配置接口,其中,通过游戏应用的配置接口可以输入目标游戏应用,通过时间段可以输入待获取的游戏应用在国家区域的流水信息的时间段,通过国家的配置接口可以输入目标国家区域;通过市场的配置接口可以输入游戏应用所应用的平台,比如选iOS或Google Play或者安卓等平台;通过一级玩法的配置接口可以输入游戏应用的特定功能,比如动作类,棋牌类,策略类,RPG类,益智类和新品类等;通过二级玩法的配置接口可以输入游戏应用的特定功能,比如卡牌,棋牌,音乐舞蹈,MMO,COC,枪战,跑酷躲避等等玩法。其中,一级玩法和二级玩法之间是层次包含的关系,比如一级玩法下有二级玩法。

当用户通过FM算法的选项卡中各个配置接口相应的信息后,点击“查询”按钮,则数据处理系统会按照如下步骤对目标国家区域的流水信息进行估计,并显示到该选项卡上。

步骤502,响应于在国家区域的配置接口输入的目标国家区域,及在市场的配置接口输入的目标市场,及在一级玩法和二级玩法分别对应的配置接口输入的一级玩法和二级玩法,数据处理系统会获取游戏应用在目标市场上线后,游戏应用中一级玩法下的二级玩法在目标国家区域的第二应用信息。

步骤503,根据第二应用信息及预置的单独预测模型,在本实施例中,单独预测模型具体为FM模型,获取游戏应用在目标国家区域的流水信息,并将获取的流水信息显示到第二参数配置界面。

(2)如图9所示,数据处理系统可以按照如下步骤对上述FM模型进行训练:

步骤601,确定FM初始模型、第二训练样本和验证集,第二训练样本中包括样本游戏在多个国家区域分别对应的样本应用信息及实际流水信息,验证集中包括验证游戏在多个国家区域分别对应的验证应用信息及实际流水信息。

步骤602,FM初始模型分别根据第二训练样本中各个样本游戏对应的样本应用信息确定样本游戏在相应国家区域的预测流水信息。

步骤603,根据预测流水信息及第二训练样本中的实际流水信息计算与FM初始模型相关的损失函数。

具体地,对于FM初始模型的计算公式可以通过如下公式4来表示:

其中,需要获取的固定参数包括w

其中,

结合上述公式4和5,经过公式推导,得到上述公式4中等号右边第三部分可以通过如下公式6来表示:

随后通过使用随机梯度下降(stochastic gradient descent,SGD)进行训练,获得对固定参数值进行更新的核心公式,具体可以通过如下公式7来表示:

其中,x=(x

其中,θ为需要调整的固定参数w

则梯度可以通过如下公式10来表示:

步骤604,根据上述损失函数调整FM初始模型中的固定参数值。

具体地,在调整固定参数值的过程中,需要按照一定的条件来裁剪梯度,具体地,当固定参数值的变化量对应的模长超过阈值,将固定参数值的变化量进行压缩,其中,对固定参数值的变化量的压缩倍数为阈值与固定参数值的变化量对应的模长的比值,与1之间的最小值,然后再根据压缩后的变化量调整FM初始模型中的固定参数值。其中,固定参数值的变化量主要是通过梯度计算得到的,而梯度又是基于损失函数计算得到的。

步骤605,判断当前循环时计算的损失函数L

步骤606,判断是否接受上述步骤604调整的固定参数值,如果接受,则FM初始模型当前的固定参数值为上述步骤604中调整的固定参数值w

具体地,数据处理系统会以一定概率即预置概率来接受步骤604调整的固定参数值,具体地,生成一个随机数,如果随机数小于预置概率,可以接受上述步骤604调整的固定参数值,如果随机数大于或等于预置概率,则不接受步骤604调整的固定参数自,需要回退到上一次循环时调整的固定参数值。

步骤607,判断是否提前终止当前的训练流程,如果是,则结束训练流程;如果不是,继续执行步骤608。

具体地,数据处理系统在判断是否提前终止当前的训练流程时,确定当前调整固定参数值后的FM初始模型在验证集上计算的损失函数,与上一次调整固定参数值后的FM初始模型在验证集上计算的损失函数之间的差值是否小于预置值,如果小于,则提前终止当前的训练流程;如果不小于,则不需要提前终止当前的训练流程。

步骤608,判断当前对固定参数值的调整是否满足预置的停止条件,当满足时,则结束训练流程;当不满足时,则针对调整固定参数值后的FM初始模型,返回执行上述步骤602。

(二)获取游戏应用在综合区域的综合流水信息

(1)如图10所示,数据处理系统可以按照如下步骤对某一游戏应用在任一综合区域的综合流水信息,其中综合区域为多个国家组成的区域:

步骤701,显示综合区域的第一参数配置界面,第一参数配置界面包括多个参数的配置接口,多个参数包括游戏应用所应用的综合区域、时间段信息、游戏应用、一级玩法、二级玩法及应用的市场等参数。

如图11所示的XGboost算法的选项卡,即第一参数配置界面,在该选项卡上包括游戏应用、上线时间、时间段、综合区域、市场、一级玩法和二级玩法的配置接口,其中,通过综合区域的配置接口可以输入目标综合区域,比如亚太区域等,通过一级玩法的配置接口可以输入游戏应用的特定功能,比如动作类,棋牌类,策略类,RPG类,益智类和新品类等;通过二级玩法的配置接口可以输入游戏应用的特定功能,比如卡牌,棋牌,音乐舞蹈,MMO,COC,枪战,跑酷躲避等等玩法。其中,一级玩法和二级玩法之间是层次包含的关系,比如一级玩法下有二级玩法。

当用户通过XGboost算法的选项卡中各个配置接口相应的信息后,点击“查询”按钮,则数据处理系统会按照如下步骤对目标综合区域的流水信息进行估计,并显示到该选项卡上。

步骤702,响应于在综合区域的配置接口输入的目标综合区域,及在市场的配置接口输入的目标市场,及在一级玩法和二级玩法分别对应的配置接口输入的一级玩法和二级玩法,数据处理系统会获取游戏应用在目标市场上线后,游戏应用中一级玩法下的二级玩法在目标综合区域中至少一个锚点区域的第一应用信息和第一流水信息。其中,锚点区域可以是目标综合区域内包括个某些国家区域。

步骤703,根据各个锚点区域的第一应用信息、第一流水信息及预置的综合预测模型,在本实施例中,综合预测模型具体为XGboost模型,获取游戏应用在目标综合区域的综合流水信息,并将获取的综合流水信息显示到第一参数配置界面。

(2)如图12所示,数据处理系统可以按照如下步骤对上述XGboost模型进行训练:

步骤801,确定第一训练样本,第一训练样本包括多组样本,每组样本中包括样本游戏在一个综合区域的实际综合流水信息、及在一个综合区域中各个国家区域内的应用信息和流水信息。

步骤802,根据第一训练样本中各组样本中任一国家区域内的应用信息和流水信息确定多个条件组合。这里任一条件组合是指国家区域内的应用信息和流水信息中至少一个参数的条件,而多个条件组合可以是将国家区域内的应用信息和流水信息中条件组合的所有可能组合。

步骤803,基于多个条件组合及实际综合流水信息确定对应的决策树。

其中,决策树包括多个根节点及其对应的根节点,根节点用于表示一个条件组合,根节点用于表示根据条件组合得到相应的综合区域的综合流水信息,任一条件组合为任一国家区域的流水信息和应用信息中参数条件的组合。

本实施例中,为了综合基于不同锚点区域的第一应用信息和第一流水信息获取综合流水信息,为每个锚点区域设置一个权重信息。具体地,在训练得到多个决策树后,数据处理系统还会根据第一训练样本中一个综合区域中任一国家区域内的应用信息和流水信息,及训练好的决策树获取一个综合区域对应的综合流水信息,然后再结合第一训练样本中相应综合区域的实际综合流水信息,确定基于该国家区域的应用信息和流水信息来预测综合区域的综合流水信息的准确度,进而根据确定的准确度来设置该国家区域的权重信息,具体地,准确度越高,则权重信息越大。

可见,本实施例中,将预置的单独预测模型和综合预测模型结合在一起,既能满足业务需求预估某一特定范围(即国家区域)内产品(比如游戏应用)的表现情况,又能对产品在较大范围(比如全球)的表现作出预估和判断。在实际应用过程中,对于某一游戏1在日本市场的半年收入进行估计时,根据FM模型获取,该游戏1上线2-7月的月均流水为15万美元,而实际流水为14.5万美元;对于另一游戏2,通过使用XGBOOST模型的预测,获取该游戏2上线2-7月的月均流水为15万美元,实际流水为14.6万美元,从而进一步预估全球流水约36万美元,而实际全球流水为33万美元,可见通过本实施例的预测模型预估的流水较准确,这样更好的指导了后续出海产品在不同地区的资源投放,另外,预测模型对有意投资的潜在产品,以及产品收益的预测也起到了重大作用。

本发明实施例还提供一种数据处理系统,其结构示意图如图13所示,具体可以包括:

界面显示单元10,用于显示综合区域的第一参数配置界面,所述第一参数配置界面包括多个参数分别对应的配置接口,所述多个参数包括目标应用所应用的综合区域。

配置接口响应单元11,用于响应于在所述界面显示单元10显示的综合区域的配置接口输入的目标综合区域,获取所述目标应用分别在目标综合区域中至少一个锚点区域内的第一应用信息及对应的第一流水信息。

具体地,所述多个参数还包括所述目标应用中的特定功能;则配置接口响应单元11具体用于响应于在所述综合区域的配置接口输入的目标综合区域及在所述目标应用中特定功能的配置接口输入的目标功能,获取所述目标应用中的目标功能分别在目标综合区域中至少一个第一区域内的第一应用信息和对应的第一流水信息。

预测单元12,用于根据所述配置接口响应单元11获取的第一应用信息、第一流水信息及预置的综合预测模型,获取所述目标应用在目标综合区域内的综合流水信息。

当所述锚点区域为多个锚点区域,则预测单元12,具体用于所述综合预测模型根据所述多个锚点区域中任一锚点区域的第一应用信息和第一流水信息,分别获取所述目标应用在目标综合区域内的流水信息,得到多个流水信息;根据所述多个流水信息及相应锚点区域的权重信息,确定所述目标应用在目标综合区域内的综合流水信息;其中,任一锚点区域的权重信息是基于所述综合预测模型对所述任一锚点区域内流水信息预测的准确性获得的。

结果显示单元13,用于将所述预测单元12获取的综合流水信息显示到所述第一参数配置界面。

进一步地,本实施例的数据处理系统还可以包括:训练单元14,用于训练预置的综合预测模型,该综合预测模型包括多个决策树,具体用于确定第一训练样本,所述第一训练样本包括多组样本,每组样本中包括样本应用在一个综合区域的实际综合流水信息、及在所述一个综合区域中各个独立子区域内的应用信息和流水信息;根据所述第一训练样本中各组样本中任一独立子区域内的应用信息和流水信息确定多个条件组合,基于所述多个条件组合及所述实际综合流水信息确定对应的决策树,以得到所述多个决策树;其中,所述决策树包括根节点及其对应的多个叶子节点,所述根节点用于表示一个独立子区域的流水信息和应用信息,所述叶子节点用于表示根据某一条件组合得到相应的综合区域的综合流水信息,任一条件组合为所述任一独立子区域的流水信息和应用信息中参数条件的组合。

这样,上述训练单元14,还用于根据所述第一训练样本中任一独立子区域的应用信息和流水信息及所述多个决策树,获取相应综合区域的综合流水信息;根据所述获取的综合流水信息及所述第一训练样本中相应综合区域的实际综合流水信息,确定基于所述任一独立子区域的应用信息和流水信息预测综合流水信息的准确度;根据所述准确度设置所述任一独立子区域的权重信息。

在一个具体的实施例中,上述的界面显示单元10,还用于显示独立子区域的第二参数配置界面,所述第二参数配置界面包括多个参数的配置接口,所述多个参数包括目标应用所应用的独立子区域;配置接口响应单元11,还用于响应于在所述独立子区域的配置接口输入的目标独立子区域,获取所述目标应用在目标独立子区域的第二应用信息;预测单元12,还用于根据所述第二应用信息及预置的单独预测模型,获取所述目标应用在目标独立子区域的第二流水信息;结果显示单元13,还用于将所述第二流水信息显示到所述第二参数配置界面。

进一步地,训练单元14,还用于训练单独预测模型,具体用于确定单独预测初始模型及第二训练样本,所述第二训练样本中包括样本应用在多个独立子区域分别对应的样本应用信息及实际流水信息;所述单独预测初始模型分别根据各个样本应用对应的样本应用信息确定样本应用在相应独立子区域的预测流水信息;根据所述预测流水信息及所述第二训练样本中的实际流水信息,调整所述单独预测初始模型中的固定参数值;循环执行所述确定预测流水信息及调整固定参数值的步骤,以得到最终的单独预测模型。

其中,训练单元14在根据所述预测流水信息及所述第二训练样本中的实际流水信息,调整所述单独预测初始模型中的固定参数值时,具体用于根据所述预测流水信息及所述第二训练样本中的实际流水信息计算与所述单独预测初始模型相关的损失函数,所述损失函数包括:所述预测流水信息和所述实际流水信息的绝对差值,与所述实际流水信息的函数计算值之间的乘积;根据所述损失函数调整所述单独预测初始模型中的固定参数值。

训练单元14,还用于在根据所述损失函数调整所述单独预测初始模型中的固定参数值时,当所述固定参数值的变化量对应的模长超过阈值,将所述固定参数值的变化量进行压缩,得到压缩后的变化量,其中,对所述固定参数值的变化量的压缩倍数为所述阈值与固定参数值的变化量对应的模长的比值,与1之间的最小值;根据所述压缩后的变化量调整所述单独预测初始模型中的固定参数值。

进一步地,训练单元14还用于在根据所述损失函数调整所述单独预测初始模型中的固定参数值之后,如果当前循环计算的损失函数小于上一次循环时计算的损失函数,接受根据所述当前循环计算的损失函数调整的固定参数值;如果当前循环计算的损失函数大于上一次循环时计算的损失函数,确定一随机数,当所述随机数小于预置概率,接受根据所述当前循环计算的损失函数调整的固定参数值;如果当前循环计算的损失函数大于上一次循环时计算的损失函数,确定一随机数,当所述随机数大于或小于预置概率,将所述固定参数值回退到根据所述上一次循环计算的损失函数调整的固定参数值。

进一步地,训练单元14,还用于在循环执行所述确定预测流水信息及调整固定参数值的步骤之前,设置验证集,所述验证集中包括测试应用在任一独立子区域的验证应用信息;如果当前调整所述固定参数值后的单独预测初始模型根据所述验证应用信息计算的损失函数,与上一次调整固定参数值后的单独预测初始模型根据所述验证应用信息计算的损失函数的差值小于预置值,停止循环执行所述确定预测流水信息及调整固定参数值的步骤。

在本实施例的数据处理系统中,预测单元12会根据目标应用在任一综合区域中锚点区域内的第一应用信息、第一流水信息及预置的综合预测模型,直接获取目标应用在任一综合区域的综合流水信息,这样,可以参考任一综合区域中锚点区域的相关信息,即可预测出目标应用在该综合区域内的综合流水信息,使得在获取局部少量数据的情况下,可以得到目标应用在大范围内的综合流水信息,且实践证明获取的综合流水信息的准确性也较高。

本发明实施例还提供一种终端设备,其结构示意图如图14所示,该终端设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)20(例如,一个或一个以上处理器)和存储器21,一个或一个以上存储应用程序221或数据222的存储介质22(例如一个或一个以上海量存储设备)。其中,存储器21和存储介质22可以是短暂存储或持久存储。存储在存储介质22的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备中的一系列指令操作。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中的一系列指令操作。

具体地,在存储介质22中储存的应用程序221包括数据处理的应用程序,且该程序可以包括上述数据处理系统中的界面显示单元10,配置接口响应单元11,预测单元12,结果显示单元13和训练单元14,在此不进行赘述。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中储存的数据处理的应用程序对应的一系列操作。

终端设备还可以包括一个或一个以上电源23,一个或一个以上有线或无线网络接口24,一个或一个以上输入输出接口25,和/或,一个或一个以上操作系统223,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。

上述方法实施例中所述的由数据处理系统所执行的步骤可以基于该图14所示的终端设备的结构。

本发明实施例还还提供一种计算机可读存储介质,所述计算机可读存储介质储存多个计算机程序,所述计算机程序适于由处理器加载并执行如上述数据处理系统所执行的数据处理方法。

本发明实施例另一方面还提供一种终端设备,包括处理器和存储器;所述存储器用于储存多个计算机程序,所述计算机程序用于由处理器加载并执行如上述数据处理系统所执行的数据处理方法;所述处理器,用于实现所述多个计算机程序中的各个计算机程序。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM)、随机存取存储器(RAM)、磁盘或光盘等。

以上对本发明实施例所提供的一种数据处理方法、系统及存储介质和终端设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 一种数据处理方法、系统及存储介质和终端设备
  • 一种数据处理方法、系统、终端设备以及存储介质
技术分类

06120112318172