CN110751261A - 神经网络模型的训练方法和系统以及预测方法和系统 - Google Patents

神经网络模型的训练方法和系统以及预测方法和系统 Download PDF

Info

Publication number
CN110751261A
CN110751261A CN201910618144.6A CN201910618144A CN110751261A CN 110751261 A CN110751261 A CN 110751261A CN 201910618144 A CN201910618144 A CN 201910618144A CN 110751261 A CN110751261 A CN 110751261A
Authority
CN
China
Prior art keywords
neural network
training
model
network model
layer
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.)
Granted
Application number
CN201910618144.6A
Other languages
English (en)
Other versions
CN110751261B (zh
Inventor
罗远飞
涂威威
曹睿
陈雨强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
4Paradigm Beijing Technology Co Ltd
Original Assignee
4Paradigm Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 4Paradigm Beijing Technology Co Ltd filed Critical 4Paradigm Beijing Technology Co Ltd
Priority to PCT/CN2019/096971 priority Critical patent/WO2020020088A1/zh
Priority to US17/262,974 priority patent/US20210264272A1/en
Publication of CN110751261A publication Critical patent/CN110751261A/zh
Application granted granted Critical
Publication of CN110751261B publication Critical patent/CN110751261B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

提供了一种包括三层级模型的神经网络模型的训练方法和系统以及预测方法和系统。所述训练方法包括:获取训练数据记录;基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;利用训练样本的集合来训练神经网络模型,其中,在训练神经网络模型的过程中,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,通过神经网络模型的第三层级模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于预测结果与标记之间的差异来调整所述神经网络模型。

Description

神经网络模型的训练方法和系统以及预测方法和系统
技术领域
本申请要求申请号为201810813359.9,申请日为2018年07月23日,名称为“神经网络模型的训练方法和系统以及预测方法和系统”的中国专利申请的优先权。本申请涉及深度学习,更具体地讲,涉及一种包括三层网络模型的神经网络模型的训练方法和训练系统以及预测方法和预测系统。
背景技术
随着海量数据的出现,人工智能技术迅速发展。机器学习(包括深度学习)等是人工智能发展到一定阶段的必然产物,其致力于通过计算的手段,从大量数据中挖掘有价值的潜在信息。
例如,在深度学习领域所常使用的神经网络模型中,通常是通过将训练数据记录提供给神经网络模型来训练该神经网络模型以确定该神经网络模型的理想参数,而训练好的神经网络模型可被应用于在面对新的预测数据记录时提供相应的预测结果。
目前,深度学习已经在很多领域取得了突破性进展,如计算机视觉,语音识别等。然而,如何将深度学习应用于工业界常见的大规模离散特征数据上,仍有待探索。工业界和学术界提出了十余个基于深度神经网络(Deep Neural Network,DNN)的模型,如Google的Wide&Deep、Microsoft的Deep Crossing、阿里巴巴的DIN等,相对于传统的深度学习算法,取得了不错的效果。但上述算法对应的模型结构均依赖自身业务和数据类型,通用性不够。
发明内容
根据本申请示例性实施例,提供了一种包括三层级模型的神经网络模型的训练方法,所述方法包括:获取训练数据记录;基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及利用训练样本的集合来训练神经网络模型,其中,在训练神经网络模型的过程中,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型。
可选地,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示的步骤可包括:将训练样本的特征之中的离散特征以及经过离散化处理的连续特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应特征的特征信息表示;或者将训练样本的特征之中的离散特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应离散特征的特征信息表示,并且将训练样本的特征之中的连续特征直接经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应连续特征的特征信息表示。.
可选地,所述方法还可包括:在将训练样本的特征分别经过对应的嵌入层之前,分别确定各个嵌入层的维度。
可选地,分别确定各个嵌入层的维度的步骤可包括:至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度。
可选地,至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度的步骤可包括:基于输入各个嵌入层的特征的特征值的数量来分别确定各个嵌入层的维度。
可选地,至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度的步骤可包括:基于输入各个嵌入层的特征的信息熵来分别确定各个嵌入层的维度。
可选地,基于输入各个嵌入层的特征的信息熵来分别确定各个嵌入层的维度的步骤可包括:基于输入各个嵌入层的特征的信息熵的大小来成比例地确定各个嵌入层的维度。
可选地,基于输入各个嵌入层的特征的信息熵来分别确定各个嵌入层的维度的步骤可包括:设置最大维度和最小维度;将信息熵最低的第一预定数量个特征所对应的嵌入层确定为分配所述最小维度,并将信息熵最高的第二预定数量个特征所对应的嵌入层确定为分配所述最大维度;对于除了第一预定数量个特征和第二预定数量个特征之外的其余特征,在所述最小维度与所述最大维度之间,按照所述其余特征的信息熵的大小来成比例地确定与所述其余特征分别对应的嵌入层的维度,其中,通过枚举第一预定数量和第二预定数量来确定关于第一预定数量和第二预定数量的最优解。
可选地,所述最优解可对应于使得被分配给各个嵌入层的维度的方差值最小或最大。
可选地,所述最大维度或所述最小维度可基于运算资源、训练数据记录的数据量、以及所述神经网络模型的应用场景中的至少一个来确定。
可选地,分别确定各个嵌入层的维度的步骤可包括:基于维度学习模型来学习出各个嵌入层的维度,其中,所述维度学习模型可被设计为通过各个嵌入层的候选维度以及与所述候选维度对应的神经网络模型的模型效果来迭代学习出各个嵌入层的最佳维度,并将学习出的各个嵌入层的最佳维度确定为各个嵌入层的维度。
可选地,所述维度学习模型可基于强化学习或贝叶斯优化。
可选地,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示的步骤还可包括:将嵌入层输出的特征嵌入向量分别与对应的底层神经网络模型的输出进行函数运算,并将函数运算结果作为该对应的底层神经网络模型所学习的特征信息表示。
可选地,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示的步骤还可包括:将训练样本的特征之中的连续特征与对应的底层神经网络结构的输出进行函数运算,并将函数运算结果作为该对应的底层神经网络模型输出的特征信息表示。
可选地,所述函数运算可以为按位相加或按位相乘运算。
可选地,将嵌入层输出的特征嵌入向量分别与对应的底层神经网络模型的输出进行函数运算的步骤可包括:将嵌入层输出的特征嵌入向量与对应的底层神经网络模型的输出进行维度统一,并对维度统一后的特征嵌入向量与对应的底层神经网络结构的输出进行函数运算。
可选地,所述维度统一的步骤可包括:对嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出中的至少一个进行占位填充,使得嵌入层输出的特征嵌入向量和对应的底层神经网络结构的输出维度相同。
可选地,所述维度统一的步骤可包括:将嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出中的至少一个与变换矩阵相乘,使得嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出维度相同。
可选地,所述变换矩阵可以是在利用训练样本的集合来训练所述神经网络模型的过程中被学习出的。
可选地,在所述函数运算中所使用的函数的参数可以是在利用训练样本的集合来训练所述神经网络模型的过程中被学习出的。
可选地,所述对应输入项还可包括:嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征。
可选地,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示的步骤可包括:针对每个中间模型,通过对其所对应的输入项之中的至少一个进行转换、拼接和/或运算而得到所述每个中间模型的至少一部分输入。
可选地,所述运算可包括对每个中间模型所对应的原始或经过转换的至少一个输入项进行求和运算、均值运算、最大池化运算和/或基于注意力机制的加权运算。
可选地,基于注意力机制的加权运算可经由专门的注意力机制网络来执行。
可选地,基于注意力机制的加权运算可包括:经由所述专门的注意力机制网络来学习出针对原始或经过转换的至少一个输入项的一套或多套权重,并基于所述一套或多套权重来分别对原始或经过转换的至少一个输入项进行加权。
可选地,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示的步骤还可包括:根据特征的特性、特征的组合性和/或各种类型的模型的学习能力特性来确定中间模型的类型及其对应的至少一个输入项。
可选地,所述中间模型可包括以下项之一:全输入的神经网络模型,其输入为全部输入项的拼接结果;组合特征神经网络模型,其输入为全部输入项之中与能够进行组合的特征对应的输入项的拼接结果;以及基于因子分解机的模型,其输入为全部输入项之中的任意两个输入项按位相乘之后,将相乘结果进行按位相加后得到的运算结果。
可选地,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示来学习出预测结果的步骤可包括:通过顶层神经网络模型来基于第二层级模型输出的至少一个交互表示、第一层级模型输出的至少一个特征信息表示、嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征来学习出预测结果。
可选地,通过顶层神经网络模型来基于第二层级模型输出的至少一个交互表示、第一层级模型输出的至少一个特征信息表示、嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征来学习出预测结果的步骤还可包括:通过对第二层级模型输出的至少一个交互表示、第一层级模型输出的至少一个特征信息表示、嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征进行拼接和/或运算而得到所述顶层神经网络模型的至少一部分输入输入。
可选地,至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型的步骤可包括:针对所述包括三层级模型的神经网络模型之中的主体神经网络结构之中的至少一部分层,分别获得与其中每层的输出对应的层预测结果;基于由所述包括三层级模型的神经网络模型的输出层所输出的预测结果与所述标记之间的差异以及每个层预测结果与所述标记之间的层预测差异来构建模型损失函数;以及根据所述模型损失函数来调整所述包括三层级模型的神经网络模型。
可选地,分别获得与其中每层的输出对应的层预测结果的步骤可包括:分别将所述每层的输出经过至少一次转换,以获得与所述每层对应的层预测结果。
可选地,可通过分别将所述每层的层权重矩阵与所述每层的输出相乘并与相应的层偏置项相加来执行一次转换。
可选地,层权重矩阵可以是在训练神经网络模型的过程中被学习出的。
可选地,基于由所述包括三层级模型的神经网络模型的输出层所输出的预测结果与所述标记之间的差异以及每个层预测结果与所述标记之间的层预测差异来构建模型损失函数的步骤可包括:基于由所述包括三层级模型的神经网络模型的输出层所输出的预测结果与所述标记之间的差异来构建输出层损失函数,分别基于每个层预测结果与所述标记之间的层预测差异来构建所述每层的层损失函数,通过对输出层损失函数和各个层损失函数进行加权求和来构建所述模型损失函数。
可选地,在训练神经网络模型的过程中,针对不同批次的训练样本,各个层损失函数的函数类型可被动态设置,并且/或者,针对不同批次的训练样本,主体神经网络结构之中的所述至少一部分层可被动态设置。
可选地,所述主体神经网络结构可包括除了所述包括三层级模型的神经网络模型的输出层之外的全部层,或者,所述主体神经网络结构可包括除了所述包括三层级模型的神经网络模型的输出层之外起主要预测作用的各个层。
可选地,所述包括三层级模型的神经网络模型用于预测图像类别、文本类别、语音情感、欺诈交易或广告点击率。
可选地,所述包括三层级模型的神经网络模型用于如下场景中的任一场景:
图像处理场景;
语音识别场景;
自然语言处理场景;
自动控制场景;
智能问答场景;
业务决策场景;
推荐业务场景;
搜索场景;
异常行为检测场景。
可选地,
所述图像处理场景包括:光学字符识别OCR、人脸识别、物体识别和图片分类;
所述语音识别场景包括:可通过语音进行人机交互的产品;
所述自然语音处理场景包括:审查文本、垃圾内容识别和文本分类;
所述自动控制场景包括:矿井组调节操作预测、风力发电机组调节操作预测和空调系统调节操作预测;
所述智能问答场景包括:聊天机器人和智能客服;
所述业务决策场景包括:金融科技领域、医疗领域和市政领域的场景,其中,金融科技领域包括:营销与获客、反欺诈、反洗钱、承保和信用评分,医疗领域包括:疾病筛查和预防、个性化健康管理和辅助诊断,市政领域包括:社会治理与监管执法、资源环境和设施管理、产业发展和经济分析、公众服务和民生保障和智慧城市;
所述推荐业务场景包括:新闻、广告、音乐、咨询、视频和金融产品的推荐;
所述搜索场景,包括:网页搜索、图像搜索、文本搜索、视频搜索;
所述异常行为检测场景,包括:国家电网客户用电异常行为检测、网络恶意流量检测和操作日志中的异常行为检测。
根据本申请另一示例性实施例,提供了一种包括三层级模型的神经网络模型的训练系统,所述系统包括:数据获取装置,用于获取训练数据记录;样本生成装置,用于基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及训练装置,用于利用训练样本的集合来训练神经网络模型,其中,在训练神经网络模型的过程中,训练装置通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个。
可选地,训练装置通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示的操作可包括:将训练样本的特征之中的离散特征以及经过离散化处理的连续特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应特征的特征信息表示;或者将训练样本的特征之中的离散特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应离散特征的特征信息表示,并且将训练样本的特征之中的连续特征直接经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应连续特征的特征信息表示。
可选地,在将训练样本的特征分别经过对应的嵌入层之前,训练装置还可分别确定各个嵌入层的维度。
可选地,训练装置可至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度。
可选地,训练装置可基于输入各个嵌入层的特征的特征值的数量来分别确定各个嵌入层的维度。
可选地,训练装置可基于输入各个嵌入层的特征的信息熵来分别确定各个嵌入层的维度。
可选地,训练装置可基于输入各个嵌入层的特征的信息熵的大小来成比例地确定各个嵌入层的维度。
可选地,训练装置可通过以下操作来确定各个嵌入层的维度:设置最大维度和最小维度;将信息熵最低的第一预定数量个特征所对应的嵌入层确定为分配所述最小维度,并将信息熵最高的第二预定数量个特征所对应的嵌入层确定为分配所述最大维度;对于除了第一预定数量个特征和第二预定数量个特征之外的其余特征,在所述最小维度与所述最大维度之间,按照所述其余特征的信息熵的大小来成比例地确定与所述其余特征分别对应的嵌入层的维度,其中,通过枚举第一预定数量和第二预定数量来确定关于第一预定数量和第二预定数量的最优解。
可选地,所述最优解可对应于使得被分配给各个嵌入层的维度的方差值最小或最大。
可选地,所述最大维度或所述最小维度可基于运算资源、训练数据记录的数据量、以及所述神经网络模型的应用场景中的至少一个来确定。
可选地,训练装置可基于维度学习模型来学习出各个嵌入层的维度,其中,所述维度学习模型可被设计为通过各个嵌入层的候选维度以及与所述候选维度对应的神经网络模型的模型效果来迭代学习出各个嵌入层的最佳维度,并将学习出的各个嵌入层的最佳维度确定为各个嵌入层的维度。
可选地,所述维度学习模型可基于强化学习或贝叶斯优化。
可选地,训练装置还可将嵌入层输出的特征嵌入向量分别与对应的底层神经网络模型的输出进行函数运算,并将函数运算结果作为该对应的底层神经网络模型所学习的特征信息表示。
可选地,训练装置还可将训练样本的特征之中的连续特征与对应的底层神经网络结构的输出进行函数运算,并将函数运算结果作为该对应的底层神经网络模型输出的特征信息表示。
可选地,所述函数运算可以为按位相加或按位相乘运算。
可选地,训练装置将嵌入层输出的特征嵌入向量分别与对应的底层神经网络模型的输出进行函数运算的操作可包括:将嵌入层输出的特征嵌入向量与对应的底层神经网络模型的输出进行维度统一,并对维度统一后的特征嵌入向量与对应的底层神经网络结构的输出进行函数运算。
可选地,训练装置可通过以下操作进行所述维度统一:对嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出中的至少一个进行占位填充,使得嵌入层输出的特征嵌入向量和对应的底层神经网络结构的输出维度相同。
可选地,训练装置可通过以下操作进行所述维度统一:将嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出中的至少一个与变换矩阵相乘,使得嵌入层输出的特征嵌入向量和对应的底层神经网络模型的输出维度相同。
可选地,所述变换矩阵可以是在利用训练样本的集合来训练所述神经网络模型的过程中被学习出的。
可选地,在所述函数运算中所使用的函数的参数可以是在利用训练样本的集合来训练所述神经网络模型的过程中被学习出的。
可选地,所述对应输入项还可包括:嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征。
可选地,训练装置还可针对每个中间模型,通过对其所对应的输入项之中的至少一个进行转换、拼接和/或运算而得到所述每个中间模型的至少一部分输入。
可选地,所述运算可包括对每个中间模型所对应的原始或经过转换的至少一个输入项进行求和运算、均值运算、最大池化运算和/或基于注意力机制的加权运算。
可选地,基于注意力机制的加权运算可经由专门的注意力机制网络来执行。
可选地,基于注意力机制的加权运算可包括:经由所述专门的注意力机制网络来学习出针对原始或经过转换的至少一个输入项的一套或多套权重,并基于所述一套或多套权重来分别对原始或经过转换的至少一个输入项进行加权。
可选地,训练装置还可根据特征的特性、特征的组合性和/或各种类型的模型的学习能力特性来确定中间模型的类型及其对应的至少一个输入项。
可选地,所述中间模型可包括以下项之一:全输入的神经网络模型,其输入为全部输入项的拼接结果;组合特征神经网络模型,其输入为全部输入项之中与能够进行组合的特征对应的输入项的拼接结果;以及基于因子分解机的模型,其输入为全部输入项之中的任意两个输入项按位相乘之后,将相乘结果进行按位相加后得到的运算结果。
可选地,训练装置通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示来学习出预测结果的操作可包括:通过顶层神经网络模型来基于第二层级模型输出的至少一个交互表示、第一层级模型输出的至少一个特征信息表示、嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征来学习出预测结果。
可选地,训练装置还可通过对第二层级模型输出的至少一个交互表示、第一层级模型输出的至少一个特征信息表示、嵌入层输出的至少一个特征嵌入向量、至少一个原始的离散特征、和/或至少一个原始的连续特征进行拼接和/或运算而得到所述顶层神经网络模型的至少一部分输入。
可选地,训练装置可通过以下操作来调整所述包括三层级模型的神经网络模型:针对所述包括三层级模型的神经网络模型之中的主体神经网络结构之中的至少一部分层,分别获得与其中每层的输出对应的层预测结果;基于由所述包括三层级模型的神经网络模型的输出层所输出的预测结果与所述标记之间的差异以及每个层预测结果与所述标记之间的层预测差异来构建模型损失函数;以及根据所述模型损失函数来调整所述包括三层级模型的神经网络模型。
可选地,训练装置分别获得与其中每层的输出对应的层预测结果的操作可包括:分别将所述每层的输出经过至少一次转换,以获得与所述每层对应的层预测结果。
可选地,训练装置可通过分别将所述每层的层权重矩阵与所述每层的输出相乘并与相应的层偏置项相加来执行一次转换。
可选地,层权重矩阵可以是在训练神经网络模型的过程中被学习出的。
可选地,训练装置可通过以下操作来构建模型损失函数:基于由所述包括三层级模型的神经网络模型的输出层所输出的预测结果与所述标记之间的差异来构建输出层损失函数,分别基于每个层预测结果与所述标记之间的层预测差异来构建所述每层的层损失函数,通过对输出层损失函数和各个层损失函数进行加权求和来构建所述模型损失函数。
可选地,在训练神经网络模型的过程中,针对不同批次的训练样本,各个层损失函数的函数类型可被动态设置,并且/或者,针对不同批次的训练样本,主体神经网络结构之中的所述至少一部分层可被动态设置。
可选地,所述主体神经网络结构可包括除了所述包括三层级模型的神经网络模型的输出层之外的全部层,或者,所述主体神经网络结构可包括除了所述包括三层级模型的神经网络模型的输出层之外起主要预测作用的各个层。
可选地,所述包括三层级模型的神经网络模型用于预测图像类别、文本类别、语音情感、欺诈交易或广告点击率。
可选地,所述包括三层级模型的神经网络模型用于如下场景中的任一场景:
图像处理场景;
语音识别场景;
自然语言处理场景;
自动控制场景;
智能问答场景;
业务决策场景;
推荐业务场景;
搜索场景;
异常行为检测场景。
可选地,
所述图像处理场景包括:光学字符识别OCR、人脸识别、物体识别和图片分类;
所述语音识别场景包括:可通过语音进行人机交互的产品;
所述自然语音处理场景包括:审查文本、垃圾内容识别和文本分类;
所述自动控制场景包括:矿井组调节操作预测、风力发电机组调节操作预测和空调系统调节操作预测;
所述智能问答场景包括:聊天机器人和智能客服;
所述业务决策场景包括:金融科技领域、医疗领域和市政领域的场景,其中,金融科技领域包括:营销与获客、反欺诈、反洗钱、承保和信用评分,医疗领域包括:疾病筛查和预防、个性化健康管理和辅助诊断,市政领域包括:社会治理与监管执法、资源环境和设施管理、产业发展和经济分析、公众服务和民生保障和智慧城市;
所述推荐业务场景包括:新闻、广告、音乐、咨询、视频和金融产品的推荐;
所述搜索场景,包括:网页搜索、图像搜索、文本搜索、视频搜索;
所述异常行为检测场景,包括:国家电网客户用电异常行为检测、网络恶意流量检测和操作日志中的异常行为检测。
根据本申请另一示例性实施例,提供了一种计算机可读介质,其中,在所述计算机可读介质上记录有用于由一个或多个计算装置执行前述包括三层级模型的神经网络模型的训练方法的计算机程序。
根据本申请另一示例性实施例,提供了一种包括一个或多个计算装置和一个或多个存储装置的系统,其中,所述一个或多个存储装置上记录有指令,所述指令在被所述一个或多个计算装置执行时使得所述一个或多个计算装置实现前述包括三层级模型的神经网络模型的训练方法。
根据本申请另一示例性实施例,提供了一种利用神经网络模型执行预测的方法,所述方法包括:获取预测数据记录;基于预测数据记录的属性信息来生成预测样本的特征;以及利用前述包括三层级模型的神经网络模型的训练方法所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
根据本申请另一示例性实施例,提供了一种利用神经网络模型执行预测的预测系统,所述预测系统包括:数据获取装置,获取预测数据记录;样本生成装置,基于预测数据记录的属性信息来生成预测样本的特征;以及预测装置,利用前述包括三层级模型的神经网络模型的训练方法所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
根据本申请另一示例性实施例,提供了一种计算机可读介质,其中,在所述计算机可读介质上记录有用于由一个或多个计算装置执行前述利用神经网络模型执行预测的方法的计算机程序。
根据本申请另一示例性实施例,提供了一种包括一个或多个计算装置和一个或多个存储装置的系统,所述一个或多个存储装置上记录有指令,所述指令在被所述一个或多个计算装置执行时使得所述一个或多个计算装置实现前述利用神经网络模型执行预测的方法。
通过应用根据本发明的示例性实施例的神经网络模型的训练方法和系统以及预测方法和系统,能够更为有效地提取特征本身和特征之间的信息,并进而基于这些信息来学习预测目标,提高了模型的预测效果。
将在接下来的描述中部分阐述本发明总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本发明总体构思的实施而得知。
附图说明
从下面结合附图对本申请实施例的详细描述中,本申请的这些和/或其他方面和优点将变得更加清楚并更容易理解,其中:
图1是示出根据本发明的示例性实施例的包括三层级模型的神经网络模型的示图;
图2是示出根据本发明的示例性实施例的神经网络模型的训练系统;
图3是示出根据本发明的示例性实施例的神经网络模型的训练方法的流程图;
图4是示出根据本发明的另一示例性实施例的第一层级模型的示图;
图5是示出根据本发明的示例性实施例的具有多个神经网络层的神经网络模型的示意性示图;
图6是示出根据本发明的实施例的神经网络模型的预测系统;
图7是示出根据本发明的实施例的神经网络模型的预测方法的流程图。
在下文中,将结合附图详细描述本发明,贯穿附图,相同或相似的元件将用相同或相似的标号来指示。
具体实施方式
提供以下参照附图进行的描述,以帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。所述描述包括各种特定细节以帮助理解,但这些细节被认为仅是示例性的。因此,本领域的普通技术人员将认识到:在不脱离本发明的范围和精神的情况下,可对这里描述的实施例进行各种改变和修改。此外,为了清楚和简明,可省略已知功能和构造的描述。
随着海量数据的出现,人工智能技术得到了迅速发展,机器学习(包括神经网络)是人工智能研究发展到一定阶段的必然产物,其致力于通过计算的手段,利用经验来改善系统自身的性能。在计算机系统中,“经验”通常以“数据”形式存在,通过机器学习算法,可从数据中产生“模型”,也就是说,将经验数据提供给机器学习算法,就能基于这些经验数据产生模型,在面对新的情况时,模型会提供相应的判断,即,预测结果。
而为了从大量数据中挖掘出价值,则要求相关人员不仅需要精通人工智能技术(特别是机器学习技术),还需要非常熟悉应用机器学习技术的具体场景(例如,图像处理、语音处理、自动控制、金融业务、互联网广告等)。例如,若相关人员对业务了解不够,或建模经验不足,很容易导致较差的建模效果。目前可从两个方面缓解该现象,一是降低机器学习的门槛,使得机器学习算法易于上手;二是提高模型精度,使得算法通用性高,能够产生更好的结果。应理解,这两个方面并非对立,比如第二个方面中算法效果的提升,可以帮助第一点。此外,在期望利用神经网络模型进行相应的目标预测时,相关人员不仅需要熟悉关于神经网络的各种复杂技术细节,还需要理解所预测目标涉及的数据背后的业务逻辑,比如,如果想利用机器学习模型判别犯罪嫌疑犯,相关人员还必须理解哪些特性是犯罪嫌疑犯可能所具有的;如果想利用机器学习模型判别金融行业的欺诈交易,相关人员还必须了解金融行业的交易习惯以及一系列相应的专家规则等。上述种种都给机器学习技术的应用前景带来非常大的困难。
为此,技术人员希望通过技术的手段来解决上述问题,在有效提高神经网络模型效果的同时,降低模型训练和应用的门槛。在此过程中涉及诸多技术问题,例如,要想得到切实有效的模型,不仅要面对训练数据本身的不理想(例如,训练数据不足、训练数据存在缺失、训练数据稀疏、训练数据与预测数据的分布差异等),还需要解决海量数据的运算效率问题。也就是说,现实中不可能依靠无限复杂的理想模型,利用完美的训练数据集来解决执行机器学习过程。作为针对预测目的的数据处理系统或方法,任何用于训练模型的方案或利用模型进行预测的方案均必须受制于客观存在的数据限制和运算资源限制,通过在计算机中利用特定的数据处理机制来解决上述技术问题。这些数据处理机制所依托的是计算机的处理能力、处理方式和处理数据,并非是纯粹的数学或统计计算。
图1是示出根据本发明的示例性实施例的包括三层级模型的神经网络模型100的示图。
参照图1,根据本发明的示例性实施例的包括三层级模型的神经网络模型100可包括第一层级模型110、第二层级模型120以及第三层级模型130。
如图1中所示,在本发明的示例性实施例中,所述第一层级模型110可包括一个或更多个底层神经网络模型112,其被设计为分别学习出每个特征自身的特征信息表示;作为示例,所述第一层级模型110可还包括一个或更多个基于嵌入(embedding)函数的嵌入层111,每个嵌入层111可连接到对应的底层神经网络模型112。所述第二层级模型120可包括多个中间模型120-1至120-N,其被设计为分别学习出对应输入项之间的交互表示,其中,所述对应输入项可包括由第一层级模型输出的特征信息表示之中的至少一个。所述第三层级模型130可以是单个神经网络模型,其被设计为至少基于第二层级模型输出的交互表示学习出预测结果。
本发明实施例中的包括三层级模型的神经网络模型100可被用于预测图像类别、文本类别、语音情感、欺诈交易、广告点击率等。
更进一步来说,本发明实施例中的包括三层级模型的神经网络模型100可被用于的场景包括但不限于以下场景:
图像处理场景,包括:光学字符识别OCR、人脸识别、物体识别和图片分类;更具体地举例来说,OCR可应用于票据(如发票)识别、手写字识别等,人脸识别可应用安防等领域,物体识别可应用于自动驾驶场景中的交通标志识别,图片分类可应用于电商平台的“拍照购”、“找同款”等。
语音识别场景,包括可通过语音进行人机交互的产品,如手机的语音助手(如苹果手机的Siri)、智能音箱等;
自然语言处理场景,包括:审查文本(如合同、法律文书和客服记录等)、垃圾内容识别(如垃圾短信识别)和文本分类(情感、意图和主题等);
自动控制场景,包括:矿井组调节操作预测、风力发电机组调节操作预测和空调系统调节操作预测;具体的对于矿井组可预测开采率高的一组调节操作,对于风力发电机组可预测发电效率高的一组调节操作,对于空调系统,可以预测满足需求的同时节省能耗的一组调节操作;
智能问答场景,包括:聊天机器人和智能客服;
业务决策场景,包括:金融科技领域、医疗领域和市政领域的场景,其中:
金融科技领域包括:营销(如优惠券使用预测、广告点击行为预测、用户画像挖掘等)与获客、反欺诈、反洗钱、承保和信用评分、商品价格预测;
医疗领域包括:疾病筛查和预防、个性化健康管理和辅助诊断;
市政领域包括:社会治理与监管执法、资源环境和设施管理、产业发展和经济分析、公众服务和民生保障、智慧城市(公交、网约车、共享单车等各类城市资源的调配和管理);
推荐业务场景,包括:新闻、广告、音乐、咨询、视频和金融产品(如理财、保险等)的推荐;
搜索场景,包括:网页搜索、图像搜索、文本搜索、视频搜索等;
异常行为检测场景,包括:国家电网客户用电异常行为检测、网络恶意流量检测、操作日志中的异常行为检测等。
应注意。在本发明的示例性实施例中,术语“层级”不同于构成神经网络的层,一个层级可涵盖单一的神经网络结构整体所执行的一系列运算集合,其可包含多个层。
在下文中,将结合图2至图5来详细解释包括三层级模型的神经网络模型100的训练过程。
图2是示出根据本发明的示例性实施例的包括三层级模型的神经网络模型100的训练系统200。
如图2中所示,所述训练系统200可包括数据获取装置210、样本生成装置220以及训练装置230。
所述数据获取装置210可用于获取训练数据记录。
在本发明的实施例中,所获取的训练数据记录根据包括三层级模型的神经网络模型100应用的场景的不同而不同。例如,在图像处理的OCR场景中,所获取的数据记录是图像数据,数据记录的标记是图像中的文字;而在金融科技领域的反洗钱、反欺诈相关的场景中,所获取的训练数据是银行用户的交易流水数据以及该用户本身相关的数据,数据记录的标记是关于特定交易是洗钱或欺诈的标记。本领域的技术人员能够理解不同场景下的训练数据的不同。
即本领域的技术人员可以理解,当包括三层级模型的神经网络模型100应用于某个特定场景时,该包括三层级模型的神经网络模型100是基于该场景对应的训练样本数据集训练而得的。例如,对于商品价格预测,对应的训练样本数据集是该商品的历史数据(例如以商品历史上被售出时其自身的属性、季节、库存量等作为样本的特征,以被售出的价格作为标签),相应地,商品价格预测场景下,预测数据由商品当前的相关信息构成,基于预测数据构造预测样本,例如以商品当前的自身属性、季节和库存量等作为预测样本的特征,将预测样本输入包括三层级模型的神经网络模型100后得到模型输出的预测价格。其他场景类似,这里不再一一赘述。
这里,训练数据记录可以是在线产生的数据、预先生成并存储的数据、也可以是通过输入装置或传输媒介而从外部接收的数据。这些数据可涉及个人、企业或组织的属性信息,例如,身份、学历、职业、资产、联系方式、负债、收入、盈利、纳税等信息。或者,这些数据也可涉及业务相关项目的属性信息,例如,关于买卖合同的交易额、交易双方、标的物、交易地点等信息。应注意,本发明的示例性实施例中提到的属性信息内容可涉及任何对象或事务在某方面的表现或性质,而不限于对个人、物体、组织、单位、机构、项目、事件等进行限定或描述。
作为示例,可获取不同来源的结构化或非结构化数据,例如,文本数据或数值数据等。这些数据可来源于期望获取模型预测结果的实体内部,例如,来源于期望获取预测结果的银行、企业、学校等;这些数据也可来源于上述实体以外,例如,来源于数据提供商、互联网(例如,社交网站)、移动运营商、APP运营商、快递公司、信用机构等。可选地,上述内部数据和外部数据可组合使用,以形成携带更多信息的训练数据记录。
上述数据可通过输入装置输入到数据获取装置,或者由数据获取装置根据已有的数据来自动生成,或者可由数据获取装置从网络上(例如,网络上的存储介质(例如,数据仓库))获得,此外,诸如服务器的中间数据交换装置可有助于数据获取装置从外部数据源获取相应的数据。这里,获取的数据可被数据获取装置中的文本分析模块等数据转换模块转换为容易处理的格式。应注意,数据获取装置可被配置为由软件、硬件和/或固件组成的各个模块,这些模块中的某些模块或全部模块可被集成为一体或共同协作以完成特定功能。
样本生成装置220可基于数据获取装置210获取的训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记。然后,训练装置230可基于样本生成装置220所生成的训练样本来训练所述神经网络模型100。
在本发明的示例中实施例中,在训练神经网络模型的过程中,训练装置230可通过神经网络模型100的第一层级模型110所包括的多个底层神经网络模型112来分别学习出每个特征自身的特征信息表示,通过神经网络模型100的第二层级模型120所包括的多个中间模型120-1至120-N来分别学习出对应输入项(这里,所述对应输入项包括由底层神经网络模型112学习出的特征信息表示之中的至少一个)之间的交互表示,并通过作为神经网络模型100的第三层级模型130的顶层神经网络模型来至少基于第二层级模型120输出的交互表示学习出预测结果。这里,训练装置230可至少基于所述预测结果与训练样本的标记之间的差异来调整所述包括三层级模型的神经网络模型100。
所述包括三层级模型的神经网络模型100旨在针对相关场景中的对象或事件有关的问题进行预测。例如,可用于预测图像类别、预测图像中文字、预测文本类别、预测语音情感类别、预测欺诈交易、预测广告点击率、预测商品价格等等,使得预测结果可直接作为决策依据或进一步结合其他规则而成为决策依据。
以下,结合图3来详细说明所述训练系统200训练包括三层级模型的神经网络模型100的方法。
图3是示出根据本发明的示例性实施例的包括三层级模型的神经网络模型100的训练方法的流程图。
参照图3,在步骤310,可通过数据获取装置210获取训练数据记录。在本发明的示例性实施例中,训练数据记录可以是用于训练神经网络模型100的历史数据记录的集合,并且该历史数据记录具有关于神经网络模型的预测目标的真实结果,即,标记(label)。
在步骤320,可由样本生成装置220基于在步骤320获取的训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记。作为示例,样本生成装置220可对训练数据记录执行相应的特征工程处理,这里,样本生成装置220既可以将训练数据记录的某些属性字段直接作为相应的特征,也可通过对属性字段进行处理(包括字段本身或字段之间的各种运算等处理)来得到相应的特征。从特征取值的特点来看,训练样本的特征可被划分为离散特征(其拥有一组离散的可能值,例如,居住城市等,例如,图1中示出的特征1和特征2)和连续特征(其可能值的区间不受限制,与离散特征相对,例如,图1中示出的特征3)。
然后,在步骤330,可由训练装置230基于训练样本来训练神经网络模型100。
具体地讲,在步骤330中,可由训练装置230通过神经网络模型100的第一层级模型110所包括的多个底层神经网络模型112来分别学习出每个特征自身的特征信息表示。这里,可将训练样本的各个特征分别直接输入或经过变换后输入各自对应的底层神经网络模型112,并至少基于底层神经网络模型112的输出来得到相应的特征信息表示。
在现有的神经网络模型中,特征通常直接进入(例如,经过嵌入层之后进入)神经网络进行学习。然而,不同特征对于目标的预测能力是不一样的,因此难以充分利用更加重要的特征,这对预测结果的准确度有一定的影响。而如上所述,根据本发明的示例性实施例,通过设置底层神经网络模型来专门学习各自对应的特征的信息表达,会有助于提供模型整体的预测效果。
作为示例,训练装置230可首先将训练样本的至少一个特征分别经过对应的嵌入层111,从而得到与所述至少一个特征分别对应的至少一个特征嵌入向量。在本发明的示例性实施例中,所述至少一个特征可以是离散特征,或者所述至少一个特征可以是对输入的连续特征进行离散化处理之后得到的离散化的特征。换言之,训练装置230可将训练样本的特征之中的离散特征经过对应的嵌入层111以得到对应的特征嵌入向量,并且对训练样本的特征之中的至少一个连续特征进行离散化处理,然后将经过离散化处理的特征经过对应的嵌入层111以得到对应的特征嵌入向量。在这种情况下,训练装置230将训练样本的特征之中的离散特征以及经过离散化处理的连续特征经过对应的嵌入层111,并将每个嵌入层111输出的特征嵌入向量分别经过对应的底层神经网络模型112,通过对应的底层神经网络模型112学习出对应特征的特征信息表示。
或者,作为另一示例,训练装置230可仅将训练样本的特征之中的离散特征经过对应的嵌入层111以得到对应的特征嵌入向量,而将训练样本的特征之中的连续特征作为一维的特征嵌入向量输入到底层神经网络模型112,而不经过嵌入层111。在这种情况下,训练装置230可将训练样本的特征之中的离散特征经过对应的嵌入层111,并将每个嵌入层111输出的特征嵌入向量分别经过对应的底层神经网络模型112,通过对应的底层神经网络模型112学习出对应离散特征的特征信息表示,并且将训练样本的特征之中的连续特征直接经过对应的底层神经网络模型112,通过对应的底层神经网络模型112学习出对应连续特征的特征信息表示。
在现有的神经网络模型中,输入模型的特征嵌入(embedding)维度通常是人为指定的,并且针对各个特征的嵌入层维度一般相同。然而,由于神经网络模型的模型效果和嵌入层的维度相关度很大,因此,使用相同的嵌入层维度会增加模型的使用成本。此外,由于不同的特征所包含的信息量并不完全相同,因此针对所有特征使用相同的嵌入层维度会使得有些特征在经过嵌入层之后的输出的维度过大,而有些特征在经过嵌入层之后的输出维度过小。
在本发明的示例性实施例中,在训练装置230将训练样本的特征经过对应的嵌入层111之前,训练装置230可分别确定各个嵌入层111的维度,也就是说,每个嵌入层111不必拥有相同的维度,由此能够自适应地确定针对不同特征的嵌入层111的维度,使得能够更为有效地训练出神经网络模型。
可选地,在本发明的示例性实施例中,训练装置230可至少基于输入到各个嵌入层111的特征来分别确定各个嵌入层111的维度。
仅作为示例,训练装置230可基于输入到各个嵌入层111的特征的特征值的个数来分别确定各个嵌入层111的维度。例如,训练装置230可将一嵌入层111的维度d确定为与输入到该嵌入层111的特征的特征值的个数c成正比。例如,训练装置230可设置所述维度d=α×cβ,α和β可以是根据经验、实验、或装置资源等而确定的常数,例如,α可被设置为6,β可被设置为1/4。
作为又一示例,训练装置230也可基于输入到各个嵌入层111的特征的信息熵来分别确定各个嵌入层111的维度。具体地讲,可基于以下公式(1)来确定与输入到嵌入层111的特征对应的信息熵s:
Figure BDA0002124641770000141
其中,公式(1)中n为训练样本集中,该特征所有不同的特征值总量(如“城市”特征中,所有样本中出现的不同城市个数),pi=fi/m,fi表示输入到嵌入层111的该特征的第i个特征值在样本中的出现次数,m表示相应的样本总数。
在根据公式(1)获得与每个嵌入层111分别对应的特征各自的信息熵s之后,训练装置230可基于这些特征的信息熵s的大小来成比例地确定与各个特征对应的嵌入层的维度d。
具体地讲,在本发明的示例性实施例中,训练装置230可按照与输入到各个嵌入层111的特征对应的信息熵s的大小成正比地对每个嵌入层111分配维度。
此外,在上述分配过程中,训练装置230还可充分考虑运算资源、训练数据记录的数据量、以及神经网络模型的应用场景等因素,结合预先设置的维度分配约束,使得所分配的嵌入层维度在预设的最小维度a和最大维度b之间,其中a小于b,二者均为自然数。例如,训练装置230可设置每个嵌入层111的维度d=min(b,max(a,d)),其中,所述最小维度a和最大维度b可以是由用户根据经验而确定的,或者,也可以是基于运算资源、训练数据记录的数据量、以及神经网络模型的应用场景中的至少一个而确定的。
在按照上述方法完成维度分配之后,如果所分配的嵌入层111的维度满足预设条件(例如,所有嵌入层111的维度之和不大于预设总维度),则可认为该分配有效。如果不满足所述预设条件,例如,如果所有嵌入层111的所分配的维度之和大于预设总维度,则训练装置230需要重新进行维度分配。在本发明的示例性实施例中,所述预设总维度可以是基于运算资源、训练数据记录的数据量、以及神经网络模型的应用场景中的至少一个而确定的。
仅作为示例,当训练装置230重新分配嵌入层111的维度时,可首先设置将分配给各个嵌入层111的最大维度b和最小维度a。在确定了最小维度a和最大维度b之后,训练装置230可将信息熵最低的第一预定数量个特征所对应的嵌入层111确定为分配所述最小维度a,并将信息熵最高的第二预定数量个特征所对应的嵌入层111确定为分配所述最大维度b。之后,对于除了所述第一预定数量个特征和所述第二预定数量个特征之外的其余特征,在所述最小维度a与所述最大维度b之间,训练装置230可按照所述其余特征的信息熵的大小来成比例地分配剩余维度(即,预设总维度减去被分配给与所述第一预定数量个特征和所述第二预定数量个特征分别对应的嵌入层111的维度之后剩余的维度),从而确定分配给与所述其余特征分别对应的嵌入层111的维度。
按照这种方式,可通过枚举所述第一预定数量和所述第二预定数量而获得多种维度分配方案(即,关于第一预定数量和第二预定数量的最优解)。对此,训练装置230可按照预定规则来在所述多种维度分配方案之中确定最优维度分配方案。仅作为示例,在本发明的示例性实施例中,训练装置230可将嵌入层111的维度的方差值最小或最大时所对应的方案确定为最优维度分配方案,即,所述最优解对应于使得被分配给各个嵌入层的维度的方差值最小或最大。然而,应该理解,本申请不限于此,训练装置230还可根据各种其他规则来确定所述最优维度分配方案。
例如,除了如上所述的按照信息熵来成比例地分配各个嵌入层111的位置之外,训练装置230也可基于维度学习模型来学习出各个嵌入层111的维度。在本发明的示例性实施例中,所述维度学习模型可被设计为通过各个嵌入层111的候选维度以及与所述候选维度对应的神经网络模型的模型效果(例如,模型AUC(Area under the Curve of ROC(receiver operating characteristic curve))等)来迭代学习出各个嵌入层的最佳维度,并将学习出的各个嵌入层111的最佳维度确定为各个嵌入层111的维度。仅作为示例,所述维度学习模型可基于强化学习或贝叶斯优化。然而,本发明不限于此,所述维度学习模型还可以是任何其他可用的机器学习模型。
在本发明的示例性实施例中,由于所述多个嵌入层111中的每个嵌入层111的维度是在训练所述神经网络模型100的过程中被分别确定的,因此,所述多个嵌入层111的维度可以是自适应地确定的,而不必具有彼此相同的维度。
继续参照图1,在经过嵌入层111之后,训练装置230还可将每个嵌入层111输出的特征嵌入向量分别经过对应的底层神经网络模型112,通过所述对应的底层神经网络模型112学习出对应特征的特征信息表示。这里,作为示例,所述底层神经网络模型可以为DNN模型。通过这种方式,能够基于特征本身对应的信息自动控制输入到神经网络模型的信息量,由此能够进一步提高神经网络模型的预测效果。
此外,对于训练样本中的连续特征,由于可不经过嵌入层111,因此训练装置230还可将训练样本的至少一个连续特征直接经过对应的底层神经网络模型112,通过该对应的底层神经网络模型112学习出对应连续特征的特征信息表示。
然而,考虑到不同特征对于目标的预测能力是不一样的,为了充分提取特征本身的信息,在本发明的示例性实施例中,训练装置230还可将嵌入层111输出的特征嵌入向量分别与对应的底层神经网络模型112的输出进行函数运算,并将函数运算结果作为所述对应的底层神经网络模型112所学习的特征信息表示(例如,如图4中所示的对特征1和特征2进行的处理)。或者,对于训练样本中的连续特征(即,不经过离散化的连续特征),训练装置230可将该连续特征与对应的底层神经网络模型112的输出进行函数运算,并将函数运算结果作为所述对应的底层神经网络模型112输出的特征信息表示(例如,如图4中所示的对特征3进行的处理)。
通过上述函数运算,在对神经网络模型100进行训练的过程中,能够有效地利用各个特征的对于目标的预测能力,使得更加重要的特征对于预测结果能够起更大的作用,而不重要的特征对于预测结果起较小的作用,甚至不起作用。具体说来,底层神经网络模型112的输出可被视为特征的某种信息量表示,通过其与特征嵌入向量来共同调整特征最终进入第二层级模型120的实际内容,能够进一步确保神经网络模型的学习效果。
此外,在本发明的示例性实施例中,上述函数运算中所使用的函数可以是Out=f(E,O)的形式,E表示嵌入层111输出的特征嵌入向量或连续特征,O表示该特征嵌入向量E或连续特征经过对应的底层神经网络模型112之后的输出。仅作为示例,所述函数运算可以是按位相加或按位相乘运算,举例说来,在f(E,O)表示将E和O按位相乘的运算关系的示例中,可将O视为用于控制E的信息流入量的开关。然而,应该理解的是,在本发明的示例性实施例中,所述函数运算还可以具有预先指定的其他不同函数表达形式,而不限于上述按位相加或按位相乘运算,例如所述运算函数也可以是例如Out=f(E,O)=a*fe(E)+b*fo(O)的复杂运算,这里,f、fe和fo均可为任意运算函数。这里,所述函数运算的参数(例如,上述a和b)可以是在基于训练样本来训练所述神经网络模型的过程中被学习出的。
此外,在通过底层神经网络模型112学习对应特征的特征信息表示的过程中,从嵌入层111输入到底层神经网络模型112的特征嵌入向量与对应底层神经网络结构112的输出可能具有不同的维度,也就是说,会通过特征维度变化进一步为模型带来灵活性。然而,如果要进行函数运算,在嵌入层111输出的特征嵌入向量与对应的底层神经网络模型112的输出具有不同的维度的情况下,则可先对嵌入层111输出的特征嵌入向量与对应的底层神经网络模型112的输出进行维度统一,然后再对维度统一后的特征嵌入向量与对应的底层神经网络结构112的输出进行函数运算。
仅作为一示例,可对嵌入层111输出的特征嵌入向量和对应的底层神经网络模型112的输出中的至少一个进行占位填充,使得嵌入层111输出的特征嵌入向量和对应的底层神经网络模型112的输出维度相同。
作为又一示例,也可将嵌入层111输出的特征嵌入向量和对应的底层神经网络结构112的输出中的至少一个与变换矩阵相乘,使得嵌入层111输出的特征嵌入向量和对应的底层神经网络模型112的输出维度相同。在本发明的示例性实施例中,这样的变换矩阵可以是在训练装置230基于训练样本来训练所述神经网络模型100的过程中被学习出的。
继续参照图1,从第一层级模型110输出的特征信息表示可作为第二层级模型120的至少一个输入项。
根据本发明的示例性实施例,第二层级模型120可包括多个中间模型120-1至120-N。相应地,训练装置230可通过第二层级模型120所包括的多个中间模型120-1至120-N来分别学习出对应输入项之间的交互表示。仅作为示例,所述对应输入项包括由第一层级模型110输出的特征信息表示之中的至少一个。
此外,可选地,在本发明的示例性实施例中,第二层级模型120的输入项还可包括从第一层级模型110的各个嵌入层111输出的至少一个特征嵌入向量和/或至少一个原始特征(即,原始的离散特征或原始的连续特征)本身。换言之,在本发明的示例性实施例中,训练装置230可通过第二层级模型120所包括的多个中间模型120-1至120-N来学习出对应的至少一个特征信息表示、至少一个特征嵌入向量和/或至少一个原始特征之间的交互表示。
优选地,在本发明的示例性实施例中,可根据特征的特性(例如,原始连续特征和/或离散特征本身的特性、原始特征(即,原始连续特征和/或离散特征)所对应的特征嵌入向量的特性和/或原始特征所对应的特征信息表示的特性)、所述特征的组合性和/或各种类型的模型的学习能力特性来确定所述中间模型的类型及其对应的输入项(即,至少一个特征嵌入向量、至少一个特征信息表示、和/或至少一个原始特征)。
在此,针对每个中间模型,还可通过对其所对应的输入项(即,与所述每个中间模型所对应的至少一个特征信息表示、至少一个特征嵌入向量和/或至少一个原始特征)之中的至少一个进行转换、拼接和/或运算而得到所述每个中间模型的至少一部分输入。所述运算可包括对每个中间模型所对应的原始或经过转换的至少一个输入项进行求和运算、均值运算、最大池化运算和/或基于注意力(attention)机制的加权运算。在本发明的示例性实施例中,所述基于注意力机制的加权运算可经由专门的注意力机制网络来执行,即,可经由所述专门的注意力机制网络来学习出针对原始或经过转换的至少一个输入项的一套或多套权重,并基于所述一套或多套权重来分别对原始或经过转换的至少一个输入项进行加权。
返回参照图1,在本发明的示例性实施例中,所述多个中间模型120-1至120-N可以是全输入的神经网络模型(例如,深度神经网络(DNN)模型)、组合特征神经网络模型(即,Crossfeature神经网络模型)、基于因子分解机制的模型(例如,基于FM feature的DNN模型)等中的至少一个。仅作为示例,全输入的神经网络模型的输入可以是全部输入项的拼接结果,组合特征神经网络模型的输入可以是全部输入项之中与能够进行组合的特征对应的输入项的拼接结果(这里,作为示例,组合特征神经网络模型可包括逻辑回归模型,即,逻辑回归模型可被视为单层组合特征神经网络模型),并且基于因子分解机制的模型的输入可以是全部输入项之中的任意两个输入项按位相乘之后,将相乘结果进行按位相加后得到的运算结果。这里,作为示例,每个中间模型的输入不限于特征信息表示,还可包括嵌入层111输出的特征嵌入向量和/或原始特征本身,使其在分别学习出对应的至少一部分特征信息表示之间的交互表示的同时,还进一步学习出特征嵌入向量和/或原始特征与这些特征信息表示之间的交互表示。
之后,训练装置230可通过作为神经网络模型100的第三层级模型130的顶层神经网络模型来至少基于第二层级模型120输出的交互表示学习出预测结果。在本发明的示例性实施例中,第三层级模型130可包括单个顶层神经网络模型。所述单个顶层神经网络模型可以是任何常见的普通神经网络模型,或者还可以是普通神经网络结构的任何变型。
此外,可选地,除了第二层级模型120输出的交互表示之外,第三层级模型130的输入还可包括由第一层级模型110输出的至少一个特征信息表示、由所述一个或更多个嵌入层111输出的至少一个特征嵌入向量、至少一个原始的离散特征和/或至少一个原始的连续特征。也就是说,在本发明的示例性实施例中,训练装置230可通过作为神经网络模型100的第三层级模型130的顶层神经网络模型来基于第二层级模型120输出的至少一个交互表示、第一层级模型110输出的至少一个特征信息表示、由所述一个或更多个嵌入层111输出的至少一个特征嵌入向量、和/或至少一个原始特征学习出预测结果。
此外,可选地,还可通过对第二层级模型120输出的至少一个交互表示、第一层级模型110输出的至少一个特征信息表示、由所述一个或更多个嵌入层111输出的至少一个特征嵌入向量、和/或至少一个原始特征进行拼接和/或运算而得到所述顶层神经网络模型的至少一部分输入。
训练装置230可至少基于第三层级模型130输出的预测结果与训练样本的标记之间的差异来调整所述包括三层级模型的神经网络模型100。
在现有的神经网络模型中,当利用训练样本来训练神经网络模型时,通常是在该模型的输出层得到预测结果ypred,然后,可基于该神经网络模型的预测结果ypred与训练样本的真实标记ytrue(即,关于该神经网络模型的预测目标的真实结果)的取值,根据指定的损失函数来计算损失,然后反向传播(Backpropagation),由此完成神经网络模型的参数更新。然而,随着神经网络模型层数增加,神经网络的性能可能难以如预期提高。
根据本发明的示例性实施例,训练装置230可针对神经网络模型100之中的主体神经网络结构之中的至少一部分层,分别获得与其中每层的输出对应的层预测结果。这里,主体神经网络结构不包括输出层。通过这种方式,可在神经网络的每一层引入监督信息,构建逐层监督的深度神经网络,由此能够进一步提高神经网络模型的预测效果
作为示例,所述主体神经网络结构可包括除了神经网络模型100的输出层之外的全部层,或者所述主体神经网络结构可包括除了神经网络模型100的输出层之外起主要预测作用的各个层。这里,根据本发明的示例性实施例,神经网络模型100是包括三个层级结构的复合神经网络。为此,可根据用户基于对模型算法、数据情况和/或模型应用场景的理解所做出的人为指定来确定主体神经网络结构,也可通过测试手段来确定神经网络中其主要预测作用的部分以作为主体神经网络结构。例如,主体神经网络结构可包括整个神经网络模型100中除去输出层之外的至少一部分层,这些层可位于相同或不同的层级。
在本发明的示例性实施例中,神经网络模型100的输出层可以是指第三层级模型130的输出层,而神经网络模型100的其它神经网络层之中的至少一个或多个层可被视为包括在主体神经网络结构中。
此外,在本发明的示例性实施例中,训练装置130可通过分别将主体神经网络结构之中的至少一部分层中的每层的输出经过至少一次转换来获得与所述每层对应的层预测结果。仅作为示例,在转换过程中,训练装置130可通过分别将主体神经网络结构之中的至少一部分层中的每层的层权重矩阵与所述每层的输出相乘并与相应的层偏置项相加来执行一次转换。作为示例,上述层权重矩阵和偏置项均可作为损失函数的参数以在训练过程中学习出参数值,或者,所述偏置项也可被设置为常数(甚至为0)而不必进行学习。
这里,根据实际情况,上述转换结果可直接作为层预测结果,也可作为激活函数的输入,并将激活函数的输出作为层预测结果。。
具体地讲,仅作为示例,假设主体神经网络结构的第i个层(非输出层)的输出为大小为b×hi的矩阵Hi(即,),其中,b为批大小(batch size),hi为所述第i个层的网络神经元的数量,则与第i个层对应的层预测结果可以为yi=Wi THi+bi或yi=f(Wi THi+bi),其中,f为激活函数(例如,sigmoid函数、tanh函数等),参数Wi为hi×1的层权重矩阵,参数bi为1×1的偏置项,这里,作为特例,bi可以为常数,甚至可以为0。
此外,尽管在此示出了第i个层(i为自然数)的输出Hi经过一次转换来获得层预测结果的方式,但本发明不限于此,所述第i个层的输出Hi还可经过多次转换。仅作为示例,可将第一次转换获得的结果(转换结果或转换结果经激活函数的输出结果)作为输入变量,再次执行第二次转换,以此类推,最终得到层预测结果yi。此外,应注意的是,当进行多次转换时,每次转换中所使用的激活函数f类型及其参数(例如,层权重矩阵Wi和偏置项bi)可相同或不相同,这里,通过将层预测结果也引入损失函数,使得层权重矩阵Wi以及偏置项bi可以是在训练神经网络模型的过程中被学习出的。
在获得了主体神经网络结构的相应层的层预测结果之后,训练装置230可基于由神经网络模型100的输出层所输出的预测结果yout与训练样本的标记ytrue之间的差异以及每个层预测结果与训练样本的标记ytrue之间的层预测差异来构建模型损失函数,并且根据所述模型损失函数来调整所述神经网络模型。
以下将结合图5的示例详细描述构建模型损失函数的处理。
图5是示出根据本发明的示例性实施例的具有多个神经网络层的神经网络模型的示意性示图。
这里,为了方便解释,假设神经网络模型500为神经网络模型100的简略图,并弱化了其中的层级结构。如图5所示,神经网络模型500可包括主体神经网络结构510以及输出层520,所述主体神经网络结构510可包括多个中间层h0 511和h1 512等,并且输出层h2 520的输出yout即为神经网络模型500的预测结果。应理解,所述多个中间层h0 511和h1 512等可涵盖位于各个层级之中的底层神经网络模型、中间模型和/或顶层神经网络模型之中的至少一部分网络层(layer)。
参照图5,训练装置230可针对主体神经网络结构510的至少一个中间层h0 511和h1512等分别获得与其对应的层预测结果,例如,针对中间层h0 511的层预测结果y0和针对中间层h1 512的层预测结果y1等。然后,可基于由神经网络模型500的输出层h2 520所输出的预测结果yout与训练样本的标记ytrue之间的差异以及各个层预测结果y0和y1等与所述标记ytrue之间的层预测差异来构建模型损失函数L。
在本发明的示例性实施例中,可按照下述等式(2)来构建模型损失函数L:
L=lout(yout,ytrue)+w0*l0(y0,ytrue)+w1*l1(y1,ytrue)......(2)
其中,lout表示输出层损失函数,l0和l1分别表示中间层h0 511和h1 512的层损失函数,w0和w1分别表示与中间层h0 511和h1 512对应的损失函数权重。即,可基于由神经网络模型的输出层520所输出的预测结果与所述标记ytrue之间的差异来构建输出层损失函数,分别基于每个层预测结果与所述标记ytrue之间的层预测差异来构建所述每层的层损失函数,通过对输出层损失函数和各个层损失函数进行加权求和来构建所述模型损失函数。
在本发明的示例性实施例中,w0和w1的值可按照预先指定的规则变化,例如,w0和w1的值可被预先设置为规则地变化(例如,在训练神经网络模型的过程中,按照每轮迭代来衰减),或者也可以是在训练神经网络模型的过程中被学习出的(例如,通过专门的注意力(attention)机制网络被学习出的)。
此外,在本发明的示例性实施例中,在获得模型损失函数L之后,可通过梯度下降等方法来学习神经网络模型中可学习的各种变量,例如,层权重矩阵、偏置项、attention操作相关的权重等。仅作为示例,在上述学习过程中,可以求L对层权重矩阵Wi的导数,以此来更新Wi
此外,在图5的示例中,示出了主体神经网络结构510包括两个中间层h0 511和h1512,并且在计算损失函数L的过程中使用了针对中间层h0 511的预测结果y0和针对中间层h1 512的预测结果y1两者,但本发明不限于此,主体神经网络结构510可由于神经网络模型的具体结构而包括更多个中间层,并且当存在多个中间层时,可仅使用针对所述多个中间层中的一部分中间层的层预测结果。
可选地,在本发明的示例性实施例中,在训练装置230训练神经网络模型500的过程中,针对不同批次的训练样本,各个层损失函数的函数类型可被动态设置,并且/或者,针对不同批次的训练样本,主体神经网络结构510之中的参与上述损失计算过程的具体层也可被动态设置。
仅作为示例,在基于梯度下降系列算法来对模型进行优化时,lout、l0、l1的形式可不同,从而进一步增加随机性,例如,l0可以是cross entropy(交叉熵)损失函数,而l1可以为hinge损失函数。如针对第一批训练样本只有lout和l0存在,而针对第二批训练样本三者均存在。作为示例,可通过以下方式来针对每批次数据选取层损失函数,例如,假设损失函数中总共涉及的层数量(包括输出层和各中间层)的个数为k,则可从特定分布(例如,如二项分布)中采样出由k个0或1组成的序列,将该序列和由输出层损失函数或各个层损失函数组成的损失函数相乘,则与0相乘的部分被舍弃,不计算其对应的损失。
按照上述方式,能够使得神经网络模型100得到更好的训练,由此能够得到更高的预测效果。
在基于训练数据记录完成了对神经网络模型100的训练之后,训练好的神经网络模型100可被用来使用预测数据记录进行预测。
图6是示出根据本发明的实施例的神经网络模型的预测系统600。
参照图6,所述预测系统600可包括:数据获取装置610,用于获取预测数据记录;样本生成装置620,用于基于数据获取装置610获取的预测数据记录的属性信息来生成预测样本的特征;以及预测装置630,用于利用已经过训练的神经网络模型,针对样本生成装置620生成的预测样本来提供相应的预测结果。这里,数据获取装置610可基于手动、自动或半自动的方式从任意数据源获取预测数据记录;相应地,样本生成装置620可按照与训练系统200中的样本生成装置220对应一致的方式来生成预测而样本的特征,只是预测样本中不具有标记。
在本发明的实施例中,预测装置630所使用的神经网络模型可以是通过如上所述的神经网络模型训练系统200和训练方法所训练出的神经网络模型100,由于之前已经描述了基于神经网络模型执行处理的机制,在此将不再对其进行更加详细的描述。
图7是示出根据本发明的实施例的神经网络模型的预测方法700的流程图。
参照图7,在步骤710,可通过数据获取装置610获取预测数据记录。
在本发明的实施例中,预测数据记录和训练数据记录是同类型的数据记录。即如上所述的神经网络模型训练系统200和训练方法所训练出的神经网络模型100用何种数据进行训练,则进行预测时的预测数据也是何种数据。例如在OCR场景中,训练数据是图像数据和其标记(标记是图像中的文字),则预测数据也是包含文字的图像数据。
这里,作为示例,可通过手动、半自动或全自动的方式来采集预测数据记录,或对采集的原始数据进行处理,使得处理后的数据记录具有适当的格式或形式。作为示例,可批量地采集数据。
这里,可通过输入装置(例如,工作站)接收用户手动输入的数据记录。此外,可通过全自动的方式从数据源系统地取出数据记录,例如,通过以软件、固件、硬件或其组合实现的定时器机制来系统地请求数据源并从响应中得到所请求的数据。所述数据源可包括一个或多个数据库或其他服务器。可经由内部网络和/或外部网络来实现全自动获取数据的方式,其中可包括通过互联网来传送加密的数据。在服务器、数据库、网络等被配置为彼此通信的情况下,可在没有人工干预的情况下自动进行数据采集,但应注意,在这种方式下仍旧可存在一定的用户输入操作。半自动方式介于手动方式与全自动方式之间。半自动方式与全自动方式的区别在于由用户激活的触发机制代替了例如定时器机制。在这种情况下,在接收到特定的用户输入的情况下,才产生提取数据的请求。每次获取数据时,优选地,可将捕获的数据存储在非易失性存储器中。作为示例,可利用数据仓库来存储在获取期间采集的原始数据以及处理后的数据。
上述获取的数据记录可来源于相同或不同的数据源,也就是说,每条数据记录也可以是不同数据记录的拼接结果。例如,除了获取客户向银行申请开通信用卡时填写的信息数据记录(其包括收入、学历、职务、资产情况等属性信息字段)之外,作为示例,可还获取该客户在该银行的其他数据记录,例如,贷款记录、日常交易数据等,这些获取的数据记录可拼接为完整的数据记录。此外,还可获取来源于其他私有源或公共源的数据,例如,来源于数据提供商的数据、来源于互联网(例如,社交网站)的数据、来源于移动运营商的数据、来源于APP运营商的数据、来源于快递公司的数据、来源于信用机构的数据等等。
可选地,可借助硬件集群(诸如Hadoop集群、Spark集群等)对采集到的数据进行存储和/或处理,例如,存储、分类和其他离线操作。此外,也可对采集的数据进行在线的流处理。
作为示例,可将文本等非结构化数据转换为更易于使用的结构化数据以在后续进行进一步的处理或引用。基于文本的数据可包括电子邮件、文档、网页、图形、电子数据表、呼叫中心日志、交易报告等。
然后,在步骤720,可通过样本生成装置620基于在步骤710获取的预测数据记录的属性信息来生成预测样本的特征。
之后,在步骤730,可通过预测装置630利用已经过训练的神经网络模型,针对在步骤720所生成的预测样本来提供相应的预测结果。
在本发明的实施例中,在步骤730中所使用的神经网络模型可以是通过如上所述的神经网络模型训练系统200和训练方法所训练出的神经网络模型100,由于之前已经描述了基于神经网络模型执行处理的机制,在此将不再对其进行更加详细的描述。
以上已参照图1至图7描述了根据本发明的示例性实施例的神经网络模型的训练方法和系统以及预测方法和系统。然而,应理解的是:图1至图7中所使用的装置、系统、单元等可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些系统、装置或单元等可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些系统、装置或单元等所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。
此外,上述方法可通过记录在计算可读介质上的程序来实现,例如,根据本申请的示例性实施例,可提供一种计算机可读介质,其中,在所述计算机可读介质上记录有用于由一个或多个计算装置执行以下方法步骤的计算机程序:获取训练数据记录;基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及利用训练样本的集合来训练神经网络模型,其中,在训练神经网络模型的过程中,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型。此外,根据本发明的另一示例性实施例,可提供一种计算机可读介质,其中,在所述计算机可读介质上记录有用于由一个或多个计算装置执行以下方法步骤的计算机程序:获取预测数据记录;基于预测数据记录的属性信息来生成预测样本的特征;以及利用如前述训练方法所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经在参照图1到图7进行相关方法的描述过程中提及,因此这里为了避免重复将不再进行赘述。
应注意,根据本发明的示例性实施例的神经网络模型的训练方法和系统可完全依赖计算机程序的运行来实现相应的功能,即,各个单元或装置在计算机程序的功能架构中与各步骤相应,使得整个装置或系统通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
另一方面,当图1至图7所提及的各个单元或装置以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。
例如,实现根据本发明的示例性实施例的神经网络模型的训练方法的系统可包括一个或多个计算装置和一个或多个存储装置,其中,所述一个或多个存储装置上记录有指令,当所述指令在被所述一个或多个计算装置执行时使得所述一个或多个计算装置执行下述步骤:获取训练数据记录;基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及利用训练样本的集合来训练神经网络模型,其中,在训练神经网络模型的过程中,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型。此外,根据另一示例性实施例,实现根据本发明的示例性实施例的神经网络模型的预测方法的系统可包括一个或多个计算装置和一个或多个存储装置,其中,所述一个或多个存储装置上记录有指令,当所述指令在被所述一个或多个计算装置执行时使得所述一个或多个计算装置执行下述步骤:获取预测数据记录;基于预测数据记录的属性信息来生成预测样本的特征;以及利用如前述训练方法所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
具体说来,上述系统可以部署在服务器中,也可以部署在分布式网络环境中的节点装置上。此外,所述系统设备还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。系统设备的所有组件可经由总线和/或网络而彼此连接。
这里,所述系统并非必须是单个装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。所述系统还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。
在所述系统中,用于执行根据本发明的示例性实施例的神经网络模型的训练方法或预测方法的计算装置可以是处理器,这样的处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,所述处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。处理器可运行存储在存储装置之一中的指令或代码,其中,所述存储装置还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。
存储装置可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储装置可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储装置和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储装置中的文件。
应注意本发明示例性实施注重解决目前算法通用性低,精度不高的问题。具体说来,为了增加算法的易用与通用性,本发明示例性实施例的实施并未依赖于任何对具体业务逻辑的限定,而是集中精力在一个较通用的场景中。和大多现有的方案不同,本发明的示例性实施例不集中在一个具体场景上,而可应用于多种不同的场景,如推荐系统、广告系统等等。在本发明示例性实施例的基础上,建模人员可以继续加入自己的业务经验等,进一步提升效果。因此,本发明示例性实施例考虑的是应用场景的抽象,不针对某具体场景,却适用于各场景。
也就是说,根据本发明的示例性实施例,所述训练数据或预测数据可以是图像数据、语音数据、用于描述工程控制对象的数据、用于描述用户(或其行为)的数据、用于描述行政、商业、医疗、监管、金融等各个领域内的对象和/或事件的数据等,相应地,所述模型旨在针对与上述对象或事件有关的问题进行预测。例如,所述模型可用于预测图像类别、文本类别、语音情感、欺诈交易、广告点击率等,使得预测结果可直接作为决策依据或进一步结合其他规则而成为决策依据。本发明的示例性实施例并不限制模型的预测目的所涉及的具体技术领域,但原因在于所述模型完全可适用于任何能够提供相应训练数据或预测数据的具体领域或场景,而绝不意味着所述模型无法适用于相关的技术领域。
更进一步来说,本申请中的包括三层级模型的神经网络模型100可应用于的场景包括但不限于以下场景:图像处理场景、语音识别场景、自然语言处理场景、自动控制场景、智能问答场景、业务决策场景、推荐业务场景、搜索场景和异常行为检测场景。上述各类场景下的更具体应用场景详见前面的描述。
因此,本申请的神经网络模型的训练方法和系统以及预测方法和系统,也可以应用于上述的任一场景,并且本申请的神经网络模型的训练方法和系统以及预测方法和系统,在应用于不同的场景时,总体执行方案并无差别,只是在不同场景下针对的数据不同,因此本领域的技术人员基于前述的方案公开可以毫无障碍地将本申请的方案应用于不同的场景,因此不需要对每个场景一一进行说明。
以上描述了本申请的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本申请不限于所披露的各示例性实施例。在不偏离本申请的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本申请的保护范围应该以权利要求的范围为准。

Claims (10)

1.一种包括三层级模型的神经网络模型的训练方法,所述方法包括:
获取训练数据记录;
基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及
利用训练样本的集合来训练神经网络模型,
其中,在训练神经网络模型的过程中,
通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,
通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个,
通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并
至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型。
2.如权利要求1所述的训练方法,其中,通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示的步骤包括:
将训练样本的特征之中的离散特征以及经过离散化处理的连续特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应特征的特征信息表示;或者
将训练样本的特征之中的离散特征经过对应的嵌入层,并将每个嵌入层输出的特征嵌入向量分别经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应离散特征的特征信息表示,并且将训练样本的特征之中的连续特征直接经过对应的底层神经网络模型,通过对应的底层神经网络模型学习出对应连续特征的特征信息表示。.
3.如权利要求2所述的训练方法,所述方法还包括:在将训练样本的特征分别经过对应的嵌入层之前,分别确定各个嵌入层的维度。
4.如权利要求3所述的训练方法,其中,分别确定各个嵌入层的维度的步骤包括:
至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度。
5.如权利要求4所述的训练方法,其中,至少基于输入各个嵌入层的特征来分别确定各个嵌入层的维度的步骤包括:基于输入各个嵌入层的特征的特征值的数量来分别确定各个嵌入层的维度。
6.一种包括三层级模型的神经网络模型的训练系统,所述系统包括:
数据获取装置,用于获取训练数据记录;
样本生成装置,用于基于训练数据记录的属性信息来生成训练样本的特征,并将训练数据记录的标记作为训练样本的标记;以及
训练装置,用于利用训练样本的集合来训练神经网络模型,
其中,在训练神经网络模型的过程中,训练装置通过神经网络模型的第一层级模型所包括的多个底层神经网络模型来分别学习出每个特征自身的特征信息表示,通过神经网络模型的第二层级模型所包括的多个中间模型来分别学习出对应输入项之间的交互表示,通过作为神经网络模型的第三层级模型的顶层神经网络模型来至少基于第二层级模型输出的交互表示学习出预测结果,并至少基于所述预测结果与所述标记之间的差异来调整所述包括三层级模型的神经网络模型,其中,所述对应输入项包括由第一层级模型输出的特征信息表示之中的至少一个。
7.一种利用神经网络模型执行预测的方法,所述方法包括:
获取预测数据记录;
基于预测数据记录的属性信息来生成预测样本的特征;以及
利用如权利要求1至5之中的任一权利要求所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
8.一种利用神经网络模型执行预测的预测系统,所述预测系统包括:
数据获取装置,获取预测数据记录;
样本生成装置,基于预测数据记录的属性信息来生成预测样本的特征;以及
预测装置,利用如权利要求1至5之中的任一权利要求所训练出的神经网络模型,针对预测样本来提供相应的预测结果。
9.一种计算机可读介质,其中,在所述计算机可读介质上记录有用于由一个或多个计算装置执行如权利要求1至5和7中任一项所述的方法的计算机程序。
10.一种包括一个或多个计算装置和一个或多个存储装置的系统,所述一个或多个存储装置上记录有指令,所述指令在被所述一个或多个计算装置执行时使得所述一个或多个计算装置实现如权利要求1至5和7中任一项所述的方法。
CN201910618144.6A 2018-07-23 2019-07-10 神经网络模型的训练方法和系统以及预测方法和系统 Active CN110751261B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2019/096971 WO2020020088A1 (zh) 2018-07-23 2019-07-22 神经网络模型的训练方法和系统以及预测方法和系统
US17/262,974 US20210264272A1 (en) 2018-07-23 2019-07-22 Training method and system of neural network model and prediction method and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810813359 2018-07-23
CN2018108133599 2018-07-23

Publications (2)

Publication Number Publication Date
CN110751261A true CN110751261A (zh) 2020-02-04
CN110751261B CN110751261B (zh) 2024-05-28

Family

ID=

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111222722A (zh) * 2020-04-24 2020-06-02 支付宝(杭州)信息技术有限公司 针对业务对象进行业务预测的方法、神经网络模型和装置
CN111366123A (zh) * 2020-03-06 2020-07-03 大连理工大学 一种基于多任务学习的零件表面粗糙度和刀具磨损预测方法
CN111461898A (zh) * 2020-02-28 2020-07-28 上海商汤智能科技有限公司 一种获取核保结果的方法及相关装置
CN111899883A (zh) * 2020-09-29 2020-11-06 平安科技(深圳)有限公司 少样本或零样本的疾病预测设备、方法、装置及存储介质
CN112069279A (zh) * 2020-09-04 2020-12-11 北京百度网讯科技有限公司 地图数据更新方法、装置、设备及可读存储介质
CN112256755A (zh) * 2020-10-20 2021-01-22 中电科新型智慧城市研究院有限公司福州分公司 一种基于深度学习的学生异常行为分析方法
CN112381581A (zh) * 2020-11-17 2021-02-19 东华理工大学 一种基于改进Transformer的广告点击率预估方法
CN112468509A (zh) * 2020-12-09 2021-03-09 湖北松颢科技有限公司 一种基于深度学习技术的流量数据自动检测方法及装置
CN112560997A (zh) * 2020-12-29 2021-03-26 珠海拓芯科技有限公司 故障识别模型训练方法、故障识别方法及相关装置
CN112860808A (zh) * 2020-12-30 2021-05-28 深圳市华傲数据技术有限公司 基于数据标签的用户画像分析方法、装置、介质和设备
CN113191809A (zh) * 2021-05-06 2021-07-30 上海交通大学 移动广告点击欺诈检测方法、系统、终端及介质
CN113343979A (zh) * 2021-05-31 2021-09-03 北京百度网讯科技有限公司 用于训练模型的方法、装置、设备、介质和程序产品
CN113420227A (zh) * 2021-07-21 2021-09-21 北京百度网讯科技有限公司 点击率预估模型的训练方法、预估点击率的方法、装置
CN113761392A (zh) * 2021-09-14 2021-12-07 上海任意门科技有限公司 内容召回方法、计算设备和计算机可读存储介质
CN114430378A (zh) * 2020-10-15 2022-05-03 中国移动通信集团浙江有限公司 聊天机器人的异常检测方法、装置、计算设备及存储介质
CN116167833A (zh) * 2023-04-19 2023-05-26 无锡数信互融科技发展有限公司 基于联邦学习的互联网金融风险控制系统及其方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662039A (zh) * 2012-04-17 2012-09-12 戴会超 一种基于bp神经网络的水体溶解氧饱和度预测方法
CN102937784A (zh) * 2012-10-30 2013-02-20 中冶南方工程技术有限公司 基于人工神经网络的铸坯质量在线预报的控制方法
CN106157204A (zh) * 2016-06-20 2016-11-23 山东师范大学 一种基于bp神经网络模型的学生学业成绩预测方法及系统
US20180060728A1 (en) * 2016-08-31 2018-03-01 Microsoft Technology Licensing, Llc Deep Embedding Forest: Forest-based Serving with Deep Embedding Features

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662039A (zh) * 2012-04-17 2012-09-12 戴会超 一种基于bp神经网络的水体溶解氧饱和度预测方法
CN102937784A (zh) * 2012-10-30 2013-02-20 中冶南方工程技术有限公司 基于人工神经网络的铸坯质量在线预报的控制方法
CN106157204A (zh) * 2016-06-20 2016-11-23 山东师范大学 一种基于bp神经网络模型的学生学业成绩预测方法及系统
US20180060728A1 (en) * 2016-08-31 2018-03-01 Microsoft Technology Licensing, Llc Deep Embedding Forest: Forest-based Serving with Deep Embedding Features

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111461898A (zh) * 2020-02-28 2020-07-28 上海商汤智能科技有限公司 一种获取核保结果的方法及相关装置
CN111366123A (zh) * 2020-03-06 2020-07-03 大连理工大学 一种基于多任务学习的零件表面粗糙度和刀具磨损预测方法
CN111222722A (zh) * 2020-04-24 2020-06-02 支付宝(杭州)信息技术有限公司 针对业务对象进行业务预测的方法、神经网络模型和装置
CN112069279A (zh) * 2020-09-04 2020-12-11 北京百度网讯科技有限公司 地图数据更新方法、装置、设备及可读存储介质
US11859998B2 (en) 2020-09-04 2024-01-02 Beijing Baidu Netcom Science Technology Co., Ltd. Map data updating method, apparatus, device, and readable storage medium
CN112069279B (zh) * 2020-09-04 2022-11-08 北京百度网讯科技有限公司 地图数据更新方法、装置、设备及可读存储介质
CN111899883A (zh) * 2020-09-29 2020-11-06 平安科技(深圳)有限公司 少样本或零样本的疾病预测设备、方法、装置及存储介质
CN114430378A (zh) * 2020-10-15 2022-05-03 中国移动通信集团浙江有限公司 聊天机器人的异常检测方法、装置、计算设备及存储介质
CN114430378B (zh) * 2020-10-15 2023-08-18 中国移动通信集团浙江有限公司 聊天机器人的异常检测方法、装置、计算设备及存储介质
CN112256755A (zh) * 2020-10-20 2021-01-22 中电科新型智慧城市研究院有限公司福州分公司 一种基于深度学习的学生异常行为分析方法
CN112381581B (zh) * 2020-11-17 2022-07-08 东华理工大学 一种基于改进Transformer的广告点击率预估方法
CN112381581A (zh) * 2020-11-17 2021-02-19 东华理工大学 一种基于改进Transformer的广告点击率预估方法
CN112468509A (zh) * 2020-12-09 2021-03-09 湖北松颢科技有限公司 一种基于深度学习技术的流量数据自动检测方法及装置
CN112560997A (zh) * 2020-12-29 2021-03-26 珠海拓芯科技有限公司 故障识别模型训练方法、故障识别方法及相关装置
CN112860808A (zh) * 2020-12-30 2021-05-28 深圳市华傲数据技术有限公司 基于数据标签的用户画像分析方法、装置、介质和设备
CN113191809A (zh) * 2021-05-06 2021-07-30 上海交通大学 移动广告点击欺诈检测方法、系统、终端及介质
CN113191809B (zh) * 2021-05-06 2022-08-09 上海交通大学 移动广告点击欺诈检测方法、系统、终端及介质
CN113343979A (zh) * 2021-05-31 2021-09-03 北京百度网讯科技有限公司 用于训练模型的方法、装置、设备、介质和程序产品
CN113420227A (zh) * 2021-07-21 2021-09-21 北京百度网讯科技有限公司 点击率预估模型的训练方法、预估点击率的方法、装置
CN113420227B (zh) * 2021-07-21 2024-05-14 北京百度网讯科技有限公司 点击率预估模型的训练方法、预估点击率的方法、装置
CN113761392A (zh) * 2021-09-14 2021-12-07 上海任意门科技有限公司 内容召回方法、计算设备和计算机可读存储介质
CN116167833A (zh) * 2023-04-19 2023-05-26 无锡数信互融科技发展有限公司 基于联邦学习的互联网金融风险控制系统及其方法
CN116167833B (zh) * 2023-04-19 2023-06-30 无锡数信互融科技发展有限公司 基于联邦学习的互联网金融风险控制系统及其方法

Also Published As

Publication number Publication date
US20210264272A1 (en) 2021-08-26

Similar Documents

Publication Publication Date Title
WO2020020088A1 (zh) 神经网络模型的训练方法和系统以及预测方法和系统
US20210264272A1 (en) Training method and system of neural network model and prediction method and system
WO2020249125A1 (zh) 用于自动训练机器学习模型的方法和系统
CN110751286B (zh) 神经网络模型的训练方法和训练系统
Souma et al. Enhanced news sentiment analysis using deep learning methods
Wu et al. A graph-based CNN-LSTM stock price prediction algorithm with leading indicators
CN113822494B (zh) 风险预测方法、装置、设备及存储介质
WO2020253775A1 (zh) 机器学习建模过程的实现方法和系统
CN110751285B (zh) 神经网络模型的训练方法和系统以及预测方法和系统
CN110751287B (zh) 神经网络模型的训练方法及系统以及预测方法及系统
Wang et al. Predicting construction cost and schedule success using artificial neural networks ensemble and support vector machines classification models
CN110705719A (zh) 执行自动机器学习的方法和装置
CN111523677B (zh) 实现对机器学习模型的预测结果进行解释的方法及装置
US20230023630A1 (en) Creating predictor variables for prediction models from unstructured data using natural language processing
WO2020035075A1 (zh) 在数据隐私保护下执行机器学习的方法和系统
CN110858253A (zh) 在数据隐私保护下执行机器学习的方法和系统
CN116468460A (zh) 基于人工智能的消费金融客户画像识别系统及其方法
Gao et al. Construction of a financial default risk prediction model based on the LightGBM algorithm
Li et al. A data-driven explainable case-based reasoning approach for financial risk detection
Sánchez et al. Improving debt collection via contact center information: A predictive analytics framework
WO2023221359A1 (zh) 基于多阶段时序多任务的用户安全等级识别方法及装置
Nalluri et al. Modelling the FinTech adoption barriers in the context of emerging economies—An integrated Fuzzy hybrid approach
CN110751261B (zh) 神经网络模型的训练方法和系统以及预测方法和系统
CN114926204A (zh) 基于数据价值的数据处理装置及其方法
Vasudevan et al. Estimating fungibility between skills by combining skill similarities obtained from multiple data sources

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