本发明涉及机器学习技术领域,尤其涉及一种目标变量预测模型的生成方法、系统及装置。
背景技术:
机器学习方法目前被广泛应用在图像识别,语音识别,自然语言处理以及生物信息学等很多领域。但现有技术中的机器学习方法存在一个问题是,传统的机器学习模型几乎都是通过相关关系建立的,虽然相关关系描述了事件同时变化的特性,但是这种特性并不代表因果性,从而导致机器学习的输出结果很可能是局部的,不稳定的,因此在训练数据集中的相关关系在测试集及模型实际使用中可能并不存在或者产生变化,导致利用训练数据集训练得到的机器学习模型的鲁棒性不能满足需求。
因此,现有技术有待于进一步的改进。
技术实现要素:
鉴于现有技术的不足,本发明提供一种目标变量预测模型的生成方法、系统及装置,目的在于解决现有技术中的基于相关关系训练出的目标变量预测模型鲁棒性低,不能满足对目标因变量准确预测需求的缺陷。
第一方面,本实施例公开了一种目标变量预测模型的生成方法,其中,包括:
获取原始数据集;其中,所述原始数据集中含有多个自变量数据和一个因变量,预设个数的自变量数据以列的形式组成自变量数据矩阵,以所述自变量数据矩阵的每行数据作为一个样本数据;
根据所述自变量数据矩阵得到自变量随机矩阵;
将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与所述自变量数据矩阵对应的权重向量;其中,所述权重向量为每个样本数据对应的权重组成的权重向量;
利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型。
可选的,所述根据自变量数据矩阵得到自变量随机矩阵的步骤包括:
对自变量数据矩阵的每一列所在排序进行随机调整,生成自变量随机矩阵。
可选的,所述预设对抗网络模型包括生成模块和区分模块;
将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与所述自变量数据矩阵对应的权重向量的步骤包括:
将自变量数据矩阵和其对应的自变量随机矩阵纵向拼接,得到拼接出的训练数据矩阵;
利用所述训练数据矩阵对所述区分模块和生成模块进行多次迭代训练,得到所述权重向量。
可选的,所述利用训练数据矩阵对所述区分模块和生成模块进行多次迭代训练,得到所述权重向量的步骤包括:
将所述训练数据矩阵输入至所述区分模块,得到所述区分模块输出的分类结果;
利用所述分类结果和以所述预设初始权重向量对区分模块的损失函数进行加权,计算出所述预设对抗网络模型的初始总损失值,并根据所述初始总损失值调整所述预设对抗网络模型的模型参数;
将所述预设初始权重向量和各个样本数据对应的损失值输入至生成模块,得到所述生成模块输出的样本数据对应的更新权重向量;
将所述训练数据矩阵输入至所述区分模块,得到所述区分模块输出的更新后的分类结果;
根据分类结果和更新权重向量计算所述区分模块的损失值,并根据损失值调整所述更新权重向量,以及计算所述预设对抗网络模型的更新总损失值;
重复将所述各个样本数据的损失值和所述更新权重向量输入至所述生成模块,得到所述生成模块输出的与自变量数据矩阵对应的迭代更新权重向量的步骤;直至所述预设对抗网络模型的更新总损失值满足预设要求,得到所述自变量数据矩阵对应的权重向量。
可选的,所述区分模块的损失函数为加权交叉熵损失函数。
可选的,所述利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型的步骤包括:
将所述原始数据集输入至预设神经网络模型,得到预设神经网络模型输出的目标特征结果;
根据所述权重向量对所述预设神经网络模型的损失函数进行加权,并根据所述目标特征结果和加权后的损失函数计算出所述预设神经网络模型的损失值;
根据所述预设神经网络模型的损失值对所述预设神经网络模型的模型参数进行调整,重复将原始数据集输入至预设神经网络模型的步骤,直至训练得到目标网络模型。
可选的,所述原始数据集中含有的自变量数据为由期货日频价量数据合成的价格指标数据,所述原始数据集中还含有因变量数据,所述因变量数据为日收益率,所述目标网络模型为预测期货收益率的收益预测模型。
第二方面,本实施例公开了一种目标变量预测模型的生成系统,其中,包括:
数据集获取模块,用于获取原始数据集;其中,所述原始数据集中含有多个自变量数据和一个因变量,预设个数的自变量数据以列的形式组成自变量数据矩阵,以所述自变量数据矩阵的每行数据作为一个样本数据;
随机处理模块,用于根据所述自变量数据矩阵得到自变量随机矩阵;
权重更新模块,用于将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与所述自变量数据矩阵对应的权重向量;其中,所述权重向量为每个样本数据对应的权重组成的权重向量;
模型训练模块,用于利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型。
第三方面,本实施例还公开了一种目标变量预测模型的生成装置,其中,包括处理器、与处理器通信连接的存储介质,所述存储介质适于存储多条指令;所述处理器适于调用所述存储介质中的指令,以执行实现所述的目标变量预测模型的生成方法的步骤。
第四方面,本实施例还公开了一种计算机可读存储介质,其中,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的目标变量预测模型的生成方法的步骤。
有益效果:本发明提出了一种目标变量预测模型的生成方法、系统及装置,获取原始数据集;根据各个自变量数据对应的自变量数据矩阵得到自变量随机矩阵;将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与各个自变量数据矩阵对应的权重向量;利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型。本发明实施例利用预设对抗网络模型根据原始数据集生成权重向量,并使用权重向量对预设网络模型的损失函数进行训练得到目标变量预测模型,而目标变量预测模型即使在训练数据集的数据分布发生了非常大变化的情况下,依然可以保持较好的预测能力。
附图说明
图1是本发明所述目标变量预测模型的生成方法的步骤流程图;
图2是本发明所述区分模块的结构示意图;
图3是本发明所述目标变量预测模型的生成系统的结构原理框图;
图4是本发明实施例中目标变量预测模型的生成装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
发明人发现现有技术中在进行目标变量预测模型训练时,是基于已知变量和待预测变量之间的对应关系进行模型建立并训练得到的,但是已知变量与待预测变量之间的相关性,而相关性仅仅表示已知量和变量之间的局部的特性,因此基于相关性进行模型训练的方法并不适应于已知量和变量之间相关性不稳定的目标变量预测模型训练中。若基于相关性关系对已知量和变量之间相关性不强的目标变量预测模型进行训练时,其训练得出的网络模型或出现鲁棒性低的问题,无法取得较准确且稳定的预测结果。
由于已知变量和预测变量之间的关系更为本质的为因果关系,并且因果关系更能反映出全局的和稳定的变量之间关系,并且不会因为数据集中数据的变化而变化,因此发明通过利用已知变量和预测变量之间的关系实现对预设神经网络模型的训练,从而取得鲁棒性较高的神经网络模型。
本实施例提供的目标变量预测模型的生成方法,不仅仅适用于已知变量和预测变量之间的相关性较强的对应关系训练过程中,更加适用于已知变量和预测变量之间的对应相关性较弱,而已知变量和预测变量之间的因果相关较强的对应关系训练过程中。比如量化投资领域中,股票市场风格的切换导致数据的分布发生很大变化时,因为已知的价量数据与待预测的收益率之间的相关关系变化较大,因此基于两者之间的相关关系建立的机器学习模型很可能无法对收益率做出准确预测,但如果基金公司依赖因果关系训练神经网络模型,根据训练出的目标变量预测模型进行投资决策,将会取得较佳的预测效果。
本实施提供的目标变量预测模型的生成方法,适用于图像识别,语音识别,自然语言处理以及生物信息学等很多领域。由于本实施提供的目标变量预测模型的生成方法基于因果关系建立,因此即使已知训练样本数据分布发生了较大的改变,也可以做出较为准确的预测结果,因此尤其适用于已知训练样本数据与待预测结果数据之间的对应关系变化较大的领域中,比如:图像识别出的密码字符的更改预测,或者语音识别领域中语音信息识别等,因为待预测信息具有较大的偶然性,因此应用本实施例提供的目标变量预测模型生成方法进行相应的模型训练,可以得到较佳的训练效果。
下面结合本发明实施例的具体应用实施例,对本发明所述方法做出更为详细的解释。
本发明提供了一种目标变量预测模型的生成方法,如图1所示,包括:
步骤s1、获取原始数据集;其中,所述原始数据集中含有多个自变量数据和一个因变量,预设个数的自变量数据以列的形式组成自变量数据矩阵,以所述自变量数据矩阵的每行数据作为一个样本数据。
本步骤中获取到的原始数据集可以根据所要生成的模型不同,获取不同领域的原始数据集,所述原始数据集中含有多个自变量数据和一个因变量,具体的,预设个数的自变量数据一列的形式组成自变量数据矩阵,将自变量数据矩阵作为预设神经网络模型的输入。自变量数据矩阵的每一行对应的一个因变量的值。所述自变量数据矩阵和因变量均为向量形式。
比如:若要生成的模型用于对收益率进行预测,则本次步骤中获取到的原始数据集是中国商品期货市场中,各个品种的主力连续合约的日频价量数据(包括每日的开盘价,收盘价,最高价和最低价,以及当日总成交量)。使用价量数据合成一批技术指标,如macd,cci,rsi,bop,atr作为自变量数据矩阵x,因变量y为日收益率。预测的目标是预测未来期货品种的收益率。
具体的,在进行训练过程中,还需要从原始数据集中划分出训练集和测试集,在实际使用阶段,还会划分出训练集和验证集,并在根据实时数据进行预测。
步骤s2、根据所述自变量数据矩阵得到自变量随机矩阵。
当上述步骤中获取到原始数据集中的各个自变量数据以后,对自变量数据矩阵中的每一列所在排序进行随机调整(比如:随机移动每个列因变量的排列顺序),生成调整后的与各个自变量数据对应的自变量随机矩阵。
对自变量数据矩阵的每一列做洗牌操作(shuffle),即对于任意一个自变量随机调整样本的顺序,这样对所有列都如此操作后,获得新自变量数据矩阵s,也即是自变量随机矩阵。
步骤s3、将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与所述自变量数据矩阵对应的权重向量;其中,所述权重向量为每个样本数据对应的权重组成的权重向量。
本步骤中,利用预设的对抗网络模型,基于自变量数据矩阵和自变量随机矩阵生成权重向量。具体的,将所述自变量数据矩阵和自变量随机矩阵输入至预设的对抗网络模型,根据预设的对抗网络模型的输出结果,对预设的对抗网络模型的损失函数的权重进行调整,并使用调整的损失函数进行损失值的计算,并根据计算出的损失值调整对抗网络模型的模型参数,重复将所述自变量数据矩阵和自变量随机矩阵输入至预设的对抗网络模型的步骤,直至基于预设的对抗网络模型得到自变量数据矩阵满足预设要求,将最终调整对抗网络模型的损失函数的权重对应的权重向量作为本步骤中所要得到的与自变量数据矩阵对应的权重向量,基于每个自变量数据均生成一个相对应的权重向量。
具体的,所述预设对抗网络模型包括生成模块和区分模块;
所述将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与各个自变量数据矩阵对应的权重向量的步骤包括:
将自变量数据矩阵和其对应的自变量随机矩阵纵向拼接,得到拼接出的训练数据矩阵;
利用所述训练数据矩阵对所述区分模块和生成模块进行多次迭代训练,得到所述权重向量。
在一种实施方式中,所述区分模块的损失函数为加权交叉熵损失函数。
进一步的,所述利用所述训练数据矩阵对所述区分模块和生成模块进行多次迭代训练,得到所述权重向量的步骤包括:
步骤s31、将所述训练数据矩阵输入至所述区分模块,得到所述区分模块输出的分类结果。
区分模块为一判别器,其用于识别输入其中的数据为生成器生成的还是为原始数据,因此本步骤中首先将所述训练数据矩阵输入至区分模块,区分模块输入的训练数据矩阵进行区分,识别是否为目标数据集中的数据,若为目标数据集中的数据,则输出1,判断为真实的数据,否则输入0,判断为生成模块生成的数据,因此分类结果为对输入的训练数据矩阵是否为目标数据集中的数据的判定结果。
步骤s32、利用所述分类结果和以所述预设初始权重向量对区分模块的损失函数进行加权,计算出所述预设对抗网络模型的初始总损失值。
本步骤中首先根据预设初始权重向量对区分模块的损失函数进行加权,再根据上述步骤s31中得到的分类结果,以及加权后后的区分模块,计算预设对抗网络模型第一次训练得到的初始总损失值,并根据初始总损失值调整所述预设对抗网络模型的模型参数。所述初始总损失值为训练数据矩阵中各个行数据对应的训练样本对应的损失值用所述预设初始权重向量加权之和,也即是:首先计算训练数据矩阵中各个行数据对应的训练样本对应的损失值,再分别计算各个损失值与预设初始权重向量的加权值,得到各个训练样本对应的损失值的加权损失值,最后将各个训练样本对应的加权损失值的和相加,得到初始总损失值。
步骤s33、将所述预设初始权重向量和各个样本数据对应的损失值输入至生成模块,得到所述生成模块输出的各个样本数据对应的更新权重向量。
将预设初始权重向量和各个样本数据对应的损失值输入至对抗网络模型的生成模块,得到生成模块输出的更新权重向量。
步骤s34、将所述训练数据矩阵输入至所述区分模块,得到所述区分模块输出的更新后的分类结果。
再次将训练数据矩阵输入至区分模块,得到区分模块输出的更新后的分类结果,此次分类结果为对模型参数进行调整后,得到的新的分类结果。
步骤s35、根据分类结果和更新权重向量计算所述区分模块的损失值,并根据损失值调整所述更新权重向量,以及计算所述预设对抗网络模型的更新总损失值。
根据更新后的分类结果和更新的权重向量计算区分模块的损失值,并根据损失值和调整所述更新权重向量,以及计算所述预设对抗网络模型的更新总损失值。此处的更新总损失值的计算方法与上述步骤s31相同,更新总损失值为各个样本数据对应的更新损失值用更新权重向量加权后,计算的损失值之和。
步骤s36、重复将所述各个样本数据的损失值和所述更新权重向量输入至所述生成模块,得到所述生成模块输出的与自变量数据矩阵对应的迭代更新权重向量的步骤;直至所述预设对抗网络模型的更新总损失值满足预设要求,得到所述自变量数据矩阵对应的权重向量。
重复根据各个样本数据的损失值和更新权重向量输入至所述生成模块,得到迭代更新权重向量的步骤,以及根据更新权重向量计算模型总损失值的步骤,直至更新总损失值满足预设要求,得到最终的更新权重向量为所述自变量数据矩阵对应的权重向量。
步骤s4、利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型。
当上述步骤s3中利用对抗网络模型生成权重向量后,利用所述权重向量对待生成的网络模型的目标函数中对样本数据赋权,具体的,对损失函数进行加权,从而实现根据数据本身的分布学习出来权重训练出鲁棒性较高的目标预设模型。
进一步的,所述利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型的步骤包括:
将所述原始数据集输入至预设神经网络模型,得到预设神经网络模型输出的目标特征结果;
根据所述权重向量对所述预设神经网络模型的损失函数进行加权,并根据所述目标特征结果和加权后的损失函数计算出所述预设神经网络模型的损失值;
根据所述预设神经网络模型的损失值对所述预设神经网络模型的模型参数进行调整,重复将原始数据集输入至预设神经网络模型的步骤,直至训练得到目标网络模型。
在一种实施方式中,以期货领域为例,所述原始数据集中含有的自变量数据为由期货日频价量数据合成的价格指标数据,所述原始数据集中还含有因变量数据,所述因变量数据为日收益率,所述目标网络模型为预测期货收益率的收益预测模型。
下面以具体应用实施例为例,对本发明所述方法做进一步的解释。
1.首先获取数据集,明确学习任务。即获取自变量数据矩阵x,因变量y(向量形式,自变量数据矩阵的每一行对应一个因变量的值);
2.利用自变量矩阵,对自变量矩阵的每一列做洗牌操作(shuffle),即对于任意一个自变量随机调整样本的顺序,这样对所有列都如此操作后,获得新矩阵s;其中,以所述自变量数据矩阵的每行数据作为一个样本数据;新矩阵s即为自变量随机矩阵;
3.利用对抗学习方法,生成样本权重向量,使得自变量矩阵x被赋权后其总体的分布和新矩阵s较为接近;
关于权重向量:通过对每一个样本进行赋权来改变样本集合的整体分布。假设有n个样本,那么对第i个样本赋权w_i,那么所有权重合在一起就是一个长度为n的向量。
4.利用3中获取的权重向量,根据1中定义的学习任务,在机器学习算法的目标函数中对样本赋权,使得不同自变量之间由于选择性偏差以及confoundingvariable导致的伪关联性降低,因此能够训练得到具有鲁棒性的机器学习模型。
在因果分析框架下,因为样本选择性偏差(biasselection)以及混淆变量(confoundingvariable)的存在,观测数据分布和全局数据分布会有一定的偏差。在观测数据中,自变量之间会产生非稳定的关联性,而这与全局的数据分布特征不一致,使用这些观测数据建立的预测模型在使用时,面对分布变化的数据集,预测效果会很不稳定。本实施例希望能在一些场景下解决上述问题。
在步骤2中,由于使用shuffle这一操作,实际上是为了获取一个理想的自变量矩阵,不论原始的自变量矩阵分布如何,自变量之间存在怎样的关联关系,对每一列(即每一个自变量)进行shuffle操作,最终得到的这个矩阵s就是理想的矩阵,s中的每一个自变量的边缘分布并没有变化,而自变量之间的关联关系则完全消失了。
在步骤3中,利用上一步获得的数据矩阵s,生成调整x自变量矩阵分布的权重向量w。在此步骤中,将应用对抗学习(adversariallearning)的方法,对抗学习简要来说是给定了目标数据集,由两个模型来不断博弈。其中一个是生成模块,目标是产生类似于目标数据集的数据;另外一个是区分模块,来区分输入数据是来自于目标数据集,还是由生成模块生成。最终模型收敛时,生成模块可以产生非常接近于目标数据集的数据。
本实施例提供的方法利用对抗学习生成了权重向量w,使得自变量数据矩阵x经过权重向量w调整后的矩阵xw的分布与理想的自变量数据矩阵s的分布非常接近,进而达到了阻断自变量之间关联性的目的。自变量之间的关联性被阻断了,那么选择性偏差和混淆变量(confoundingvariable)的影响就会减弱,以经过权重调整的矩阵xw训练出的模型将会更加稳定。
利用对抗学习方法计算权重向量w的具体方法如下。设共有n个样本,p个自变量,即矩阵x是n*p维的,首先标记所有的真实样本,即自变量矩阵x为0,所有的来自理想数据矩阵s的样本为1。区分模块为d(x),权重向量为w=(w1,w2,…wn),初始值将被设为等权重。结合图2所示,所述区分模块d(x)使用一个两层的各有10个神经元的神经网络,其结构为包括:输入层100、第一隐藏层200、第二隐藏层300和输出层400。d(x)的输入是s和x纵向拼接而成的数据矩阵,监督用的label是0,1构成的向量,来自s的样本都被标记成1,来自x的样本都被标记成0。
在一种实施方式中,总的损失函数使用交叉熵并用w进行加权,其函数式为:
这里的生成模块是一种指数梯度下降的算法,它将在迭代过程中调整权重w。具体的迭代算法为
区分模块的损失函数定义为l(t),l一般可使用二分类器常用损失函数,比如交叉熵。
在优化过程中的总的损失函数为
其中si和xi分别为第i个样本。
优化目标为
其中
在步骤4中,在训练模型过程中,利用上一步得到的权重向量对自变量矩阵加权,具体的操作体现在损失函数上进行加权。比如回归模型的原损失函数为
与常规的机器学习方法相比,本实施例提供的方法从因果推断的分析框架出发,而不是仅仅在相关性的基础上建模。从实验结果上看,本实施例提供的方法训练得到的模型在数据集分布发生改变的情况下,相比常规机器学习方法保持了更好的稳定性。
与其他以增强模型鲁棒性的算法相比,本实施例所提供的目标变量预测模型的生成方法不需要对测试数据集的分布或者统计特征有任何先验的信息,而一般其他方法需要有这方面的信息或者在假设中进行相应设定。实际中,预测数据一般是不知道其具体分布和统计特性的,因此,本实施例的方法拥有更为广泛和更为实际的使用价值。
与其他使用倾向性得分(propensityscore)或者重置权重(reweighting)的机器学习方法相比,本实施例提供的方法不需要指定样本权重(weights)的具体形式或计算方式,而是直接使用对抗学习的方式,根据数据本身的分布学习出来样本权重;而一般的使用倾向性得分和重置权重的方法需要指定权重或得分的具体形式。指定了具体形式的缺点在于,这些特定的形式对应了适用的统计学特征,比如线性关系等,一旦实际的数据不符合这些特征,那么这些方法的效果就会下降,而本实施例提供的方法根据数据自身来学习得出样本权重,具有自适应的特性,因此本实施例提供的方法对具有不同统计特性的数据有更广泛的适用性。
本实施例还提供了一种目标变量预测模型的生成系统,如图3所示,包括:
数据集获取模块310,用于获取原始数据集;其中,所述原始数据集中含有多个自变量数据和一个因变量,预设个数的自变量数据以列的形式组成自变量数据矩阵,以所述自变量数据矩阵的每行数据作为一个样本数据;其功能如步骤s1所述。
随机处理模块320,用于根据所述自变量数据矩阵得到自变量随机矩阵;其功能如步骤s2所述;
权重更新模块330,用于将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与所述自变量数据矩阵对应的权重向量;其中,所述权重向量为每个样本数据对应的权重组成的权重向量,其功能如步骤s3所述;
模型训练模块340,用于利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型,其功能如步骤s4所述。
在上述目标变量预测模型的生成方法的基础上,本实施例还提供了一种目标变量预测模型的生成装置,其中,包括处理器、与处理器通信连接的存储介质,所述存储介质适于存储多条指令;所述处理器适于调用所述存储介质中的指令,以执行实现所述的目标变量预测模型的生成方法的步骤。
具体的,如图4所示,所述电子设备包括至少一个处理器(processor)20以及存储器(memory)22,还可以包括显示屏21、通信接口(communicationsinterface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器30通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,本实施例还公开了一种计算机可读存储介质,其中,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的目标变量预测模型的生成方法的步骤。
上述存储介质以及终端中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
本发明提出了一种目标变量预测模型的生成方法、系统及装置,获取原始数据集;根据各个自变量数据对应的自变量数据矩阵得到自变量随机矩阵;将所述自变量数据矩阵和所述自变量随机矩阵输入至预设对抗网络模型,利用所述预设对抗网络模型,得到与各个自变量数据矩阵对应的权重向量;利用所述原始数据集和利用所述权重向量对待训练的预设神经网络模型进行训练和模型参数调整,直至得到训练完成的目标变量预测模型。本发明实施例利用预设对抗网络模型根据原始数据集生成权重向量,并使用权重向量对预设网络模型的损失函数进行训练得到目标变量预测模型,而目标变量预测模型即使在训练数据集的数据分布发生了非常大变化的情况下,依然可以保持较好的预测能力。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。