CN112800053B - 数据模型的生成方法、调用方法、装置、设备及存储介质 - Google Patents
数据模型的生成方法、调用方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112800053B CN112800053B CN202110009963.8A CN202110009963A CN112800053B CN 112800053 B CN112800053 B CN 112800053B CN 202110009963 A CN202110009963 A CN 202110009963A CN 112800053 B CN112800053 B CN 112800053B
- Authority
- CN
- China
- Prior art keywords
- data
- client
- model
- customer
- universal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种数据模型的生成方法、装置、计算机设备及存储介质,该方法包括:获取多种不同的客户数据;对多种所述客户数据进行数据处理,获得对应的多种样本数据;将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型;对所述通用客户数据编码模型进行模型后处理;在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,提高了数据建模的效率并降低建模成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据模型的生成方法、调用方法、装置、设备及存储介质。
背景技术
银行对客户进行精细化的运营越来越依赖于现代的数据建模技术,对于不同银行不同数据,不同建模团队会根据以往的个人经验,选择不同建模方法。银行客户数据建模的方法往往需要针对特定的银行的某个特定的任务制定有针对性的建模方案,多个任务制定相应的多个模型,耗用大量的时间。同时,模型容易受到数据不均衡(Data imbalance)、标签数据少等问题的影响,严重影响模型的性能。而且,制作好的模型只能适用在某个特定的任务上,模型的有效期也比较短,有效期过了后又需要针对最近的数据进行重新建模,成本高。
因此,如何提高数据建模的效率并降低建模成本已成为亟待解决的问题。
发明内容
本申请实施例提供一种数据模型的生成方法、调用方法、装置、设备及存储介质,可以实现提高数据建模的效率并降低建模成本。
第一方面,本申请实施例提供了一种数据模型的生成方法,包括:
获取多种不同的客户数据;
对多种所述客户数据进行数据处理,获得对应的多种样本数据;
将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型;
对所述通用客户数据编码模型进行模型后处理;
在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型。
第二方面,本申请实施例还提供了一种数据模型的调用方法,所述数据模型为根据上述的数据模型的生成方法生成,所述数据模型的调用方法包括:
获取待编码客户数据;
将所述待编码客户数据转换为统一的标准存储数据格式;
将标准存储数据格式的所述待编码客户数据输入数据模型,输出编码后的客户表征数据。
第三方面,本申请实施例还提供了一种数据模型处理装置,其特征在于,所述数据模型处理装置包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述的数据模型的生成方法,或实现如上述的数据模型的调用方法。
第四方面,本申请实施例还提供了一种计算机设备,其特征在于,所述计算机设备包括如上述的数据模型处理装置。
第五方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时使所述处理器实现上述的数据模型的生成方法,或实现如上述的数据模型的调用方法。
本申请实施例提供了一种数据模型的生成方法、调用方法、装置、设备及计算机可读存储介质,通过获取多种不同的客户数据,对多种客户数据进行数据处理,获得对应的多种样本数据,并将多种样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,对通用客户数据编码模型进行模型后处理,在处理后的通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入通用客户数据编码模型进行模型微调,获得相应任务的数据模型,提高了数据建模的效率并降低建模成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据模型的生成方法的步骤示意流程图;
图2是本申请实施例提供的一种数据增广处理的示意图;
图3是本申请实施例提供的另一种数据增广处理的示意图;
图4是本申请实施例提供的另一种数据增广处理的示意图;
图5是本申请实施例提供的另一种数据增广处理的示意图;
图6是本申请实施例提供的另一种数据增广处理的示意图;
图7是本申请实施例提供的另一种数据增广处理的示意图;
图8本申请实施例提供的另一种数据增广处理的示意图;
图9本申请实施例提供的一种行内客户正样本数据和行内客户负样本数据的示意图;
图10本申请实施例提供的一种行内客户时空正样本数据和行内客户时空负样本数据的示意图;
图11本申请实施例提供的一种跨行客户正样本数据和跨行客户负样本数据的示意图;
图12是本申请实施例提供的一种数据模型的调用方法的步骤示意流程图;
图13是本申请实施例提供的一种数据模型处理装置的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
目前,传统的银行客户数据建模的方法往往需要针对特定的银行的某个特定的任务制定有针对性的建模方案,多个任务制定相应的多个模型,耗用大量的时间。同时,模型容易受到数据不均衡(Data imbalance)、标签数据少等问题的影响,严重影响模型的性能。而且,制作好的模型只能适用在某个特定的任务上,模型的有效期也比较短,有效期过了后又需要针对最近的数据进行重新建模,成本高。
为了解决上述问题,本申请的实施例提供了一种数据模型的生成方法、调用方法、装置、设备及存储介质,用于实现提高数据建模的效率并降低建模成本。其中,该数据模型的生成方法、调用方法可以应用于计算机设备,如服务器中,该服务器可以为单台的服务器,也可以为由多台服务器组成的服务器集群。
示例性的,以银行客户数据为例,整个编码框架主要由7个大的模块组成,分别是:
模块1:数据转换器。该模块主要功能是使用提前配置好的各个银行客户数据映射模板和标准存储数据格式(银行客户数据映射模板中引用标准存储数据格式文件),完成跨银行客户数据向统一的标准存储数据格式的映射。
模块2:标准客户数据存储器。该模块的主要功能是将数据转换器映射完成的数据按照标准格式进行存储和管理,完成对数据存储策略的定义(数据存储的位置,存储的频率,存储目录的目录结构等),完成对标准存储数据格式的定义,如需要存储哪些数据字段,字段的类型,字段的取值范围,哪些字段需要存储在一起等。标准存储数据格式包含的字段是银行客户信息的全集,尽量涵盖客户和银行系统接触的每个能采集的数据点,例如客户的基础信息,客户资产信息(存款,车产,房产),客户征信信息,信用卡逾期信息,信用卡分期,客户社保、公积金、医保信息,客户贷款信息,客户借记卡信用卡交易流水,客户线上行为信息(APP的登录,点击行为),客户线下行为信息(到访网点,ATM取款),客户投资信息(理财,基金,贵金属,信托),客户购买保险信息,客户交易关系图谱,客户浏览过的H5页面代码,客户营销产品响应结果,客户积分及对话信息,标准存储格式定义文件可提供给数据转换器和数据预处理器引用。
模块3:数据预处理器。该模块的主要功能是定义数据读取和加工的管道的操作,完成从标准客户数据存储器目录中的读取数据,清洗数据、数据预处理、实体嵌入、NLP编码和数据增广等操作,将客户结构化数据转化成深度学习框架能够使用的tensor数据。
模块4:通用编码器训练器。主要功能是利用数据清洗器读取标准客户数据存储器中的数据,使用对比学习训练深度神经网络,构建一个或者多个通用编码器,使用训练完成的通用编码器完成客户高维度数据至低维度数据的表征映射。
模块5:特定任务训练器。组合经过蒸馏后的通用编码器和新的特定任务分类器,使用少量带标签完成如营销活动响应率,客户欺诈侦测等具体任务的模型自动化训练。
模块6:模型管理器。主要功能对通用编码器、特定任务训练器输出的数据模型进行统一管理,对模型训练和验证的数据集、模型训练的超参数、模型训练日志等进行统一管理。模型管理器可以按照模型使用的数据集,使用的部门,数据分析的主题,针对的任务等维度对模型进行版本。模型管理器可以对比同一个模型不同版本下的模型精度,对模型精度提升后的模型进行自动化的部署和版本回退。
模块7:客户查询器。主要功能通过标准的SQL语句或者嵌入空间相似性计算查询特定的场景,特定的产品、特定客群的客户数据,并在UI界面的显示客户在低维空间(2D,3D)下的分布,通过UI界面能够业务人员可以手工的挑选出最佳的客户代表(Prototype)。客户查询器的主要界面,包括数据筛选功能区域,数据显示功能区域,模型结果解释功能区域。其中嵌入空间中的相似性使用编码后的特征变量的欧式距离或者余弦距离来度量。
编码框架可以使用在单个银行个体上,在多个银行个体上跨银行使用,跨越银行使用的机构可以是第三方机构,或者银行系统上级部门。编码框架上可以在外加一层联邦学习框架和同态数据加密算法,用于克服跨银行数据带来的客户数据隐私问题。
请参阅图1,图1是本申请一实施例提供的数据模型的生成方法的流程示意图。
如图1所示,该数据模型的生成方法具体包括步骤S101至步骤S105。
S101、获取多种不同的客户数据。
以银行的客户数据为例,各个银行的多种不同客户数据被采集到统一的服务器节点。其中,由于每个银行具有各自的要求,各个银行的多种不同客户数据可能是不相同的数据格式。
S102、对多种所述客户数据进行数据处理,获得对应的多种样本数据。
示例性的,对多种客户数据进行数据处理包括以下至少一种:数据清洗、数据预处理、实体嵌入、NLP编码和数据增广。
在一些实施例中,步骤S102之前还可以包括:调用数据转换器采用对应的数据转换模板,将多种所述客户数据转换为统一的标准存储数据格式;调用标准客户数据存储器将标准存储数据格式的多种所述客户数据进行存储。
示例性的,各个银行的多种不同客户数据被采集到统一的服务器节点后,调用数据转换器采用对应的数据转换模板和标准存储数据格式文件,完成客户数据到统一的标准存储数据格式的转换。
之后,标准客户数据存储器根据预先定义好的存储策略,将转换为统一的标准存储数据格式的客户数据按照存储策略,以文件的方式或者表格的方式存储在磁盘或者数据库中。需要说明的是,由于可能会出现跨银行的相同客户的问题,每个客户对应唯一的标识,客户对应的唯一标识可以采用统一编码或者身份证的MD5编码来实现唯一标识和关联。
示例性的,调用数据预处理器从标准客户数据存储器目录中的读取客户数据,进行清洗数据、数据预处理、实体嵌入、数据增广等操作,获得对应的样本数据。
在一些实施例中,对多种客户数据进行数据增广包括以下至少一种:
对所述客户数据中连续变化的字段添加随机噪声;
对所述客户数据中相应字段添加字段级随机掩码;
对所述客户数据中相应组别的字段添加字段组级随机掩码;
将所述客户数据的字段组间的顺序进行随机打乱;
采用随机变量对所述客户数据进行随机截断并进行拼接;
采用随机变量将不同的所述客户数据进行混合;
将添加字段级随机掩码或字段组级随机掩码的所述客户数据输入神经网络,生成数据副本;
将同一客户的所述客户数据进行时序打乱后合并;
将同一客户的所述客户数据进行时序翻转;
将不同客户的所述客户数据进行时序拼接。
示例性的,在一种数据增广处理中,例如,如图2所示,对客户数据中连续变化的字段,例如交易金额,客户AUM,贷款金额,各个渠道的转入转出金额等,在预处理完毕后添加随机的高斯噪声,高斯函数可用标准正态分布函数。客户数据中非连续变化的字段,如客户等级,婚姻状况,性别等不做处理。
示例性的,在一种数据增广处理中,例如,如图3所示,对客户数据某些字段进行随机遮盖,被遮盖掉的数据统一置为0,后续依然读入被遮盖后的值。
示例性的,在一种数据增广处理中,例如,如图4所示,对客户数据某个组别的字段进行随机遮盖,被遮盖掉的组别数据统一置为0,后续依然读入被遮盖后的值。例如,某些记录随机遮盖掉全部的资产组的数据,有些记录可以随机遮盖掉信用卡组的数据。
示例性的,在一种数据增广处理中,例如,如图5所示,对同一个批次里的客户数据,字段组间的顺序进行随机打乱,对字段组内的顺序进行打乱得到新的客户数据。
示例性的,在一种数据增广处理中,例如,如图6所示,使用同一批次里的客户数据,随机选择某一组变量对数据进行随机截断后,打乱批次顺序后重新拼接得到新的客户数据。使用拼接的客户数据可以是同一个客户的数据,如同一个客户不同时间点的客户数据,或者同一个客户在其他银行的客户数据,也可以是不同客户的客户数据。
示例性的,在一种数据增广处理中,例如,如图7所示,使用同一个批次的客户数据,随机选择某组变量或全部变量,按照下面的公式将原始的客户数据和其他客户数据以一定的比例进行混合,以产生新的客户数据。
xnew=λxi=(1-λ)xj
λ~β(α,α)
其中,xi代表原始的客户数据,xj代表要混合的客户数据,λ参数控制两份数据混合的比例,λ的取值从贝塔分布中采样得到。
示例性的,在一种数据增广处理中,例如,如图8所示,使用一个神经网络,例如自编码器(AutoEncoder)、自回归模型(AutoRegressive)或者对抗生成模型GANs,将添加字段级随机掩码或字段组级随机掩码的客户数据输入到神经网络中,输出的数据作为新的客户数据使用。
示例性的,在一种数据增广处理中,将某一个客户的客户数据在时间维度上打乱,后合并成一条记录,产生新的客户数据。
示例性的,在一种数据增广处理中,将某一个客户的客户数据在时间维度上翻转,即原来排列的顺序是从远至近,改成从近至远,产生新的客户数据。
示例性的,在一种数据增广处理中,将某一个客户的客户数据插入或者替换成另外一个客户同一个时间点上的客户数据,将拼接后的数据合并成一条数据记录,产生新的客户数据。
示例性的,在一种数据增广处理中,随机抽取上述数据增广方法中的一种或者多种,将抽取的数据增广方法组成一个数据管道,依次对客户数据进行数据处理,产生新的客户数据。
在一些实施例中,仍以客户数据为银行客户数据为例,银行客户数据包括同一家银行内部某一个时间点的客户数据、同一家银行内部某一个时间段的客户时序数据、以及不同银行内部某一个时间段的客户数据,生成的对应的样本数据包括行内客户正样本数据、行内客户负样本数据、行内客户时空正样本数据、行内客户时空负样本数据、跨行客户正样本数据、以及跨行客户负样本数据等。
其中,如图9所示,对于行内客户正样本数据,将在同一家银行内部某一个时间点的客户数据定义为锚点,为了便于区分描述,称为第一锚点,第一锚点同它增广处理后的数据对(data pair)被定义为行内客户正样本数据。对于行内客户负样本数据,将在同一家银行内部某一个时间点的客户数据定义为第一锚点,第一锚点同在这家银行同一个时间点不同客户的客户数据对被定义为行内客户负样本数据。
如图10所示,对于行内客户时空正样本数据,将在同一家银行内部某一个时间段的客户数据定义为锚点(一天内或者一周内的连续变化数据),为了便于区分描述,称为第二锚点,第二锚点同它临近时空的快照数据对被定义为行内客户时空正样本数据。临近时空的的快照数据定义可以是锚点的过去快照数据,也可以是锚点的将来快照数据,时间跨度可以是周,月,季度。临近时空的时间窗口可以是动态的调整的,比如先用周,然后再月,最后季度。
对于行内客户时空负样本数据,将在同一家银行内部某一个时间段的客户数据定义为第二锚点,第二锚点同在这家银行不同客户的客户数据(相同时间点或者不相同时间点均可)对被定义为行内客户时空负样本数据。
如图11所示,对于跨行客户正样本数据,将在某一家银行内部某一个时间段的客户数据定义为锚点,为了便于区分描述,称为第三锚点,第三锚点同在另外一家或者多家银行的同一个客户的客户数据对被定义为跨行客户正样本数据。对于跨行客户负样本数据,将在某一家银行内部某一个时间段的客户数据定义为第三锚点,第三锚点同在另外一家或者其他多家银行的另外一个客户的客户数据对被定义为跨行客户负样本数据。
S103、将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型。
示例性的,通用客户数据编码模型主要采用自监督学习中对比学习(Contrastive Learning)技术来进行模型训练。例如,调用通用编码器训练器,使用对比学习训练深度神经网络,构建一个或者多个通用客户数据编码模型,使用训练完成的通用客户数据编码模型完成客户高维度数据至低维度数据的表征映射。
其中,对比学习核心就是要学习一个映射函数f,把样本x编码成其向量表示f(x),对比学习的核心就是使得函数f满足下面这个式子:
s(f(x),f(x+))>>s(f(x),f(x-))
其中,x+是和x非常类似的样本,主要通过数据增广来得到。x-就是和x不相似的样本,主要通过随机采样来构造。s(·,·)这是一个度量样本之间相似程度的score函数,一个比较典型的score函数就是向量内积。通过优化下面的损失函数,便可以达到对比学习的目的:
其中,对于一个x,有1个正例和N-1个负例,对比学习的损失函数能让 x的特征和正样本的特征更相似,同时和N-1个负例的特征保持足够的差异性。事实上,最小化这一损失函数是在间接最大化f(x)和f(x+)互信息的下界。
需要说明的是,对比学习还可以采用InsDisc、CPC、PIRL、MoCo、MixCo、Contrastive Clustering、PCL、DIM、AMDIM、SwAv、BYOL,SimSiam等技术,本实施例中在此不作具体限制。
对比学习框架一般包括数据增广,主干网络,投影头,分数函数,对比损失函数几个部件构成。对于机器视觉和NLP任务,对于主干网络一般采用卷积神经网络和RNN网络,而score函数的选择,可以选择无参的L1,L2的距离,cosine距离,向量内积,也可以使用参数化的矩阵相乘,当前普遍选择向量内积或者cosine距离来充当分数函数。投影头一般采用2至3层带非线性激活函数的全连接网络来实现,对比损失函数可以选择InfoNCE、NT-Xent、Triplet loss Binary NCE、NEG、MSE loss、Hinge loss等。
针对于样本数据的多种类型,对应的通用客户数据编码模型包括多个版本。示例性的,在一实施方式中,版本1的深度神经网络的主干网络(back bone) 是个双子网络(Siamese network),其网络结构需要完全相同,网络参数随机初始化,可以选用以下两种方案实现:
方案一:直接采用TabNet网络的Encoder部分作为主干网络
将样本数据直接输入到TabNet网络中,整个TabNet网络由多层构成,包括FC层、feature transformer层、Attentive transformer层、transform heads层等。其中,feature transformer层和Attentive transformer层是TabNet网络的核心层,FC层的输入作为主干网络的输出。
方案二:直接使用Transformer的Encoder部分作为主干网络
投影头采用两层或者三层MLP层,层与层之间通过非线性激活函数连接。整个深度神经网络通过对比损失函数进行训练,训练完成后将投影头部分移除,剩余部分的主干网络记作通用编码器1,也即训练后获得的其中一个版本的通用客户数据编码模型。
在另一实施方式中,相比于版本1的深度神经网络,版本2的深度神经网络的主干网络尾部添加了一层或者两层TabNet或者Transformer encoder层,随后再追加一层或者两层多头注意力(multi-headed attention)和前馈网络 (MLP)部件,完成对时间序列的客户数据的融合。需要说明的是,multi-headed attention和MLP为可选部件,不添加时也可直接对带有时间维度的客户数据对比训练。为了强化迁移学习(Transfer Learning)的效果,可以在主干网络各个层之间添加Adapter layer层,此部件是可选部件。
整个深度神经网络通过对比损失函数进行训练,训练完成后将投影头部分移除后记作通用编码器2,也即训练后获得的另一个版本的通用客户数据编码模型。
在另一实施方式中,相比于版本2的深度神经网络,版本3的深度神经网络在主干网络输入层添加对客户银行信息编码层,尾部再版本2的基础上再添加了一层或者两层TabNet或者Transformer Encoder层,完成对客户银行空间维度数据的融合。
整个深度神经网络通过对比损失函数进行训练,训练完成后将主干网络和multi-headed attention部件拆分出来,记作通用编码器3,也即训练后获得的另一个版本的通用客户数据编码模型。
需要说明的是,除了可以TabNet和Transformer作为主干网络也可以 WideDeep、DeepFM、CCPM、FNN、AFM、xDeepFM、AutoInt、ONN、FiBiNET 等作为主干网络。
示例性的,采用NT-Xent函数作为对比损失函数,NT-Xent函数的具体公式如下:
其中,Zi代表锚点数据的嵌入向量,Zj锚点数据的增广数据的嵌入向量, Zk为非锚点数据的嵌入向量,Zi,Zj统称为正样本数据,Zi,Zk统称为负样本数据。sim为相似函数,这里采用向量内积或者cosine函数来充当。
lcontrast=∑li,j
将全部正样本对通过NT-Xent函数进行求和后得到最后的对比损失值。
示例性的,由于部分数据增广的方法会破坏数据的局部一致性,需要使用一定的监督信号来引导模型进行训练,避免出现模型性能的下降。如果采用了以下几种数据增广方法时,损失函数中需要添加特定任务的损失函数。
对于拼接产生的客户数据,使用主干网络输出的表征向量预测客户是否是随机拼接的客户,二分类问题,使用二分类交叉熵损失函数。
对于不同客户数据的混合,使用主干网络输出的表征向量预测客户数据是否经过了随机的客户数据混合,二分类问题,使用二分类交叉熵损失函数。
对于使用其他神经网络生成的数据副本,使用主干网络输出的表征向量预测客户数据是否是通过其他神经网络伪造出来的客户数据,二分类问题,使用二分类交叉熵损失函数。
对于时序打乱的客户数据,使用主干网络输出的表征向量预测客户时序数据是否是打乱过的数据,二分类问题,使用二分类交叉熵损失函数。
对于时序拼接的客户数据,使用主干网络输出的表征向量预测客户时序数据是否经过了时序的拼接,二分类问题,使用二分类交叉熵损失函数。
对于时序翻转的客户数据,使用主干网络输出的表征向量预测客户时序数据是按照时间升序排列还是降序排列,二分类问题,使用二分类交叉熵损失函数。
如果同时使用了多个增广方法,则把对应的任务的损失函数逐一计算后进行相加,例如Ltask1代表任务1的损失值,Ltask2代表任务2的损失值等,Ltask代表全部任务的损失值。
Ltask=Ltask1+Ltask2+…+LtaskN
Loverall=Lcontrast+λLtask
将对比损失值Lcontrast和任务损失值Ltask相加得到最终通用编码器的最终损失值,其中,λ为超参数,根据实际的模型效果进行优化调整。
示例性的,也可以单独使用特定自监督任务学习对增广后的数据重构,如AutoEncoder,VAE,Bert等,判断增广后的数据是否是真实数据或增广后的数据。
S104、对所述通用客户数据编码模型进行模型后处理。
示例性的,调用通用编码器训练定期将训练的通用客户数据编码模型的快照(checkpoint文件)备份,使用部分已有的客户标签数据(客户分级,客群分类,客户对现有营销活动的响应结果等)对快照备份出来的通用客户数据编码模型进行finetune微调。最后对finetune后的通用客户数据编码模型进行蒸馏,以压缩通用客户数据编码模型的参数的大小。
S105、在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型。
示例性的,调用特定任务训练器,组合经过蒸馏后的通用客户数据编码模型和新的特定任务分类器,使用少量带标签客户数据完成如营销活动响应率、客户欺诈侦测等具体任务的数据模型自动化训练。
以某个新的上线营销活动的响应预测任务为例,收集近期该营销活动上线后近一周的客户响应数据,在蒸馏后的通用客户数据编码模型上叠加一个分类器,使用收集好的客户响应数据对通用客户数据编码模型进行训练,该训练可以系统自动完成或者通过建模工程师手工完成,训练完成获得响应预测任务对应的数据模型。
在一些实施例中,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述行内客户正样本数据以及所述行内客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务标签数据输入所述通用客户数据编码模型进行任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
示例性的,以上述通用编码器1为例,训练获得通用编码器1的流程如下:
步骤1:选择版本1的深度神经网络和其配套的数据增广方法,对比损失函数NT-Xent,样本数据为行内客户正样本数据、行内客户负样本数据。
步骤2:初始化深度神经网络的网络参数,开始1000个Epoch网络迭代性训练。Epoch的取值为经验值,与样本数据的规模,能使用的GPU的数量和模型收敛速度有关。
步骤3:通过数据预处理器从标准客户数据存储器目录中读取某个时间点的客户快照数据,进行清洗、归一化、实体嵌入和数据增广等操作,转化成深度神经网络能够使用的tensor数据,作为行内客户正样本数据、行内客户负样本数据。
步骤4:将加工好的tensor数据输入版本1的深度神经网络中,得到行内客户正样本数据和行内客户负样本数据的logit值。
步骤5:将logit值和样本标签值(正样本1,负样本0)输入到交叉熵函数(crossentropy)中计算损失值。
步骤6:计算特定任务的损失值,求和对比损失和特定任务损失值。
步骤7:反向传播损失值更新版本1的深度神经网络中的网络参数。
步骤8:重复步骤3,直到Epoch数达到1000。
步骤9:将版本1的深度神经网络中的投影头丢弃。
步骤10:添加两层分类头(MLP+非线性激活函数)。
步骤11:使用现有的客户标签数据(客户等级,客户分类等)对模型进行分类任务训练,finetune版本1的深度神经网络中的主干网络参数。
步骤12:移除分类头得到最终的通用编码器1。
步骤13(可选):对通用编码器1使用网络参数较小的版本和Noise Student 方法进行网络蒸馏(Knowledge distillation)。
步骤14(可选):得到最终压缩过后的通用编码器1。
步骤15:定期使用最新的客户数据重复步骤3至步骤11的训练过程,保证通用编码器1对新的客户数据敏感。
最后生成的通用编码器1可以完成客户单个时间点的客户数据的编码。
在一些实施例中,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述行内客户时空正样本数据以及所述行内客户时空负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户时序标签数据对所述通用客户数据编码模型进行回归任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行对应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
示例性的,以上述通用编码器2为例,训练获得通用编码器2的流程如下:
步骤1:选择版本2的深度神经网络和其配套的数据增广方法,对比损失函数NT-Xent,样本数据为行内客户时空正样本数据、行内客户时空负样本数据。
步骤2:初始化深度神经网络的网络参数,并加载选择通用编码器1参数,开始1000个Epoch网络训练。
步骤3:通过数据预处理器从标准客户数据存储器目录中读取某个时间序列的客户快照数据,进行清洗、归一化、实体嵌入和数据增广等操作,转化成深度神经网络能够使用的tensor数据,作为行内客户时空正样本数据、行内客户时空负样本数据。
步骤4:将加工好的tensor数据输入版本2的深度神经网络中,得到行内客户时空正样本数据和行内客户时空负样本数据的logit值。
步骤5:将logit值和样本标签值(正样本1,负样本0)输入到交叉熵函数(crossentropy)中计算损失值。
步骤6:计算特定任务的损失值,求和对比损失和特定任务损失值。
步骤7:反向传播损失值更新版本2深度神经网络中的网络参数。
步骤8:重复步骤3,直到Epoch数达到1000。
步骤9:将版本2的深度神经网络中的投影头丢弃。
步骤10:添加两层分类头(MLP+非线性激活函数)。
步骤11:使用现有的客户时序标签数据(客户账龄,未来收入,未来开支)对模型进行回归任务训练,finetune版本2的深度神经网络中的主干网络参数。
步骤12:移除分类头得到最终的通用编码器2。
步骤13(可选):对通用编码器2使用网络参数较小的版本进行蒸馏。
步骤14(可选):得到最终压缩过后的通用编码器2。
步骤15:定期使用最新的客户数据重复步骤3至步骤11的训练过程。
最后生成的通用编码器2可以完成客户单个时间段数据的编码。
在一些实施例中,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述跨行客户正样本数据以及所述跨行客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户空间标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行对应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
示例性的,以上述通用编码器3为例,训练获得通用编码器3的流程如下:
步骤1:选择版本3的深度神经网络和其配套的数据增广方法,对比损失函数NT-Xent,样本数据为跨行客户正样本数据、跨行客户负样本数据。
步骤2:初始化深度神经网络的网络参数,并加载选择通用编码器2参数,开始1000个Epoch网络训练。
步骤3:通过数据预处理器从标准客户数据存储器目录中读取某几家银行某个时间序列的客户快照数据,进行清洗、归一化、实体嵌入和数据增广等操作,转化成深度神经网络能够使用的tensor数据,作为跨行客户正样本数据、跨行客户负样本数据。
步骤4:将加工好的tensor数据输入版本3的深度神经网络中,得到跨行客户正样本数据和跨行客户负样本数据的logit值。
步骤5:将logit值和样本标签值(正样本1,负样本0)输入到交叉熵函数(crossentropy)中计算损失值。
步骤6:计算特定任务的损失值,求和对比损失和特定任务损失值。
步骤7:反向传播更新版本3的深度神经网络中网络参数。
步骤8:重复步骤3,直到Epoch数达到1000。
步骤9:将版本3的深度神经网络中的投影头丢弃。
步骤10:添加两层分类头(MLP+非线性激活函数)。
步骤11:使用现有的客户空间标签数据(客户开户网点,客户ATM取款地点)对模型进行分类任务训练,finetune版本3的深度神经网络中的主干网络参数。
步骤12:移除分类头得到最终的通用编码器3。
步骤13(可选):对通用编码器3使用网络参数较小的版本进行蒸馏。
步骤14(可选):得到最终压缩过后的通用编码器3。
步骤15:定期使用最新的客户数据重复步骤3至步骤11的训练过程。
最后生成的通用编码器3可以完成多家银行客户时间序列数据的编码。
示例性的,训练好特定任务对应的数据模型后,模型管理器对训练好的数据模型,其配套使用的通用编码器的版本,特定任务模型的训练集,测试集的版本,模型性能指标,模型超参数据进行集中登记管理。模型管理器对新加入的模型进行性能对比测试,达到性能发布要求的模型通过容器对象自动发布到测试环境。模型发布后生产系统性能下降明显时,模型管理器进行紧急版本的回退,使得生产系统的模型版本回复到前一个稳定版本上。
上述实施例提供的数据模型的生成方法,通过获取多种不同的客户数据,对多种客户数据进行数据处理,获得对应的多种样本数据,并将多种样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,对通用客户数据编码模型进行模型后处理,在处理后的通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入通用客户数据编码模型进行模型微调,获得相应任务的数据模型,提高了数据建模的效率并降低建模成本。
请参阅图12,图12为本申请实施例提供的一种数据模型的调用方法的流程示意图。
如图12所示,该数据模型的调用方法具体包括步骤S201至步骤S203。
S201、获取待编码客户数据。
其中,待编码客户数据可以为各家银行不同格式的银行客户数据。
S202、将所述待编码客户数据转换为统一的标准存储数据格式。
按照数据模型的生成方法实施例中的方式,对待编码客户数据进行格式转换,将待编码客户数据转换为统一的标准存储数据格式。
S203、将标准存储数据格式的所述待编码客户数据输入数据模型,输出编码后的客户表征数据。
将标准存储数据格式的待编码客户数据输入通过上述数据模型的生成方法实施例中生成的相应数据模型中,对待编码客户数据进行编码,输出编码后的客户表征数据,如二维向量数据。
示例性的,通用编码器编码结果输出完成后,银行业务人员通过客户查询器来查询行内的客户,查询可以通过通用的SQL语句,或者通过画像标签,或者通过某个、某几个客户,某个特定场景来查询,通过可视化的客群簇类来筛选最相似的客户作为候选的营销客户列表。
对于通用编码器的使用,这里以某营销理财产品营销为例作为说明。
得到的通用编码器的各个时期不同的版本定期对存量的客户数据和每日新增的客户数据进行编码,编码后客户表征数据存放在数据库中,以供后续建模使用。定期使用聚类算法如K-mean对编码后的客户表征数据进行聚类,得到每个簇类的中心(Prototype)。如用户需要对银行客户进行三维可视化展示,客户查询器读取对查询出来的客户的原始数据和表征数据,并使用高维数据可视化方法如t-SNE方法对客户数据进行三维空间的展示。编码后的客户表征数据相似性的度量采用L1,L2或者余弦距离来衡量。
具体使用通用编码器的步骤如下:
步骤1:业务人员根据需要将理财产品营销所需物料准备就绪。
步骤2:通过客户查询器,业务人员手工筛选出第一批定向营销人员列表,待营销人员筛选业务人员可以根据自己的个人经验筛选,也可以使用通用编码器的映射后的表征向量在三维空间的进行各个簇群内手工挑选最具代表性的客户,或者直接使用K-mean提供的簇类中心。业务人员需要保证挑选出来的客户有足够的代表性,并且覆盖面尽量全。
步骤3:通过线上或者线下渠道对第一批筛选出来的定向营销人员进行一天或者一周的试营销。
步骤4:自动或者手工收集试营销客户的反馈数据,如客户是否响应了营销产品。
步骤5:技术人员针对该银行该款理财产品的营销配置一专属的机器学习模型,输入的数据为客户的标准存储格式数据并拼接上通用编码器输出的客户表征数据(已提前生成好存放在数据库中)。专属的机器学习的模型可以是传统的机器学习模型(SVM,XGB等),也可以是深度神经网络,甚至直接使用编码器+二分类头来预测客户是否对该款理财产品是否响应。如果直接采用深度编码器+二分类头的方式,可以finetune通用编码器的Adapter layer和二分类头的参数部分,通用编码器其他部分的参数冻结不允许调整。
步骤6:系统自动或者人工完成该理财产品的专属模型的快速训练。由于省去了人工数据加工,清洗和特征工程的步骤,模型参数的调整也不是非常多,因此可以在非常短的时间内将专属的模型训练好。
步骤7:模型管理器定期自动对比新增的专属模型的模型表现,如果可以满足业务的要求或者比上一个版本的模型要好,则手工部署或者通过模型管理器自动部署至测试环境,测试环境测试完毕后通过docker发布到生产环境。
步骤8:使用专属模型预测下一批次的营销客户名单。
步骤9:根据试营销客户的反馈数据计算客群偏移量,调整业务人员首次筛选出来的名单。
步骤10:通过线上或者线下渠道对第二批筛选出来的定向营销人员(模型输出)进行一天或者一周的试营销。
步骤11:通过对比第二批相对于第一批提升值评估输出的专属模型的有效性,输出结果给业务人员和技术人员。
步骤12:如果模型的提升值大于0且满足业务人员的使用要求,则保留该专属模型,并用该模型完成剩余客户的预测和营销,否则丢弃模型使用新的反馈的数据进行模型迭代直至提升值等于0或者满足业务的要求。
相比于现有方案,本发明方法可以有效的整合不同银行不同系统的内外部数据,做到全行业统一客户编码,具有很高的通用性。
并且,具有非常显著的边际成本(marginal cos)优势,无需人工去构建模型特征数据,对数据预处理的要求也低。由于采用前沿的深度学习技术,模型自行学习客户的特征变量,有效降低人工构造特征的工作量。整个模型训练过程中也仅仅使用的少量的标注数据,进一步降低了的收集数据和人工标注的成本,得到的通用编码器亦可反复使用,可以非常显著的降低单个模型的开发成本。
同时,通过通用编码器编码出来的客户数据,可以有效的利用在如客群发现,客户响应预测,反欺诈等各类下游建模的任务上,兼容性强。
另外,快速训练和轻量化部署,针对下游的特定任务模型finetune,使用非常少量的标签数据可以在非常短的内完成下游任务的训练(few-shot learning),经过蒸馏的通用编码器占用的也内存小,可以快速部署上线。
由于使用了客户海量的不同时期的银行内外部数据和数据增广技术,通用编码器对各类客户不同维度、不同时空下的各类场景都会有洞察,即使在缺失部分数据的前提下依然能够有效的保障下游模型的精度和可靠性。模型不仅能够使用低阶的客户特征变量,更能够有效的捕捉如收入、消费习惯、风险偏好,理财能力,客户信用这些缓慢变化的高级特征,保证模型的建模效果,高精度,高可靠。
通用编码器具备很好的内置模型可解释性,可以进一步提升业务人员对模型的输出结果理解,具有高可解性。
并且,支持对客户数据的降维可视化,经过编码后的客户可以在二维、三维空间下进行可视化,查看客户簇类的分布。
另外,支持多条件的联合客户查询,支持在嵌入空间中的客户相似性的查询,客户画像标签,标准SQL的联合客户查询方式。
请参阅图13,图13为本申请实施例提供的一种数据模型处理装置的示意性框图。
如图13所示,该数据模型处理装置可以包括处理器、存储器和网络接口。处理器、存储器和网络接口通过系统总线连接,该系统总线比如为I2C (Inter-integratedCircuit)总线。
具体地,处理器可以是微控制单元(Micro-controller Unit,MCU)、中央处理单元(Central Processing Unit,CPU)或数字信号处理器(Digital Signal Processor,DSP)等。
具体地,存储器可以是Flash芯片、只读存储器(ROM,Read-Only Memory) 磁盘、光盘、U盘或移动硬盘等。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器用于运行存储在存储器中的计算机程序,并在执行所述计算机程序时实现如下步骤:
获取多种不同的客户数据;
对多种所述客户数据进行数据处理,获得对应的多种样本数据;
将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型;
对所述通用客户数据编码模型进行模型后处理;
在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型。
在一些实施例中,所述处理器在实现所述对多种所述客户数据进行数据处理,获得对应的多种样本数据之前,用于实现:
调用数据转换器采用对应的数据转换模板,将多种所述客户数据转换为统一的标准存储数据格式;
调用标准客户数据存储器将标准存储数据格式的多种所述客户数据按照存储策略进行集中存储;
所述对多种所述客户数据进行数据处理包括以下至少一种:数据清洗、数据预处理、数据增广。
在一些实施例中,所述数据增广包括以下至少一种:
对所述客户数据中连续变化的字段添加随机噪声;
对所述客户数据中相应字段添加字段级随机掩码;
对所述客户数据中相应组别的字段添加字段组级随机掩码;
将所述客户数据的字段组间的顺序进行随机打乱;
采用随机变量对所述客户数据进行随机截断并进行拼接;
采用随机变量将不同的所述客户数据进行混合;
将添加字段级随机掩码或字段组级随机掩码的所述客户数据输入神经网络,生成数据副本;
将同一客户的所述客户数据进行时序打乱后合并;
将同一客户的所述客户数据进行时序翻转;
将不同客户的所述客户数据进行时序拼接。
在一些实施例中,所述客户数据为银行客户数据,多种所述样本数据包括行内客户正样本数据、行内客户负样本数据、行内客户时空正样本数据、行内客户时空负样本数据、跨行客户正样本数据、以及跨行客户负样本数据,所述客户响应数据包括客户标签数据、客户时序标签数据、以及客户空间标签数据。
在一些实施例中,所述行内客户正样本数据是第一锚点与所述第一锚点增广处理后的数据对,其中,所述第一锚点为同一家银行内部同一个时间点的客户数据;
所述行内客户负样本数据是所述第一锚点与同一家银行内部同一个时间点不同客户的客户数据对;
所述行内客户时空正样本数据是第二锚点与所述第二锚点临近时空的快照数据对,其中,所述第二锚点为同一家银行内部某一个时间段的客户数据;
所述行内客户时空负样本数据是所述第二锚点与同一家银行不同客户的客户数据对;
所述跨行客户正样本数据是第三锚点与其他银行内部的同一个客户的客户数据对,其中,所述第三锚点为同一家银行内部某一个时间段的客户数据;
所述跨行客户负样本数据是所述第三锚点与其他银行内部的不同客户的客户数据对。
在一些实施例中,所述处理器在实现所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型时,用于实现:
初始化所述深度神经网络的网络参数;
将所述行内客户正样本数据以及所述行内客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述处理器在实现所述对所述通用客户数据编码模型进行模型后处理时,用于实现:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述处理器在实现所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型时,用于实现;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行相应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
在一些实施例中,所述处理器在实现所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型时,用于实现:
初始化所述深度神经网络的网络参数;
将所述行内客户时空正样本数据以及所述行内客户时空负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述处理器在实现所述对所述通用客户数据编码模型进行模型后处理时,用于实现:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户时序标签数据对所述通用客户数据编码模型进行回归任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述处理器在实现所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型时,用于实现;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行相应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
在一些实施例中,所述处理器在实现所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型时,用于实现:
初始化所述深度神经网络的网络参数;
将所述跨行客户正样本数据以及所述跨行客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述处理器在实现所述对所述通用客户数据编码模型进行模型后处理时,用于实现:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户空间标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述处理器在实现所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型时,用于实现;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行相应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
在一些实施例中,所述处理器在执行所述计算机程序时,还实现:
获取待编码客户数据;
将所述待编码客户数据转换为统一的标准存储数据格式;
将标准存储数据格式的所述待编码客户数据输入数据模型,输出编码后的客户表征数据。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的计算机设备的具体工作过程,可以参考前述数据模型的生成方法实施例中的对应过程,在此不再赘述。
本申请实施例中还提供一种计算机设备,该计算机设备可以为服务器。该计算机设备包括数据模型处理装置,该数据模型处理装置可以为上述实施例中的数据模型处理装置。计算机设备可以实现本申请实施例所提供的任一种数据模型的生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现上述实施例提供的数据模型的生成方法的步骤。例如,该计算机程序被处理器加载,可以执行如下步骤:
获取多种不同的客户数据;
对多种所述客户数据进行数据处理,获得对应的多种样本数据;
将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型;
对所述通用客户数据编码模型进行模型后处理;
在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,计算机可读存储介质可以是前述实施例的计算机设备的内部存储单元,例如计算机设备的硬盘或内存。计算机可读存储介质也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种数据模型的生成方法,因此,可以实现本申请实施例所提供的任一种数据模型的生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅是本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种数据模型的生成方法,其特征在于,包括:
获取多种不同的客户数据;
对多种所述客户数据进行数据处理,获得对应的多种样本数据;多种所述样本数据包括行内客户正样本数据、行内客户负样本数据、行内客户时空正样本数据、行内客户时空负样本数据、跨行客户正样本数据、以及跨行客户负样本数据;其中,所述行内客户正样本数据为第一锚点与所述第一锚点增广处理后的数据对,所述第一锚点为同一家银行内部某一个时间点的客户数据,所述行内客户负样本数据为所述第一锚点与同一家银行同一个时间点不同客户的客户数据对;所述行内客户时空正样本数据为第二锚点与所述第二锚点临近时空的快照数据对,所述第二锚点为同一家银行内部某一个时间段的客户数据,所述行内客户时空负样本数据为所述第二锚点与同一家银行不同客户的客户数据对;所述跨行客户正样本数据为第三锚点与不同银行的同一个客户的客户数据对,所述第三锚点为某一家银行内部某一个时间段的客户数据,所述跨行客户负样本数据为所述第三锚点与不同银行的不同客户的客户数据对;
将多种所述样本数据输入深度神经网络进行训练,获得包含投影头的通用客户数据编码模型;其中,所述通用客户数据编码模型包括多个版本;
对所述通用客户数据编码模型进行模型后处理,包括finetune微调、蒸馏处理;
在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型;
所述对多种所述客户数据进行数据处理包括数据增广;所述数据增广包括以下至少一种:
对所述客户数据中相应组别的字段添加字段组级随机掩码;
将所述客户数据的字段组间的顺序进行随机打乱;
采用随机变量对所述客户数据进行随机截断并进行拼接;
采用随机变量将不同的所述客户数据进行混合;
将添加字段级随机掩码或字段组级随机掩码的所述客户数据输入神经网络,生成数据副本;
将同一客户的所述客户数据进行时序打乱后合并;
将同一客户的所述客户数据进行时序翻转;
将不同客户的所述客户数据进行时序拼接。
2.根据权利要求1所述的方法,其特征在于,所述对多种所述客户数据进行数据处理,获得对应的多种样本数据之前,包括:
调用数据转换器采用对应的数据转换模板,将多种所述客户数据转换为统一的标准存储数据格式;
调用标准客户数据存储器将标准存储数据格式的多种所述客户数据按照存储策略进行集中存储。
3.根据权利要求1至2任一项所述的方法,其特征在于,所述客户响应数据包括客户标签数据、客户时序标签数据、以及客户空间标签数据。
4.根据权利要求3所述的方法,其特征在于,所述行内客户正样本数据是第一锚点与所述第一锚点增广处理后的数据对,其中,所述第一锚点为同一家银行内部某一个时间点的客户数据;
所述行内客户负样本数据是所述第一锚点与同一家银行内部同一个时间点不同客户的客户数据对;
所述行内客户时空正样本数据是第二锚点与所述第二锚点临近时空的快照数据对,其中,所述第二锚点为同一家银行内部某一个时间段的客户数据;
所述行内客户时空负样本数据是所述第二锚点与同一家银行不同客户的客户数据对;
所述跨行客户正样本数据是第三锚点与其他银行内部的同一个客户的客户数据对,其中,所述第三锚点为同一家银行内部某一个时间段的客户数据;
所述跨行客户负样本数据是所述第三锚点与其他银行内部的不同客户的客户数据对。
5.根据权利要求3所述的方法,其特征在于,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述行内客户正样本数据以及所述行内客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户标签数据输入所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
6.根据权利要求3所述的方法,其特征在于,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述行内客户时空正样本数据以及所述行内客户时空负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户时序标签数据对所述通用客户数据编码模型进行回归任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行对应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
7.根据权利要求3所述的方法,其特征在于,所述将多种所述样本数据输入深度神经网络进行训练,获得通用客户数据编码模型,包括:
初始化所述深度神经网络的网络参数;
将所述跨行客户正样本数据以及所述跨行客户负样本数据输入所述深度神经网络进行训练,获得所述通用客户数据编码模型;
所述对所述通用客户数据编码模型进行模型后处理,包括:
将所述通用客户数据编码模型中的投影头丢弃;
采用客户空间标签数据对所述通用客户数据编码模型进行分类任务训练,对所述通用客户数据编码模型进行finetune;
对finetune后的所述通用客户数据编码模型进行蒸馏;
所述在处理后的所述通用客户数据编码模型上增加分类器,并将相应任务的客户响应数据输入所述通用客户数据编码模型进行模型微调,获得所述相应任务的数据模型,包括;
在蒸馏后的所述通用客户数据编码模型上添加两层分类头;
将所述客户相应任务数据输入所述通用客户数据编码模型进行对应任务训练,对所述通用客户数据编码模型进行微调,获得所述相应任务的数据模型。
8.一种数据模型的调用方法,其特征在于,所述数据模型为根据如权利要求1至7中任一项所述的数据模型的生成方法生成,所述数据模型的调用方法包括:
获取待编码客户数据;
将所述待编码客户数据转换为统一的标准存储数据格式;
将标准存储数据格式的所述待编码客户数据输入数据模型,输出编码后的客户表征数据。
9.一种数据模型处理装置,其特征在于,所述数据模型处理装置包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至7中任一项所述的数据模型的生成方法,或实现如权利要求8所述的数据模型的调用方法。
10.一种计算机设备,其特征在于,所述计算机设备包括如权利要求9所述的数据模型处理装置。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如权利要求1至7中任一项所述的数据模型的生成方法,或实现如权利要求8所述的数据模型的调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110009963.8A CN112800053B (zh) | 2021-01-05 | 2021-01-05 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110009963.8A CN112800053B (zh) | 2021-01-05 | 2021-01-05 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112800053A CN112800053A (zh) | 2021-05-14 |
CN112800053B true CN112800053B (zh) | 2021-12-24 |
Family
ID=75808386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110009963.8A Active CN112800053B (zh) | 2021-01-05 | 2021-01-05 | 数据模型的生成方法、调用方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112800053B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113723607A (zh) * | 2021-06-02 | 2021-11-30 | 京东城市(北京)数字科技有限公司 | 时空数据处理模型的训练方法、装置、设备及存储介质 |
CN113641337A (zh) * | 2021-07-13 | 2021-11-12 | 广州三七互娱科技有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN113516255A (zh) * | 2021-07-28 | 2021-10-19 | 深圳前海微众银行股份有限公司 | 联邦学习建模优化方法、设备、可读存储介质及程序产品 |
CN113672807B (zh) * | 2021-08-05 | 2024-03-05 | 杭州网易云音乐科技有限公司 | 推荐方法、装置、介质、装置和计算设备 |
CN113947196A (zh) * | 2021-10-25 | 2022-01-18 | 中兴通讯股份有限公司 | 网络模型训练方法、装置和计算机可读存储介质 |
CN114332637B (zh) * | 2022-03-17 | 2022-08-30 | 北京航空航天大学杭州创新研究院 | 遥感影像水体提取方法、遥感影像水体提取的交互方法 |
CN117076090B (zh) * | 2023-10-10 | 2024-03-19 | 腾讯科技(深圳)有限公司 | 任务模型的构建方法、装置、设备及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9275347B1 (en) * | 2015-10-09 | 2016-03-01 | AlpacaDB, Inc. | Online content classifier which updates a classification score based on a count of labeled data classified by machine deep learning |
CN110135566A (zh) * | 2019-05-21 | 2019-08-16 | 四川长虹电器股份有限公司 | 基于lstm二分类神经网络模型的注册用户名检测方法 |
CN111160484A (zh) * | 2019-12-31 | 2020-05-15 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机可读存储介质及电子设备 |
CN111984842A (zh) * | 2020-08-18 | 2020-11-24 | 中国银行股份有限公司 | 银行客户数据处理方法及装置 |
-
2021
- 2021-01-05 CN CN202110009963.8A patent/CN112800053B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9275347B1 (en) * | 2015-10-09 | 2016-03-01 | AlpacaDB, Inc. | Online content classifier which updates a classification score based on a count of labeled data classified by machine deep learning |
CN110135566A (zh) * | 2019-05-21 | 2019-08-16 | 四川长虹电器股份有限公司 | 基于lstm二分类神经网络模型的注册用户名检测方法 |
CN111160484A (zh) * | 2019-12-31 | 2020-05-15 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机可读存储介质及电子设备 |
CN111984842A (zh) * | 2020-08-18 | 2020-11-24 | 中国银行股份有限公司 | 银行客户数据处理方法及装置 |
Non-Patent Citations (2)
Title |
---|
"Deep Learning(深度学习)学习笔记整理系列之(三)、Deep Learning(深度学习)学习笔记整理系列之(四)";zouxy09;《URL: https://blog.csdn.net/zouxy09/article/details/8775518或 https://blog.csdn.net/zouxy09/article/details/8775524》;20130409;第1-12页 * |
"自然语言处理中数据增强(Data Augmentation)技术最全盘点";lqfarmer;《URL: https://blog.csdn.net/lqfarmer/article/details/107006551》;20200628;第1-13页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112800053A (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112800053B (zh) | 数据模型的生成方法、调用方法、装置、设备及存储介质 | |
Yoon et al. | Semi-supervised learning with deep generative models for asset failure prediction | |
Wang et al. | Large-scale ensemble model for customer churn prediction in search ads | |
CN112819604A (zh) | 基于融合神经网络特征挖掘的个人信用评估方法与系统 | |
CN110852881B (zh) | 风险账户识别方法、装置、电子设备及介质 | |
US11816687B2 (en) | Personalized approach to modeling users of a system and/or service | |
KR20200039852A (ko) | 기업 경영 현황 분석 예측 모델링을 위한 기계학습 알고리즘 제공 방법 | |
CN110147389A (zh) | 帐号处理方法和装置、存储介质及电子装置 | |
Daiya et al. | Stock movement prediction that integrates heterogeneous data sources using dilated causal convolution networks with attention | |
Ren et al. | Tracking and forecasting dynamics in crowdfunding: A basis-synthesis approach | |
Georgopoulos et al. | Multilinear latent conditioning for generating unseen attribute combinations | |
CN113032440A (zh) | 训练风险模型的数据处理方法和装置 | |
Ibrahim et al. | Knowledge graph guided simultaneous forecasting and network learning for multivariate financial time series | |
CN113362852A (zh) | 一种用户属性识别方法和装置 | |
CN116523301A (zh) | 基于电商大数据进行风险评级预测的系统 | |
Wu et al. | Customer churn prediction for commercial banks using customer-value-weighted machine learning models | |
US20220269936A1 (en) | Knowledge graphs in machine learning decision optimization | |
Sharma et al. | Deep learning in big data and data mining | |
Mahalle et al. | Data Acquisition and Preparation | |
CN113112299A (zh) | 一种贵金属价格趋势预测方法及装置 | |
Uddin et al. | Machine Learning for Earnings Prediction: A Nonlinear Tensor Approach for Data Integration and Completion | |
Gong et al. | Learning to profile: User meta-profile network for few-shot learning | |
CN111667307A (zh) | 一种理财产品销量的预测方法及装置 | |
Nikitenko et al. | Customer behaviour forecast using deep learning networks | |
Pattanayak et al. | Interpretable Deep Image Classification using Rationally Inattentive Utility Maximization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |