具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
请参阅图1。本说明书实施例提供一种模型训练方法。所述模型训练方法的执行主体可以为计算机设备。所述计算机设备包括但不限于服务器、工控机(工业控制计算机)、个人计算机(PC机)、一体机等。所述模型训练方法可以包括以下步骤。
步骤S10:确定迁移变量和互异变量。
在本实施例中,所述计算机设备可以基于源地区的至少一个历史数据和目标地区的至少一个历史数据,从预置的多个变量中选取迁移变量和互异变量。
在本实施例中,所述源地区的大小可以根据业务需要灵活设定,例如可以为街道、商圈、城市、国家、或多个国家组成的地区等等。所述目标地区的大小可以根据业务需要灵活设定,例如可以为街道、商圈、城市、国家、或多个国家组成的地区等等。所述源地区的每个历史数据和所述目标地区的每个历史数据均可以为任意类型的数据,例如可以为交易数据、商品评论数据、或聊天数据等。所述源地区的每个历史数据和所述目标地区的每个历史数据均可以具有对应于多个维度的多种特征信息。依赖于历史数据类型的不同,所述维度可以相同或不同。例如,所述历史数据可以为交易数据。那么,所述维度可以包括交易渠道、交易场景、交易时间、交易金额、付款账户、收款账户、交易设备标识、和交易网络地址等。所述交易渠道可以包括无线支付、PC支付、和协议支付等。所述交易场景可以包括当面付、批量扣款、房贷还款、和***还款等。具体地,例如,所述源地区的历史数据可以包括DATA_A1、和DATA_A2,所述目标地区的历史数据可以包括DATA_B1、和DATA_B2。所述历史数据DATA_A1、DATA_A2、DATA_B1、和DATA_B2可以如下表1所示。
表1
以上述表1中的历史数据DATA_A1为例,所述历史数据DATA_A1对应于交易渠道、交易场景、交易时间、交易金额、付款账户、收款账户、交易设备标识、交易网络地址等维度的特征信息可以分别为无线支付、当面付、20180430、1000、Account1、Account2、ID1、222.92.XXX.XXX。
所述源地区的每个历史数据和所述目标地区的每个历史数据均可以为有标签数据,所述有标签数据可以理解为被标注有类型标签的数据。所述类型标签可以包括第一类型和第二类型。所述第一类型可以为待识别出的标的业务数据所具有的类型,所述第二类型可以包括除去所述第一类型以外的其它类型。例如,所述标的业务数据可以为涉及欺诈等违法内容的交易数据。那么,所述第一类型可以为风险类型,所述第二类型可以为正常类型。另举一例,所述标的业务数据可以为情感性质为负面的商品评论数据。那么,所述第一类型可以为情感性质为负的类型,所述第二类型可以包括情感性质为正和中立的类型。
所述源地区的至少一个历史数据和所述目标地区的至少一个历史数据均可以用于为所述目标地区训练分类模型。具体地,受限于业务上线时间等因素,所述源地区的历史数据的数量较多,所述目标地区的历史数据的数量较少。鉴于所述目标地区的历史数据的数量较少,单独使用所述目标地区的历史数据来为所述目标地区训练分类模型,训练后的分类模型往往无法有好的分类效果。鉴于所述目标地区和所述源地区的业务逻辑、业务覆盖人群等存在差异,单独使用所述源地区的历史数据来为所述目标地区训练的分类模型,训练后的分类模型往往也无法有好的分类效果。同时使用所述源地区的历史数据和所述目标地区的历史数据来为所述目标地区训练分类模型,充分利用了所述源地区较多数量的历史数据,又兼顾了所述目标地区和所述源地区之间业务逻辑、业务覆盖人群等存在的差异,可有利于使训练后的分类模型达到好的分类效果。
在本实施例中,所述预置的多个变量可以归属于至少一个变量组。依赖于历史数据类型的不同,所述变量组可以相同或不同。例如,所述历史数据可以为交易数据。那么,所述变量组可以包括交易金额变量组、交易次数变量组、和交易时间变量组等。具体地,例如,所述交易金额变量组、所述交易次数变量组、和所述交易时间变量组中的变量可以如下表2所示。
表2
所述预置的多个变量中的每个变量可以用于表征所述源地区历史数据的一种特征信息、以及所述目标地区历史数据的一种特征信息。所述迁移变量可以用于表征所述源地区和所述目标地区之间历史数据的共有特征信息,所述互异变量可以用于表征所述源地区和所述目标地区历史数据的特有特征信息。这里的共有特征信息可以理解为所述源地区和所述目标地区之间历史数据的相似程度较高的特征信息,这里的特有特征信息可以理解为所述源地区和所述目标地区之间历史数据的相似程度较低的特征信息。
在本实施例中,所述计算机设备可以分别获取所述源地区和所述目标地区在指定时间区间内的历史数据;可以将获取的所述源地区的历史数据构成的集合作为第一历史数据集合;可以将获取的所述目标地区的历史数据构成的集合作为第二历史数据集合;可以基于所述第一历史数据集合和所述第二历史数据集合,计算所述预置的多个变量中每个变量的第一特征值;可以基于变量的第一特征值,从所述预置的多个变量中选取至少一个变量作为迁移变量、以及选取至少一个变量作为互异变量。所述指定时间区间可以为任意的时间长度,例如可以为1个月、1个季度、6个月、或1年等。
所述第一特征值可以包括互信息值(Mutual Information,MI)。变量的互信息值可以用于表示该变量在所述第一历史数据集合表征的特征信息与在所述第二历史数据集合表征的特征信息之间的相似程度。互信息值的数值大小可以与该互信息值表示的相似程度正相关。例如,所述计算机设备可以通过公式来计算变量的互信息值;X可以表示该变量在所述第一历史数据集合中的取值构成的集合;Y可以表示该变量在所述第二历史数据集合中的取值构成的集合;x可以表示集合X中的取值;y可以表示集合Y中的取值;p(x,y)可以表示该变量在所述第一历史数据集合中取值为x、且在所述第二历史数据集合中取值为y时的概率(x和y的联合概率);p(x)可以表示该变量在所述第一历史数据集合中取值为x时的概率;p(y)可以表示该变量在所述第二历史数据集合中取值为y时的概率。需要说明的是,以上计算互信息值的公式或方法仅为示例,在实际上还可以有其它的公式或方法计算变量的互信息值。
所述计算机设备可以从所述预置的多个变量中选取互信息值大于或等于第一预设阈值的至少一个变量作为迁移变量;可以从除去选取的迁移变量以外剩余的变量中选取至少一个变量作为互异变量。所述第一预设阈值的大小可以根据实际需要灵活设定。或者,所述计算机设备还可以从所述预置的多个变量中选取互信息值最大的第一预设数量个变量作为迁移变量;可以从除去选取的迁移变量以外剩余的变量中选取至少一个变量作为互异变量。所述第一预设数量的数值大小可以根据实际需要灵活设定。
本领域技术人员应当能够理解,所述第一特征值还可以包括其它的信息值。所述计算机设备可以基于变量的其它信息值,从所述预置的多个变量中选取至少一个变量作为迁移变量、以及选取至少一个变量作为互异变量。
在本实施例的一个实施方式中,所述计算机设备可以基于所述第一历史数据集合和所述第二历史数据集合,计算所述预置的多个变量中每个变量的第二特征值;可以基于变量的第二特征值,从所述预置的多个变量中选取至少一个变量作为代表变量。
所述第二特征值可以包括信息价值(Information Value,IV)。变量的信息价值可以用于表示该变量在所述第一历史数据集合和所述第二历史数据集合中所蕴含的信息量。变量的信息价值的数值越大,表示该变量在所述第一历史数据集合和所述第二历史数据集合中蕴含的信息量越大,从而表示该变量在识别业务数据所具有的类型时的贡献越大。例如,所述计算机设备可以通过公式IV=IV1+IV2、 来计算变量的信息价值;G1可以表示该变量在所述第一历史数据集合中的各个取值所对应第一类型历史数据的数量之和;B1可以表示该变量在所述第一历史数据集合中的各个取值所对应第二类型历史数据的数量之和;GT可以表示该变量在所述第一历史数据集合和所述第二历史数据集合中的各个取值所对应第一类型历史数据的数量之和;BT可以表示该变量在所述第一历史数据集合和所述第二历史数据集合中的各个取值所对应第二类型历史数据的数量之和;G2可以表示该变量在所述第二历史数据集合中的各个取值所对应第一类型历史数据的数量之和;B2可以表示该变量在所述第二历史数据集合中的各个取值所对应第二类型历史数据的数量之和。需要说明的是,以上计算信息价值的公式或方法仅为示例,在实际上还可以有其它的公式或方法计算变量的信息价值。
所述计算机设备可以从所述预置的多个变量中选取信息价值大于或等于第二预设阈值的至少一个变量作为代表变量。所述第二预设阈值的大小可以根据实际需要灵活设定。或者,所述计算机设备可以从所述预置的多个变量中选取互信息值最大的第二预设数量个变量作为代表变量。所述第二预设数量的数值大小可以根据实际需要灵活设定。
本领域技术人员应当能够理解,所述第二特征值还可以包括其它的信息值。所述计算机设备可以基于变量的其它信息值,从所述预置的多个变量中选取至少一个变量作为代表变量。
步骤S12:基于源地区的历史数据,训练基于所述迁移变量和所述互异变量构建的第一分类模型。
在本实施例中,分类模型可以为一种数学模型,用于将未分类的业务数据划分至已知的类型。所述分类模型可以为贝叶斯分类模型、支持向量机分类模型(Support VectorMachine,SVM)、或卷积神经网络分类模型(Convolutional Neural Networks,CNN)等。所述分类模型可以为风险分类模型、情感分类模型、或主题分类模型等。所述风险分类模型可以用于基于风险程度对业务数据进行分类,所述情感分类模型可以用于基于情感性质对业务数据进行分类,所述主题分类模型可以用于基于表达的主题对业务数据进行分类。
所述第一分类模型可以为基于所述迁移变量和所述互异变量构建的分类模型。例如,所述第一分类模型可以为J可以表示目标函数(objectivefunction)。所述目标函数可以用于在机器学习过程中表示预测值和实际值的相近程度。机器学习的目标可以是使得所述目标函数达到最优化。所述目标函数具体可以为任意类型的函数。m可以表示所述互异变量构成的矩阵,例如可以为[m1 m2 … mi …],m1、m2、mi可以分别表示一个互异变量。u1可以表示所述互异变量在所述第一分类模型中的权重构成的矩阵,例如可以为[u11 u12 … u1i …],u11、u12、u1i可以分别表示一个互异变量的权重。n可以表示所述互异变量构成的矩阵,例如可以为[n1 n2 … ni …],n1、n2、ni可以分别表示一个迁移变量。vs可以表示所述迁移变量在所述第一分类模型中的权重构成的矩阵,例如可以为[vs1 vs2 … vsi …],vs1、vs2、vsi可以分别表示一个迁移变量的权重。α可以为经验值,例如可以为0.1、0.3、0.6等。
在本实施例的一个实施方式中,所述第一分类模型可以包括第一权重约束项。所述第一权重约束项可以用于约束所述互异变量在所述第一分类模型的权重,以使得所述第一分类模型在训练过程中能够尽可能多的学习到所述源地区和所述目标地区之间历史数据的共有特征信息。延续前例,所述第一权重约束项可以为所述第一分类模型中的数据项α||u1||2。
在本实施例中,所述计算机设备可以采用任意方式训练所述第一分类模型。延续前例,所述计算机设备训练所述第一分类模型的过程,可以理解为求解公式的最优化问题。所述计算机设备具体可以使用随机梯度下降(Stochastic Gradient Descent,SGD)等算法求解公式求解矩阵u1和vs,以使得公式达到最优化。
步骤S14:基于目标地区的历史数据和所述第一分类模型的训练结果,训练基于所述迁移变量和所述互异变量构建的第二分类模型。
在本实施例中,所述第二分类模型可以为基于所述迁移变量和所述互异变量构建的分类模型。所述第二分类模型与所述第一分类模型不同。具体地,可以对所述第一分类模型进行调整;可以将调整后的第一分类模型作为第二分类模型。调整的过程例如可以包括添加数据项等。例如,所述第一分类模型可以为J可以表示目标函数。m可以表示所述互异变量构成的矩阵。u2可以表示所述互异变量在所述第二分类模型中的权重构成的矩阵。n可以表示所述互异变量构成的矩阵。v可以表示所述迁移变量在所述第二分类模型中的权重构成的矩阵。vs可以表示所述迁移变量在所述第一分类模型中的权重构成的矩阵。α和β可以为经验值。
在本实施例的一个实施方式中,所述第二分类模型可以包括第二权重约束项。所述第二权重约束项可以用于约束所述互异变量在所述第二分类模型的权重。延续前例,所述第二权重约束项可以为所述第二分类模型中的数据项α||u2||2。
在本实施例的一个实施方式中,所述第二分类模型可以包括差异约束项。所述差异约束项可以用于约束所述迁移变量在所述第一分类模型和所述第二分类模型之间权重的差异,以使得所述第二分类模型在训练过程中能够尽可能多的学习到所述目标地区历史数据的特有特征信息。延续前例,所述差异约束项可以为所述第二分类模型中的数据项β||v-vs||。
在本实施例中,所述计算机设备可以采用任意方式训练所述第二分类模型,训练后的所述第二分类模型可以用于识别来自所述目标地区的业务数据的类型。延续前例,所述计算机设备训练所述第二分类模型的过程,可以理解为求解公式的最优化问题。所述计算机设备具体可以使用随机梯度下降等算法求解公式求解矩阵u1和v,以使得公式达到最优化。
在本实施例中,所述计算机设备可以确定迁移变量和互异变量;可以基于源地区的历史数据,训练基于所述迁移变量和所述互异变量构建的第一分类模型;可以基于目标地区的历史数据和所述第一分类模型的训练结果,训练基于所述迁移变量和所述互异变量构建的第二分类模型,所述第二分类模型可以包括差异约束项,所述差异约束项可以用于约束所述迁移变量在所述第一分类模型和所述第二分类模型之间权重的差异。这样,所述第二分类模型可以从源地区的历史数据中学习到源地区和目标地区之间历史数据的共有特征信息;可以从目标地区的历史数据中学习到目标地区历史数据的特有特征信息。从而,所述计算机设备可以同时使用所述源地区的历史数据和所述目标地区的历史数据来为所述目标地区训练分类模型,提高了为所述目标地区训练的分类模型的区分能力。
请参阅图2。本说明书实施例提供一种数据类型识别方法。所述数据类型识别方法的执行主体可以为计算机设备。所述计算机设备包括但不限于服务器、工控机(工业控制计算机)、个人计算机(PC机)、一体机等。所述数据类型识别方法可以包括以下步骤。
步骤S20:使用为目标地区训练的分类模型,识别来自所述目标地区的业务数据的类型。
在本实施例中,所述分类模型可以基于本说明书实施例中的模型训练方法训练得到。所述业务数据可以为任意类型的数据,例如可以为交易数据、商品评论数据、或聊天数据等。
在本实施例中,所述计算机设备可以使用为目标地区训练的分类模型,识别来自所述目标地区的业务数据的类型。具体地,所述计算机设备可以使用为目标地区训练的分类模型,计算来自所述目标地区的业务数据的特征值;可以基于所述业务数据的特征值,识别所述业务数据的类型。例如,所述业务数据可以为交易数据。那么,在所述业务数据的特征值大于或等于预设阈值时,所述计算机设备可以识别所述业务数据的类型为风险类型。在所述业务数据的特征值小于预设阈值时,所述计算机设备可以识别所述业务数据的类型为正常类型。
在本实施例中,所述计算机设备可以使用为目标地区训练的分类模型,识别来自所述目标地区的业务数据的类型。本实施例可以降低业务数据的误识率。
请参阅图3。本说明书实施例提供一种计算机设备。所述计算机设备可以包括以下单元。
确定单元30,用于确定迁移变量和互异变量;所述迁移变量用于表征源地区和目标地区之间历史数据的共有特征信息;所述互异变量用于分别表征源地区和目标地区历史数据的特有特征信息;
第一训练单元32,用于基于源地区的历史数据,训练基于所述迁移变量和所述互异变量构建的第一分类模型;
第二训练单元34,用于基于目标地区的历史数据和所述第一分类模型的训练结果,训练基于所述迁移变量和所述互异变量构建的第二分类模型;所述第二分类模型包括差异约束项;所述差异约束项用于约束所述迁移变量在所述第一分类模型和所述第二分类模型之间权重的差异。
请参阅图4。本说明书实施例提供另一种计算机设备。所述计算机设备可以包括存储器和处理器。
在本实施例中,所述存储器可以按任何适当的方式实现。例如,所述存储器可以为只读存储器、机械硬盘、固态硬盘、或U盘等。所述存储器可以用于存储计算机指令。
在本实施例中,所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以执行所述计算机指令实现以下步骤:确定迁移变量和互异变量;所述迁移变量用于表征源地区和目标地区之间历史数据的共有特征信息;所述互异变量用于分别表征源地区和目标地区历史数据的特有特征信息;基于源地区的历史数据,训练基于所述迁移变量和所述互异变量构建的第一分类模型;基于目标地区的历史数据和所述第一分类模型的训练结果,训练基于所述迁移变量和所述互异变量构建的第二分类模型;所述第二分类模型包括差异约束项;所述差异约束项用于约束所述迁移变量在所述第一分类模型和所述第二分类模型之间权重的差异。
请参阅图5。本说明书实施例提供一种计算机设备。所述计算机设备可以包括以下单元。
识别单元50,用于使用为目标地区训练的分类模型,识别来自所述目标地区的业务数据的类型。所述分类模型可以基于本说明书实施例中的模型训练方法训练得到。
请参阅图4。本说明书实施例提供另一种计算机设备。所述计算机设备可以包括存储器和处理器。
在本实施例中,所述存储器可以按任何适当的方式实现。例如,所述存储器可以为只读存储器、机械硬盘、固态硬盘、或U盘等。所述存储器可以用于存储计算机指令。
在本实施例中,所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以执行所述计算机指令实现以下步骤:使用为目标地区训练的分类模型,识别来自所述目标地区的业务数据的类型;所述分类模型可以基于本说明书实施例中的模型训练方法训练得到。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于计算机设备实施例而言,由于其基本相似于模型训练方法实施例,所以描述的比较简单,相关之处参见模型训练方法实施例的部分说明即可。
另外,可以理解的是,本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书可用于众多通用或专用的计算机***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。