一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于交互检测的矢量数据高阶特征最优变换方法与流程

2021-11-27 00:54:00 来源:中国专利 TAG:


1.本技术涉及特征工程技术领域,具体涉及一种基于交互检测的矢量数据高阶特征最优变换方法。


背景技术:

2.在机器学习领域内,对于最优变换的研究相对较为少见,其最主要原因在于设计有效算法的困难性。
3.传统的方法利用特征的随机组合以及一些基本算数运算(加-减-乘-除)和几类初等变换函数(如三角函数,幂函数,多项式函数等)的组合。以此得到的新的特征即便数量巨大也很难“猜中”一个潜藏(也即最优)的特征变换,因此传统算法构造了大量无用的新特征,而它们多数情况下却无法起到提升后续学习任务性能的作用,却浪费了大量的计算资源和宝贵的时间,最重要的是学到的特征变换对于解释业务数据往往毫无帮助。
4.早在1985年,两位来自美国斯坦福大学的统计学家breiman和friedman提出了alternate conditional expectation(ace,交替条件期望)算法用来寻找矢量数据中单个特征的最优变换。最原始的非参数单变元ace算法基于以下线性加和模型:
[0005][0006]
其中y、x1、x2……
x
p
都是一维随机变量,具体而言y是输出变量/标签,x1……
x
p
是预测变量/输入特征;θ(y)、φ1(x1)
……
φ
k
(x
k
)是变量相对应的变换函数,∈是θ(y)中不可被模型解释的部分,通常被认为是一个独立的加性噪声。
[0007]
本技术的发明人在长期研发中发现,上述非参数单变元ace算法存在以下两个主要缺陷:a)缺陷一:无法捕捉数据特征间的高维相互作用,例如二元相互作用(x
i
,x
j
),三元相互作用(x
i
,x
j
,x
k
);因此,当特征存在高维相互作用的时候,经典的ace算法会给出很差的拟合和预测结果;b)缺陷二:虽然可以直观展示最优变换,但却无法给出最优变换的显示表达式;因为这个问题,在预测新的数据点时,非参数ace算法需要利用临近的数据点和数据平滑算法做插值预测,造成性能损失。


技术实现要素:

