CN116304607A - 用于使用深度强化学习进行预测建模的自动特征工程 - Google Patents
用于使用深度强化学习进行预测建模的自动特征工程 Download PDFInfo
- Publication number
- CN116304607A CN116304607A CN202210982159.2A CN202210982159A CN116304607A CN 116304607 A CN116304607 A CN 116304607A CN 202210982159 A CN202210982159 A CN 202210982159A CN 116304607 A CN116304607 A CN 116304607A
- Authority
- CN
- China
- Prior art keywords
- features
- neural network
- data set
- feature
- action
- 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.)
- Pending
Links
- 230000002787 reinforcement Effects 0.000 title claims abstract description 17
- 230000009471 action Effects 0.000 claims abstract description 87
- 238000013528 artificial neural network Methods 0.000 claims abstract description 75
- 238000000034 method Methods 0.000 claims abstract description 69
- 230000009466 transformation Effects 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 239000003795 chemical substances by application Substances 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 9
- 230000001131 transforming effect Effects 0.000 claims description 8
- 239000013598 vector Substances 0.000 claims description 7
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 11
- 230000007704 transition Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000010923 batch production Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
-
- 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
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
公开了用于为预测建模在数据集上执行特征工程的系统、方法和计算机可读介质。数据集可以包括用于预测模型的多个特征。可以将数据集提供给神经网络,以确定对预测模型影响最大的特征和对预测模型没有正面影响的特征。深度强化学习代理可以选择在数据集上执行的动作。可以将动作应用于数据集,以生成新的特征并获得经变换的数据集。可以从数据集中移除对预测模型没有正面影响的特征。可以为经变换的数据集计算奖励。可以将经变换的数据集和奖励传递到神经网络,以进行进一步迭代和对预测模型的特征的优化。
Description
相关申请的交叉引用
本专利申请要求获得于2021年12月20日提交的、题为“用于使用深度强化学习进行预测建模的自动特征工程”的在先提交的第63/291,789美国临时专利申请(‘789专利)的所有共同主题方面的权益。在本文中,所标识的‘789临时专利申请通过引用整体并入本申请。
技术领域
本教导的实施例涉及用于预测建模的特征工程。具体地,本教导的实施例涉及利用深度强化学习以改进预测模型的自动特征工程。
背景技术
在预测建模中,将变量输入到经学习的预测模型中,以预测与输入变量关联的系统的结果。通常,将所有的变量输入到预测模型中,即使不是所有的变量影响预测模型的结果。在一些情况下,可能将多余并对模型的结果有负面影响的变量输入到模型中。特征工程可以用于将输入变量的范围缩小到对预测模型的结果影响最大的缩减的特征集合。
在典型的特征工程系统中,利用各种方法来生成实现对预测模型结果影响较高的缩减的输入变量集合。例如,可以使用扩展还原法(expansion-reduction method)和演进中心法(evolution-centric method)。这些方法有几个缺点。一些模型基于具有特征节点和数据集节点的异构变换图。随着在分层结构的图中,特征的数量呈指数级增长,同时计算成本也会增长,这些算法遇到爆炸问题。此外,动作空间局限于算术函数,算术函数是原始函数,并且不被考虑为分类特征。此外,一些模型在Q学习(Q-learning)上利用线性近似,这会限制自动特征工程的能力。此外,通常会忽略特征之间的差,从而将变换运算符应用于所有特征。一般来说,目前的算法不支持组合空间,效率不高,并且不支持变换。这导致非常昂贵的计算,特别是对于大数据集。
所需要的是用于特征工程的系统、程序和方法,其通过优化选择对预测模型结果影响最大的特征,并减少输入维度以减少预测模型的处理来改进预测建模。
发明内容
本公开的实施例通过提供用于自动执行特征工程以生成包括对预测模型的结果影响最大的特征的缩减的特征集的程序、系统和方法来解决上述问题。可以将深度强化学习应用于选择基于奖励函数来使累积奖励最大化的动作。
实施例涉及一种为预测建模在数据集上执行特征工程的方法。该方法包括:接收数据集,该数据集包括多个特征;响应于接收数据集,将数据集输入到神经网络中;从神经网络接收对多个特征中的至少一个特征执行的动作的选择;响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;基于动作来计算神经网络的奖励;确定是否达到神经网络的预算(budget);响应于确定达到预算,将多个特征存储在最终模型中;以及,响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
在一些方面上,本文描述的技术涉及存储计算机可执行指令的一个或多个非暂时性计算机可读介质,计算机可执行指令在由处理器执行时,执行一种为预测建模在数据集上执行特征工程的方法,该方法包括:接收数据集,该数据集包括多个特征;响应于接收数据集,将数据集输入到神经网络中;从神经网络接收对多个特征中的至少一个特征执行的动作的选择;响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;基于动作来计算神经网络的奖励;确定是否达到神经网络的预算;响应于确定达到预算,将多个特征存储在最终模型中;以及,响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
在一些方面上,本文描述的技术涉及一种介质,其中,多个特征中的每个特征包括从以下各项选择的至少一个特点:平均即时奖励、使用变换的次数、剩余预算、数值特征的数量、日期时间特征或字串特征。在一些实施例中,特征可以是任何类型的。每个特征可以由包括所有特点的向量表示,所有特点包括将特征映射在神经网络的输入层中的统计特点。如果模型通过算术方法来生成新的特征,则可以通过向量来将新计算的特征包括在输入层中。该方法可以被应用于实际数据集的所有非分类特征。对于分类特征,可以使用独热编码(one-hot encoding)。可以将所有生成的向量合并为一个向量,以在下一次迭代中作为神经网络的输入层使用。
在一些方面上,本文描述的技术涉及一种介质,其中,预算包括时间预算或处理预算之一。
在一些方面上,本文描述的技术涉及一种介质,其中,神经网络被配置为:对于应用于至少一个特征的多个动作中的每一个,计算中间奖励分数。
在一些方面上,本文描述的技术涉及一种介质,其中,所选择的动作包括多个动作中的具有最优中间奖励分数的动作。
在一些方面上,本文描述的技术涉及一种介质,其中,计算奖励包括:确定奖励和来自先前神经网络迭代的先前奖励之间的差。
在一些方面上,本文描述的技术涉及一种介质,其中,该方法还包括:确定多个特征中的特征不会改进预测模型;以及,响应于确定该特征不改进预测模型,从数据集中移除该特征。
在一些方面上,本文描述的技术涉及一种为预测建模在数据集上执行特征工程的方法,该方法包括:接收数据集,该数据集包括多个特征;响应于接收数据集,将数据集输入到神经网络中;从神经网络接收对多个特征中的至少一个特征执行的动作的选择;响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;基于动作来计算神经网络的奖励;确定是否达到神经网络的预算;响应于确定达到预算,将多个特征存储在最终模型中;以及,响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
在一些方面上,本文描述的技术涉及一种方法,其中,该方法还包括:确定神经网络的策略,该策略定义动作与数据集的映射。
在一些方面上,本文描述的技术涉及一种方法,其中,该方法还包括:响应于计算奖励,更新策略。
在一些方面上,本文描述的技术涉及一种方法,其中,该方法还包括:使用独热编码对多个特征进行编码。
在一些方面上,本文描述的技术涉及一种方法,其中,该方法还包括:接收额外数据集;以及,在额外数据集上训练神经网络。
在一些方面上,本文描述的技术涉及一种方法,其中,在额外数据集上训练神经网络包括:在额外数据集上应用ε-贪婪(epsilon-greedy)算法;将事务存储到重放(replay)缓冲区中;以及,使用小批量梯度下降更新神经网络的至少一个参数。
在一些方面上,本文描述的技术涉及一种方法,其中,该方法还包括:基于奖励来确定可以从数据集中移除特征;以及,响应于确定可以移除该特征,从数据集中移除该特征。
在一些方面上,本文描述的技术涉及一种用于为预测建模在数据集上执行特征工程的系统,该系统包括:处理器;数据存储;和存储计算机可执行指令的一个或多个非暂时性计算机可读介质,计算机可执行指令在由处理器执行时,执行一种为预测建模在数据集上执行特征工程的方法,该方法包括:接收数据集,该数据集包括多个特征;响应于接收数据集,将数据集输入到神经网络中;从神经网络接收对多个特征中的至少一个特征执行的动作的选择;响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;基于动作来计算神经网络的奖励;确定是否达到神经网络的预算;响应于确定达到预算,将多个特征存储在最终模型中;以及,响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
在一些方面上,本文描述的技术涉及一种系统,其中,动作包括聚合函数。
在一些方面上,本文描述的技术涉及一种系统,其中,多个特征中的特征包括至少一个特点,其中,所述至少一个特点包括至少一个统计测度(measure)。该特征可以不包含统计测度。在将状态映射到神经网络时,可以为每个特征计算统计测度。
在一些方面上,本文描述的技术涉及一种系统,其中,所选择的动作包括从数据集中移除至少一个特征。
在一些方面上,本文描述的技术涉及一种系统,其中,该动作由与神经网络关联的深度强化学习代理选择。
在一些方面上,本文描述的技术涉及一种系统,其中,神经网络被配置为计算应用于至少一个特征的多个动作中的每一个的中间奖励分数,并且其中,所选择的动作包括多个动作中的具有最优中间奖励分数的动作。
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的构思的选择。本概述不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在用来限制所要求保护的主题的范围。从以下对实施例的详细描述和附图中,本公开的其他方面和优点将变得显而易见。
附图说明
下面,参考所附的附图来详细描述本公开的实施例,其中:
图1A描绘用于使用深度强化学习进行自动特征工程的示例性系统;
图1B描绘用于一些实施例的自动特征工程的示例性变换图;
图2描绘自动特征工程的实施例的比较的示例性使用案例;
图3描绘使用深度强化学习进行自动特征工程的示例性过程;以及
图4描绘用于本公开的实施例的硬件平台的示例性实施例。
附图不将本教导限制于本文公开和描述的具体实施例。附图不一定是按比例绘制的,而是强调清楚地示出本教导的原理。
具体实施方式
以下详细描述参考了示出可实施本教导的具体实施例的附图。这些实施例旨在充分详细地描述本教导的各方面,以使本领域技术人员能够实施本教导。在不脱离本教导的范围的情况下,可以利用其他实施例,并且可以进行改变。因此,以下详细描述不被理解为具有限制性意义。本教导的范围仅由所附的权利要求以及这些权利要求赋予的等同物的全部范围来限定。
在本描述中,对“一个实施例”、“一实施例”或“(多个)实施例”的引用是指所引用的一个或多个特征被包括在本技术的至少一个实施例中。本描述中的对“一个实施例”、“一实施例”或“多个实施例”的单独引用不一定是指同一实施例,并且也不是相互排斥的,除非如此说明和/或除非本领域技术人员从描述中容易地看出。例如,在一个实施例中描述的特征、结构、动作等也可以被包括在其他实施例中,但是不是必须被包括在其中。因此,技术可以包括本文描述的实施例的各种组合和/或整合。
一般来说,预测模型包括两个阶段;训练阶段和推理阶段。训练阶段通常利用已知数据,并且训练模型,以基于已知数据来预测过程的结果。当没有已知数据时,可以实现其他方法,诸如例如深度强化学习。深度强化学习可以提供改进预测模型的状态变换的奖励。可以使累积奖励最大化,从而提供使预测模型的改进最大化的特征的集合。在一些实施例中,可以处理特征工程系统的输入状态,以确定输入到预测模型中的特征。生成这些特征可以减少由预测模型处理的总变量,从而在预测模型的推理阶段期间节省时间和处理能力。当训练阶段完成后,可以将包括最终特征的最终模型投入使用,以处理新数据。
考虑预测建模问题的示例性实施例,其由以下各项组成:具有特征F={f1,…,fn}的数据集D、目标向量y、变换集合T={t1,…,tk}、适用学习算法L(例如,线性回归等)、以及性能(performance)测度m(例如,F1分数等)。使用采用学习算法L的性能测度m的预测模型在给定数据上的交叉验证性能(cross-validation performance)可以被定义为(在下文中,也简称为P(D))。然后,特征工程问题可以被表述为寻找特征集合,F*=F1∪F2,其中,/>并且/>以便对于给定的学习算法L和性能测度m,使建模准确度最大化,其中,F表示原始数据集,并且FT表示向其应用变换的原始数据集。特征工程问题如等式1所示。
因此,对于具有n个特征和k个一元(unary)变换的数据集,可以构建O(k x n)个新特征。如果应用k个二进制变换,则可以有个特征,其中,/>是n个特征的2次置换(2-permutation)。因此,对于固定的变换集合,为了精确的解,新的特征及其组合的数量会呈指数级增长。因此,通过训练进行枚举和试验在计算上是不可行的,并且需要如本文的实施例中所讨论的用于自动特征工程的系统和方法。
图1A描绘使用深度强化学习来自动化特征工程的过程的示例性特征工程系统100。可以将系统的状态和奖励输入到深度强化学习(DRL)代理中。在一些实施例中,特征工程系统100使累积奖励最大化。使累积奖励最大化揭示对预测结果影响最大的那些特征,同时减少在预测模型的推理阶段期间的总处理量。
在一些实施例中,强化学习代理(例如,DRL代理)可以用马尔柯夫决策过程(Markovian Decision Process,MDP)的框架来描述,该框架提供在结果部分随机和部分受决策者(即,DRL代理)控制时进行建模决策的数学框架。MDP框架可以包括:有限或无限的状态集合,S={si};有限或无限的动作集合,A={aj};状态转换函数T(s,a,s′),其指定在给定当前状态s和动作a的情况下的下一个状态s′;奖励函数R(s,a,s′),其指定给予强化学习代理以在状态s中选择动作a并转换到新的状态s′的奖励;和策略π∶S→A,其定义从状态到动作的映射。状态可以对应于提供给DRL代理的数据集。如下面进一步详细讨论的,DRL代理可以试图通过使累积奖励最大化来选择动作,累积奖励被定义为:
在等式2中,Q*表示在每个时间步进(time step)的由系数γ扣减(discount)的奖励et的最大总和。Q函数可以通过使用多层神经网络102来用DRL代理导出,并且可以被参数化为Q(s,a;θt),其中,θi是在迭代i的神经网络的参数(即,权重)。为了导出Q函数,可以将Q学习更新应用在从数据集D中均匀提取的小批量经验MB={(s,a,r,s′)~U(D)}上。因此,如下面的等式3所示,可以将在迭代i的Q学习更新定义为多层神经网络102的损失函数:
在一些实施例中,状态、动作和奖励函数可以由用户设置。奖励可以是如下函数:基于如上面的示例描述的从当前输入状态移动到新的输出状态的动作来奖励算法。在一些实施例中,可以为每个动作计算奖励,并且可以使累积奖励最大化。在一些实施例中,如图1A所示,可以在多层神经网络102上使奖励函数最大化,并且可以基于在特征生成后从第一状态和第二状态的预测模型结果之间的差来提供奖励。可以为每个动作计算并提供奖励。DRL代理可以执行来自可能动作的集合中的动作,并且可以向每个动作提供由奖励函数计算的中间奖励。如此,将输入状态或者单个输入变量或特征移动到新状态的每个动作具有关联的计算奖励。可以将多层神经网络102实现为计算从当前或输入的状态到新或输出状态的状态转换上的动作。在一些实施例中,进入多层神经网络102的输入层可以是特征的任何统计测度。
在一些实施例中,多层神经网络102的输入层可以是所有特征的计算特点。这些特点可以包括如上面的实施例所述的每个特征的统计测度和可能影响探索的其他因素。例如,如果我们在数据集中有3个特征(A,B,C),并且模型选择动作“平方”,则新的数据集可以是(A,B,C,A2,B2,C2)。在这种情况下,输入层可以是(平均即时奖励,使用函数“平方”的次数,剩余预算,数值特征的数量,新数据集的日期时间特征和字串特征,std(A),std(B),std(C),std(A2),std(B2),std(C2),Avg(A),Avg(B),Avg(C),Avg(A2),Avg(B2),偏斜(skew)...)。
在一些实施例中,在多层神经网络102的输入层,用定义数据集的结构和属性的特点以及在每个步骤影响探索选择的因素来映射状态。示例性因素可以包括变换的平均即时奖励、使用变换的次数、剩余预算、数值特征的数量、日期时间特征和字串特征,还有各种统计测度(例如,标准差、偏斜度、中数(mean)、频率等)。在示例性实施例中,独热编码可以用于对分类特征进行编码,然后,可以使用Z分数(Z-score)技术对所有值进行标准化。
可以估计对多个输入变量中的每个变量进行的多个动作中的每个动作的奖励。在一些实施例中,可以使用奖励函数来计算奖励。在通过多层神经网络102来计算Q值后,可以应用epsilon贪婪算法来选择具有最大奖励的最优动作,或者基于用作输入的特定概率来选择随机动作。在一些实施例中,可以基于由“动作”引起的状态转换,使“奖励”的累积总和最大化。
多层神经网络102可以在将确定的动作传递给学习环境104之前,近似最大累积奖励。变换图106可以提供基于作为多层神经网络102的输出所接收的动作的变换。在从先前状态变换到新的状态后,可以在计算奖励组件108处计算累积奖励。然后,可以将新的状态移动到分析预算的决策110。在一些实施例中,预算可以是任何时间预算、处理预算或与分析关联的任何其他关键性能指标。基于预算,可以将状态输出作为在最终模型112的最终特征模型,或者可以将状态作为新的输入状态重新引入多层神经网络102。该过程可以迭代,直到达到预算。
在一些实施例中,可以在真实世界的数据集上执行特征工程,以确定对改进在这些数据集上的预测模型影响最高的特征。此外,可以在每个步骤测试预测模型,以确定输入特征是否改进预测模型。该过程可以是迭代式的,从而连续返回并处理输出状态以获得最优输出状态,同时移除无助于提高由奖励函数确定的预测模型的性能的变量。如此,可以移除低性能的变量和多余的变量,以改进预测模型,同时减少处理时间和功率(power)。
在一些实施例中,可以在特征工程期间管理成本与改进之间的权衡。可以生成提高预测模型的预测能力(power)的特征;然而,如果存在太多的特征,则在推理阶段中,预测模型可能具有许多可用特征,但是处理时间是不可管理的。因此,可以减少特征以减少处理时间,从而提供更有效的预测建模,同时仍然保持优化的预测能力。特征工程系统100可以提供优化的特征,使得预测模型具有高预测能力,同时保持可管理的处理时间。
在一些实施例中,可以在多个数据集上训练特征工程系统100,从而不需要在每个新数据集上训练特征工程系统。在多个数据集上训练特征工程系统可以提供稳健的特征,其可以用于在不重新训练的情况下,在多个用例上同时地改进预测模型,而且减少处理。在多个数据集上训练特征工程系统100可以包括:在多个数据集中的数据集上应用ε-贪婪算法,将事务存储到重放缓冲区中,并且使用小批量梯度下降来更新多层神经网络102的参数。该过程可以迭代,直到达到收敛。
图1B描绘将有助于说明本文描述的各种实施例的操作的示例变换图106。变换图106可以是有向无环图(DAG)。变换图106可以包括批处理、新特征生成和评估。批处理可以按变换执行,使得在每个步骤将变换应用于数据集,从而生成新特征集合。批处理过程可以递归地执行,以形成DAG。
例如,如图1B所示,将初始变换批(即,总和、对数和平方)应用于根节点数据集D0,生成三个新数据集D1、D2和D3。随后,将数据集D1、D2和D3进行变换,以获得如图所示的数据集D4至D11。类似地,分别将数据集D8和D11进行变换,以获得数据集D12和D13。变换图106的边缘的方向可以表示变换的方向。例如,从D1指向D4的边缘指示数据集D4是通过对数据集D1应用平方变换而形成的。每个子数据集D1至D13可以包括与根节点数据集D0相同的目标和行数。总和可以表示两个数据集Di和Dj的联合(union),其中,i≠j。
在变换图106的每个步骤i中,状态si∈S可以包括在添加i节点后的变换图106以及剩余预算因此,例如,在步骤5的变换图106包括节点D0至D5和剩余预算在步骤i的动作at∈A可以是用于特征生成的在一个或多个特征{f}上应用变换t∈T以得出新的特征的动作,或用于通过强化学习进行特征选择的可从数据集Di=<Fi,y>中放弃一个或多个特征{f}的动作之一。此外,策略π∶S→A可以确定在给定状态下采取哪种动作,如此,在步骤i的变换图106中的该特征工程问题的奖励rt为:
图2描绘利用特征工程输出模型来改进预测模型的用例的示例性输出和比较,并且一般可以用附图标记200来引用。在此,示例性预测模型被用来在有和没有特征工程模型的情况下,预测亚马逊(AMAZON)产品的正面和负面的评论。示例性数据集包括客户评论以及关于客户的信息,诸如例如群体统计信息。这里的问题是将评论的分类预测为正面或负面。将正面和负面的预测与评论的星级进行比较,以确定预测质量。
在该示例性实施例中,由预测模型预测的每次迭代的预测质量是已知的。可以基于预测结果和每次迭代的预测结果的改变,将奖励应用于每个特征。如此,可以向提供最优预测结果的特征赋予最高奖励。当使累积奖励最大化时,将最优特征用作下一次迭代的输入或作为最终模型(如果执行最终迭代)。在一些实施例中,奖励可以是二进制的,诸如例如,如果特征改进预测,则为正,并且如果特征没有改进预测,则为负。
在图2描绘的示例性使用案例中,表格包括数据源、问题类型(例如,“C”分类或“R”回归)、行、采用特征工程的特征的数量、没有特征生成的特征的数量、以及在特征选择后的特征的数量。可以看出,没有特征工程的特征的数量明显高于在特征工程后的特征的数量。这减少处理时间,并且提高预测模型的效率。
此外,预测模型被显示为通过使用特征工程模型而具有改进的预测。图2也显示了结果。基础域显示没有特征工程的测试的预测结果的测度,并且DRL显示采用预测工程的预测结果的测度。扩展还原法显示目前使用的生成大量特征的典型方法的预测能力。可以将特征选择应用于扩展还原技术;然而,与该过程关联的时间成本和处理成本是很高的。随机字段显示应用随机的变换方法生成新数据集的结果,并且特征工具(Featuretools)字段显示应用特征工具(Featuretools)软件工具用于特征工程的结果。可以看出,采用DRL的预测模型提供比所测试的所有其他预测模型更强大的预测能力,同时还减少特征的数量。因此,与DRL特征工程模型关联的推理阶段成本可以减少,同时提高预测模型的预测能力。
图3描绘提高预测模型的预测能力并同时减少与预测模型关联的处理成本的用于预测模型的自动FE的示例性方法,其大体上由标记300表示。在步骤302中,将状态输入到如上面的实施例所述的多层神经网络102中。该状态可包括特征的特点,使得多层神经网络102可以利用特点进行处理。输入状态可以是特征工程系统100在连续迭代上处理的输出状态。
在步骤304中,可以选择动作。可以为每个特征选择动作,从而可以执行动作以导致对预测模型有积极或消极的影响的特征生成,或者在一些情况下,不影响预测。一些动作生成不改进预测模型的特征。在一些实施例中,动作可能不限于基本运算符和算术函数。动作也可以利用聚合函数来在上下文中计算聚合值(在一些实施例中,其可能是基于时间的(例如,时间=今天的总和(收入)与时间=昨天的总和(收入)相比)。然后,可以计算比率。在另一示例性实施例中,与聚合结合的变换是枢轴(pivot)形的(例如,时间=昨天、类别=智能电话的总和(收入))。对于低基数分类变量,枢轴形可能是必要或期望的。可以从用于进一步处理的状态中移除或从最终模型中移除不改进预测模型的特征。
在步骤306中,可以实施如上面实施例所述的将状态从当前状态变换到下一个状态的动作。在一些实施例中,变换可以强制特征选择。如上所述,可以基于性能来减少所生成的特征的总数量。示例性变换可以包括应用在数值数据上的算术和基本函数、在时间上下文中计算聚合值的时间聚合函数、用于分类特征的独热编码、以及可视为克服组合空间(降维)的变换的特征选择。
在步骤308中,计算奖励以确定采用新特征生成的状态转换是否改进预测模型的预测。可以基于预测结果和每次迭代的预测结果的改变,将奖励应用于每个特征。如此,可以向提供最优预测结果的特征赋予最高奖励。当使累积奖励最大化时,将最优特征用作下一次迭代的输入或用作最终模型(如果执行最终迭代)。
在步骤310中,如上面实施例所述地分析预算。如果还要执行更多的迭代,则将当前状态反馈到多层神经网络102中。如果达到预算,则迭代完成了,并且在步骤312中,将所生成的特征存储为最终模型。
转到图4,描绘了可形成本公开的特定实施例的一个元素的示例性硬件平台。计算机402可以是台式计算机、膝上型计算机、服务器计算机或任何其他形状的通用或专用的计算设备。为说明起见,用于几个组件与计算机402来一起进行描绘。在一些实施例中,可能以不同方式布置特定组件,或者不存在特定组件。此外,可以存在其他组件。包括在计算机402中的是系统总线404,由此计算机402的其他组件可以彼此通信。在特定实施例中,可能存在可直接彼此通信的多个总线或组件。连接到系统总线404的是中央处理单元(CPU)406。附接到系统总线404的还有一个或多个随机存取存储器(RAM)模块408。附接到系统总线404的还有图形卡410。在一些实施例中,显卡410可能不是物理上独立的卡,而是可以被集成到主板或CPU 406中。在一些实施例中,图形卡410具有可用于图形处理或用于通用计算(GPGPU)的单独的图形处理单元(GPU)412。图形卡410上还有GPU存储器414。(直接或间接)连接到图形卡410的是用于用户交互的显示器416。在一些实施例中,不存在显示器,而在其他实施例中,将显示器集成到计算机402中。类似地,将外围设备(诸如键盘418和鼠标420)连接到系统总线404。与显示器416一样,可以将这些外围设备集成到计算机402中,或者可以不存在这些外围设备。连接到系统总线404的还有本地存储装置422,其可以是任何形式的计算机可读介质,并且可以被在安装在计算机402的内部中,或在外部可移动地附接。
计算机可读介质包括易失性和非易失性的介质、可移动和不可移动的介质、以及考虑到可由数据库读取的介质。例如,计算机可读介质包括(但不限于)RAM、ROM、EEPROM、闪存存储器或其他存储器技术、CD-ROM、数字多功能光盘(DVD)、全息介质或其他光盘存储装置、磁带盒、磁带、磁盘存储装置和其他磁性存储设备。这些技术可以临时或永久地存储数据。然而,除非另有明确规定,否则术语“计算机可读介质”不应被理解为包括物理但短暂的信号传输形式,诸如无线电广播、通过电线的电信号或通过光缆的光脉冲。存储信息的示例包括计算机可使用指令、数据结构、程序模块和其他数据表示法。
最后,网络接口卡(NIC)424也附接到系统总线404,并且允许计算机402在网络(诸如本地网络426)上进行通信。NIC 424可以是本领域已知的任何形式的网络接口,诸如以太网、ATM、光纤、蓝牙或Wi-Fi(即,IEEE802.11系列标准)。NIC 424将计算机402连接到本地网络426,本地网络426还可以包括一个或多个其他计算机(诸如计算机428)和网络存储装置(诸如数据存储430)。一般来说,数据存储(诸如数据存储430)可以是可按需从中存储和检索信息的任何存储库。数据存储的示例包括关系或面向对象的数据库、电子表格、文件系统、平面文件、目录服务(诸如LDAP和活动目录(Active Directory))或电子邮件存储系统。数据存储可以经由复杂API(诸如例如结构化查询语言)、简单API(仅提供读取、写入和查找操作)、或介于两者之间的任何复杂程度来访问。此外,一些数据存储可以为存储在其中的数据集提供管理功能,诸如备份或版本管理。数据存储可以在单个计算机(诸如计算机428)的本地,可在本地网络(诸如本地网络426)上访问,或可在互联网432上远程访问。本地网络426进而连接到互联网432,互联网432连接许多网络(诸如本地网络426、远程网络434或直接附接的计算机(诸如计算机436))。在一些实施例中,计算机402本身可以直接连接到互联网432。在一些实施例中,互联网432连接到一个或多个物联网(IoT)设备440。
尽管已经参考附图所示的实施例来描述本公开,但是应当注意,在不脱离权利要求阐述的本公开的范围的情况下,可以采用等同物,并且在此进行替换。
在描述本公开的各种实施例后,声称为新颖并期望受专利法保护的内容包括所附的内容。
Claims (20)
1.存储计算机可执行指令的一个或多个非暂时性计算机可读介质,当计算机可执行指令在由处理器执行时,执行一种为预测建模在数据集上执行特征工程的方法,所述方法包括:
接收数据集,所述数据集包括多个特征;
响应于接收数据集,通过将数据集变换为数值向量来将数据集输入到神经网络中;
从神经网络接收对多个特征中的至少一个特征执行的动作的选择;
响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;
基于动作来计算神经网络的奖励;
确定是否达到神经网络的预算;
响应于确定达到预算,将多个特征存储在最终模型中;以及
响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
2.根据权利要求1所述的介质,其中,多个特征中的每个特征由包括统计特点和从以下各项选择的至少一个特点的向量表示:平均即时奖励、使用变换的次数、剩余预算、数值特征的数量、日期时间特征或字串特征。
3.根据权利要求1所述的介质,其中,预算包括时间预算或处理预算之一。
4.根据权利要求1所述的介质,其中,通过预测模型在数据集上的性能和来自先前迭代的先前奖励之间的差来计算奖励。
5.根据权利要求1所述的介质,
其中,所选择的动作是多个动作之一,以及
其中,所选择的动作包括多个动作中的最优中间奖励分数或基于作为参数给出的概率的随机动作。
6.根据权利要求1所述的介质,其中,计算奖励包括:确定奖励和来自先前神经网络迭代的先前奖励之间的差。
7.根据权利要求1所述的介质,其中,所述方法还包括:
确定多个特征中的特征不改进预测模型;以及
响应于确定所述特征不改进预测模型,从数据集中移除所述特征。
8.一种为预测建模在数据集上执行特征工程的方法,所述方法包括:
接收数据集,所述数据集包括多个特征;
响应于接收数据集,将数据集输入到神经网络中;
从神经网络接收对多个特征中的至少一个特征执行的动作的选择;
响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;
基于动作来计算神经网络的奖励;
确定是否达到神经网络的预算;
响应于确定达到预算,将多个特征存储在最终模型中;以及
响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
9.根据权利要求8所述的方法,还包括:确定神经网络的策略,所述策略定义动作到数据集的映射。
10.根据权利要求9所述的方法,还包括:响应于计算奖励,更新策略。
11.根据权利要求8所述的方法,还包括:通过独热编码来将分类特征变换为数值特征,以及将数值特征映射到神经网络的输入层中。
12.根据权利要求8所述的方法,还包括:
接收额外数据集;以及
在额外数据集上训练神经网络。
13.根据权利要求12所述的方法,其中,在额外数据集上训练神经网络包括:
在额外数据集上应用ε-贪婪算法;
将事务存储到重放缓冲区中;以及
使用小批量梯度下降更新神经网络的至少一个参数。
14.根据权利要求8所述的方法,还包括:
基于奖励来确定能够从数据集中移除特征;以及
响应于确定能够移除所述特征,从数据集中移除所述特征。
15.一种用于为预测建模在数据集上执行特征工程的系统,所述系统包括:
处理器;
数据存储;和
存储计算机可执行指令的一个或多个非暂时性计算机可读介质,计算机可执行指令在由处理器执行时,执行一种为预测建模在数据集上执行特征工程的方法,所述方法包括:
接收数据集,所述数据集包括多个特征;
响应于接收数据集,将数据集输入到神经网络中;
从神经网络接收对多个特征中的至少一个特征执行的动作的选择;
响应于接收动作的选择,通过将动作应用于至少一个特征来变换数据集以获得经变换的数据集;
基于动作来计算神经网络的奖励;
确定是否达到神经网络的预算;
响应于确定达到预算,将多个特征存储在最终模型中;以及
响应于确定未达到预算,将经变换的数据集和奖励输入到神经网络中,以进行进一步迭代。
16.根据权利要求15所述的系统,其中,动作包括聚合函数。
17.根据权利要求15所述的系统,
其中,多个特征中的特征包括至少一个特点,以及
其中,计算机可执行指令还被执行为计算至少一个统计测度,以映射到神经网络中。
18.根据权利要求15所述的系统,其中,所选择的动作包括从数据集中移除至少一个特征。
19.根据权利要求15所述的系统,其中,动作由与神经网络关联的深度强化学习代理选择。
20.根据权利要求15所述的系统,
其中,神经网络被配置为计算应用于至少一个特征的多个动作中的每一个的中间奖励分数,以及
其中,所选择的动作包括多个动作中的具有最优中间奖励分数的动作。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163291789P | 2021-12-20 | 2021-12-20 | |
US63/291,789 | 2021-12-20 | ||
US17/694,288 | 2022-03-14 | ||
US17/694,288 US20230195842A1 (en) | 2021-12-20 | 2022-03-14 | Automated feature engineering for predictive modeling using deep reinforcement learning |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116304607A true CN116304607A (zh) | 2023-06-23 |
Family
ID=82703124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210982159.2A Pending CN116304607A (zh) | 2021-12-20 | 2022-08-16 | 用于使用深度强化学习进行预测建模的自动特征工程 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230195842A1 (zh) |
EP (1) | EP4198831A1 (zh) |
CN (1) | CN116304607A (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022056033A1 (en) * | 2020-09-09 | 2022-03-17 | DataRobot, Inc. | Automated feature engineering for machine learning models |
-
2022
- 2022-03-14 US US17/694,288 patent/US20230195842A1/en active Pending
- 2022-07-25 EP EP22186709.6A patent/EP4198831A1/en active Pending
- 2022-08-16 CN CN202210982159.2A patent/CN116304607A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4198831A1 (en) | 2023-06-21 |
US20230195842A1 (en) | 2023-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7399269B2 (ja) | 機械学習モデルにおいて動的外れ値偏り低減を実装するように構成されるコンピュータベースシステム、コンピュータコンポーネント及びコンピュータオブジェクト | |
US10846643B2 (en) | Method and system for predicting task completion of a time period based on task completion rates and data trend of prior time periods in view of attributes of tasks using machine learning models | |
US11875239B2 (en) | Managing missing values in datasets for machine learning models | |
US20190340533A1 (en) | Systems and methods for preparing data for use by machine learning algorithms | |
US11599740B2 (en) | Computer-based systems, computing components and computing objects configured to implement dynamic outlier bias reduction in machine learning models | |
US11366806B2 (en) | Automated feature generation for machine learning application | |
CN112270547A (zh) | 基于特征构造的金融风险评估方法、装置和电子设备 | |
WO2020208444A1 (en) | Fairness improvement through reinforcement learning | |
US20210303970A1 (en) | Processing data using multiple neural networks | |
US11704570B2 (en) | Learning device, learning system, and learning method | |
CN109313720A (zh) | 具有稀疏访问的外部存储器的增强神经网络 | |
WO2022011553A1 (en) | Feature interaction via edge search | |
WO2019208564A1 (ja) | ニューラルネットワーク学習装置、ニューラルネットワーク学習方法、プログラム | |
CN112243509A (zh) | 从异构源生成数据集用于机器学习的系统和方法 | |
US20230289634A1 (en) | Non-linear causal modeling based on encoded knowledge | |
Singh et al. | Feature selection and hyper-parameter tuning technique using neural network for stock market prediction | |
US9652722B1 (en) | Methods and systems for robust supervised machine learning | |
Jadli et al. | A Novel LSTM-GRU-Based Hybrid Approach for Electrical Products Demand Forecasting. | |
US20200160200A1 (en) | Method and System for Predictive Modeling of Geographic Income Distribution | |
CN116304607A (zh) | 用于使用深度强化学习进行预测建模的自动特征工程 | |
US11688113B1 (en) | Systems and methods for generating a single-index model tree | |
WO2022270163A1 (ja) | 計算機システム及び介入効果予測方法 | |
CN113962319A (zh) | 用于训练预测模型和预测数据的方法和装置 | |
CN117350391A (zh) | 量子芯片的几何参数确定方法、装置、设备以及存储介质 | |
CN114663154A (zh) | 模型训练、信息输出方法,装置,设备以及存储介质 |
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 |