[0008]
本技术提供一种基于交互检测的矢量数据高阶特征最优变换方法,以解决现有技术中当特征存在高维相互作用的时候,经典的ace算法会给出很差的拟合和预测结果的问题。
[0009]
为解决上述技术问题,本技术采用的一个技术方案是:提供一种基于交互检测的矢量数据高阶特征最优变换方法,所述方法包括:获取教师模型;在所述教师模型进行二元特征交互作用检测得到二元特征交互作用对;根据所述二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对;根据所述二元特征交互作用对和所述高
阶特征交互作用对,构建参数化神经网络模型;对所述神经网络模型求解,得到最优参数。
[0010]
为解决上述技术问题,本技术采用的另一个技术方案是:提供一种移动终端,所述移动终端包括相互耦接的处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于加载所述计算机程序并执行。
[0011]
为解决上述技术问题,本技术采用的又一个技术方案是:提供一种计算机存储介质,其上存有计算机程序,所述计算机程序用于实现上述实施方式中任一项方法的步骤。
[0012]
本技术的有益效果是:区别于现有技术的情况,本技术提供一种基于交互检测的矢量数据高阶特征最优变换方法,该方法包括:获取教师模型;在教师模型进行二元特征交互作用检测得到二元特征交互作用对;根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对;根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型;对神经网络模型求解,得到最优参数。通过训练得到教师模型,在教室模型中进行特征交互作用检测出二元特征交互作用对及高阶特征交互作用对,进而构建能够捕捉到特征之间的交互信息,对神经网络模型求解,得到最优参数,以取在测试数据上表现最优的模型参数,使模型优度有明显提高,能够以参数化的形式给出特征或特征组合的最优变换,便于得到更加准确的预测,解决了现有技术中当特征存在高维相互作用的时候,经典的ace算法会给出很差的拟合和预测结果的问题。
附图说明
[0013]
为了更清楚地说明申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的情况下,还可以根据这些附图获得其他的附图,其中:
[0014]
图1是本技术一种基于交互检测的矢量数据高阶特征最优变换方法一实施例的流程示意图;
[0015]
图2是本技术一种基于交互检测的矢量数据高阶特征最优变换方法另一实施例的流程示意图;
[0016]
图3是回归函数列表;
[0017]
图4是训练完成后参数ace算法最优特征变换层给出的变换函数;
[0018]
图5是本技术一种移动终端一实施例的结构示意图。
具体实施方式
[0019]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动情况下所获得的所有其他实施例,均属于本技术保护的范围。
[0020]
需要说明,若本技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术
人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
[0021]
请参阅图1,图1是本技术一种基于交互检测的矢量数据高阶特征最优变换方法一实施例的流程示意图。本实施例揭示的方法包括以下步骤:
[0022]
s11:获取教师模型。
[0023]
通过有监督学习的方法,训练过参数化神经网络得到准确度较高的教师模型或直接采用已有的state-of-the-art(当前最高水平)机器学习模型作为教师模型。
[0024]
s12:在教师模型进行二元特征交互作用检测得到二元特征交互作用对。
[0025]
在教师模型中使用训练数据进行计算时,会出现计算量巨大的问题,在真实场景中特征交互作用可能出现较为稀疏的特点,都会导致很差的拟合和预测结果。在本实施例中,通过特征交互作用检测能够快速得到比较良好的预测结果。在教师模型进行二元特征交互作用检测,能够较高概率挑选出最强的二元特征交互作用对。
[0026]
s13:根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对。
[0027]
若高阶特征交互作用对存在,那么高阶特征交互作用对内部的所有低阶交互作用应全部存在,因此基于挑选出的二元特征交互作用对,提取出三阶、四阶等高阶特征交互作用对时,能够大幅缩小高阶特征交互作用的搜索范围。
[0028]
s14:根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型。
[0029]
在得到二元特征交互作用对和高阶特征交互作用对后,基于检测得到的特征交互作用对,可以构建参数化神经网络模型。
[0030]
s15:对神经网络模型求解,得到最优参数。
[0031]
对神经网络模型求解时,可以采用神经网络方法,利用相应的算法,得到最优参数,最优参数用于取在测试数据上表现最优的模型参数。
[0032]
本技术提供一种基于交互检测的矢量数据高阶特征最优变换方法,该方法包括:获取教师模型;在教师模型进行二元特征交互作用检测得到二元特征交互作用对;根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对;根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型;对神经网络模型求解,得到最优参数。通过训练得到教师模型,在教室模型中进行特征交互作用检测出二元特征交互作用对及高阶特征交互作用对,进而构建能够捕捉到特征之间的交互信息,对神经网络模型求解,得到最优参数,以取在测试数据上表现最优的模型参数,使模型优度有明显提高,能够以参数化的形式给出特征或特征组合的最优变换,便于得到更加准确的预测,当特征存在高维相互作用的时候,能够给出较好的拟合和更加准确的预测结果。
[0033]
请参阅图2,图2是本技术一种基于交互检测的矢量数据高阶特征最优变换方法另一实施例的流程示意图。在上述实施方式的基础上,本实施例揭示的方法包括以下步骤:
[0034]
s21:获取教师模型。
[0035]
s22:基于置信区间上界方法,在教师模型进行二元特征交互作用检测得到二元特征交互作用对。
[0036]
在一具体实施例中,可以包括步骤s221~s227:
[0037]
s221:根据公式(1)获取特征交互作用对的强度,
[0038][0039]
其中,x是输入矢量数据点,f(x)是教师模型的输出,x
i
、x
j
分别表示向量x的第i,j个分量。
[0040]
s222:基于有限差分方法,根据公式(2)近似得到二阶导数,
[0041][0042]
其中,二阶导数用以衡量二元特征交互的强度,e
i
是第i个元素为1的独热向量,e
j
是第j个元素为1的独热向量,h
i
、h
j
表示有限差分的大小。
[0043]
s223:预设多个老虎臂,将每个老虎臂与一个二元特征交互作用对一一对应。
[0044]
s224:拉动每个老虎臂至预设次数,得到预设次数个数据样本点。
[0045]
s225:根据数据样本点获取测量强度的初始预测值、预测的不确定区间、上界和下界。
[0046]
s226:采样时,拉动多个老虎臂,获取多个老虎臂中具有最大上界的一个,更新当前次数对应的上界和下界。
[0047]
s227:根据多个老虎臂的上界和下界,得到预设数值个老虎臂的二元特征交互作用对。
[0048]
下面一并对步骤s221~s227进行说明:
[0049]
在本实施例中,基于hessian-ucb(the-upper-confidence-bound-algorithm,海塞矩阵-置信区间上界方法)进行二元特征交互作用检测。
[0050]
采用公式(1)作为对特征交互作用对的强度测量,强度作为统计量来帮助我们挑选强度最强的k对特征交互作用,根据公式(2)所示的有限差分方法来近似二阶导数。
[0051]
由于使用训练数据估计公式(1)的值会面临计算量巨大的困难,加上真实场景中特征交互作用可能出现较为稀疏的特点,本实施例通过将特征交互作用检测问题转换为多臂老虎机问题,采用经典的置信区间上界方法(ucb),以高概率从p(p-1)/2对特征交互作用中挑选出最强的k对特征交互作用。其中,p是特征的维度,即x向量的维度;k是我们想得到的特征交互对的个数,即预先设定的值。
[0052]
具体来说,预设多个老虎臂,将每个老虎臂与一个二元特征交互作用对(x
i
,x
j
)一一对应。拉动每个老虎臂至预设次数,每次拉动都会获得一个数据样本点,进而得到预设次数个数据样本点、公式(1)的一个初始预测μ
ij
(t)(t=0)、预测的不确定区间2c
ij
(t=0),即置信区间,包括上界和下界两个值。定义一个置信区间上界ucb
t
(ij)=μ
ij
c
ij
,一个置信区间下界lcb
t
(ij)=μ
ij-c
ij
。其中,c是置信区间的宽度,是个正的数值,t是算法的第t次迭代iteration,t=0表示初始迭代。
[0053]
正式开始采样时,在第t次拉动多个老虎臂,选择当前所有老虎臂中具有最大上界的一个,更新点预测μ
ij
(t)、上界ucb
t
(ij)及下界lcb
t
(ij)。当某一个老虎臂满足它的下界大于所有其他的老虎臂的上界时,选出这个老虎臂所对应的二元特征交互作用对,直到选出预设数值(例如k个)二元特征交互作用对。
[0054]
s23:根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对。
[0055]
在一具体实施例中,基于置信区间上界方法检测出预设数值个最强的二元特征交互作用对。例如,预设数值为k
(2)
。根据预设数值个最强的二元特征交互作用k
(2)
对构造无向图。获取无向图中所有的团。
[0056]
基于置信区间上界方法,根据团得到高阶特征交互作用对及高阶特征交互作用对强度。具体来说,预设i=3,4,5,

,p,若顶点数为i的团不存在,则跳出for i=3:p循环;从所有顶点数为i的团中得到备选集合,若其元素满足所有的i-1完全子图已被检出;利用ucb算法检测k个最强的i阶特征交互作用(注:在ucb算法中采用相应的高维有限差分方法替换)。输出所有已检测到的特征交互作用及其强度。
[0057]
s24:根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型。
[0058]
在一具体实施例中,根据公式(3)构建参数化神经网络模型,
[0059][0060]
其中,p是x的维度,表示检测到的特征交互作用的索引集合,s
i
、r
i
分别是单变量和交互作用的特征变换函数,对应于单变量s
i
或特征交互对r
i
的特征变换函数的参数,β是特征变换函数的加权系数。
[0061]
s25:在神经网络模型后增加修补层。
[0062]
为了对真实函数更好的拟合,可以在神经网络模型后加一个修补层以弥补交互作用不全造成的性能损失。
[0063]
s26:对神经网络模型求解,得到最优参数。
[0064]
在意具体实施例中,对于回归和分类问题定义如下损失函数:
[0065]
根据公式(4)定义回归任务损失函数,
[0066][0067][0068]
根据公式(5)定义回归任务损失函数,
[0069]
[0070]
其中,n表示样本数量,y
j
表示第j样本的标签,x
j
表示第j样本的特征向量,θ表示神经网络参数,β表示特征选取参数,λ表示大于零的正则参数。
[0071]
通过最小化损失函数求得神经网络的参数,小批量梯度下降法是求解这个优化问题的方法。
[0072]
采取神经网络训练方法,根据小批量梯度下降法对神经网络模型求解,得到最优参数。
[0073]
s27:对神经网络模型进行可视化处理,得到单变量和特征交互作用对的仿真结果。
[0074]
利用可视化手段,可以得到s、i单变量的特征变换函数和交互作用对的具体的变换形式。
[0075]
在一具体实施例中,按照上述实施方式进行如下仿真数据对比试验。
[0076]
在该实验中,测试数据集个数如表一所示。
[0077]
表一
[0078] 仿真数据回归任务10组分类任务10组
[0079]
请一并参与图3,图3是回归函数列表,该批回归函数用于生成用于测试回归任务的10组仿真数据集。每一组数据集都包含1000个数据样本点,对应的输入样本点都从一个均匀分布u(-1,1)独立产生。函数的输出还受到高斯噪声(均值为0,方差为0.01)的干扰。相对于输入特征的幅度,本实施例中添加的噪声粒度适中。
[0080]
在本实施例中,用于测试分类任务的10组仿真数据集是从回归数据得到。具体来说,获取回归数据输出值的中位数作为阈值,将输出值高于此阈值的数据样本点标记为“1”类,低于或等于此阈值的标为“0”类。因此在测试中主要聚焦于二值分类问题。
[0081]
仿真环境如表二所示。
[0082]
表二
[0083][0084]
在本实施例中采用hessian-ucb算法挑选出了20组具有最高评分的二元特征交互集候选,联合10组单变元特征,一起馈入30个小规模的神经网络,每个神经网络的为三层,每层神经元个数依次为50,8,1,待优化参数总量为17181;第二层resnet的隐层只有15个神经元。相比之下,作为对比对象的深度神经网络结构选取遵循第一隐层神经元个数大于训练样本数,网络整体结构呈倒三角形。实验中对不同数据集,所有网络的隐层配置相同,隐层神经元个数依次为5000,900,400,100,30,输出维度为1,每个隐层神经元采用relu作为
激活函数。全连接神经网络的规模为10-5000-900-400-100-30-1,因此总共具有4967561个优化变量。调节网络超参数的优化器采用默认配置的adam算法,网络的初始化统一使用he(kaiming)初始化方法。
[0085]
本实施例中,将参数化ace算法与不做特征最优变换的全连接神经网络做比较。对于回归任务,为了去除数据输出变量取值范围对优度测量公允性的影响,我们采用如下归一化的rmse,记为nrmse,如公式(6)所示:
[0086][0087]
而对于分类任务,我们选取了分类准确率(accuracy)量度,如公式(7)所示:
[0088][0089]
在本实施例中,提供一最优变换实施例,具体如下:
[0090]
提供一回归函数,如公式(8)所示:
[0091][0092]
对于公式(8)所示的回归函数,特征对(0,1),(2,3),(8,9)都是以双线性函数z=xy的形式出现,而特征对(4,5)是以指数函数z=exp(x y)的形式出现。
[0093]
请一并参阅图4,图4是训练完成后参数ace算法最优特征变换层给出的变换函数。从如4所示结果可以清晰看出,对于特征对(0,1),(2,3),(8,9),算法较好地学到双线性函数变换,虽然存在一定的旋转和缩放;对于特征对(4,5),算法也较好地学到了指数函数变换。
[0094]
从实验结果可以看出,本发明提出的参数ace算法相比全连接神经网络在nrmse上的性能提升,且模型压缩比较传统剪枝方法提升明显。从特征最优变换的角度看,参数化ace对特征变换的学习相对准确,对实际科学发现有一定意义。
[0095]
本技术提供一种基于交互检测的矢量数据高阶特征最优变换方法,该方法包括:获取教师模型;基于置信区间上界方法,在教师模型进行二元特征交互作用检测得到二元特征交互作用对;根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对;根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型;在神经网络模型后增加修补层;对神经网络模型求解,得到最优参数;对神经网络模型进行可视化处理,得到单变量和特征交互作用对的仿真结果。通过上述方式,能够以参数化的形式给出特征或特征组合的最优变换,便于得到更加准确的预测,当特征存在高维相互作用的时候,能够给出较好的拟合和更加准确的预测结果。
[0096]
对应上述的方法,本技术提出一种移动终端,请参阅图5,图5是本技术一种移动终端一实施例的结构示意图。本技术揭示的移动终端100包括相互耦接的存储器12和处理器
14,存储器12用于存储计算机程序,处理器14用于执行计算机程序实现上述实施方式中任一项方法的步骤。
[0097]
具体来说,处理器14用于:
[0098]
获取教师模型。
[0099]
在教师模型进行二元特征交互作用检测得到二元特征交互作用对。
[0100]
根据二元特征交互作用对进行层级高阶特征交互作用对检测,得到高阶特征交互作用对。
[0101]
根据二元特征交互作用对和高阶特征交互作用对,构建参数化神经网络模型。
[0102]
对神经网络模型求解,得到最优参数。
[0103]
本实施例移动终端100能够以参数化的形式给出特征或特征组合的最优变换,便于得到更加准确的预测。
[0104]
在本技术所提供的几个实施方式中,应该理解到本技术所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0105]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
[0106]
另外,在本技术各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0107]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0108]
以上仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献