分类模型的训练方法及装置与流程

文档序号:16211358发布日期:2018-12-08 07:47阅读:360来源:国知局
分类模型的训练方法及装置与流程

本申请涉及数据处理领域,特别涉及一种分类模型的训练方法及装置。

背景技术

随着大数据时代的到来,信息数据日益膨胀,对海量数据进行高效鲁棒精确分析的市场需求不断扩大。如电信领域的离网预测、医疗诊断、信用卡系统的信用分级、图像模式识别以及网络数据分类等。在此背景下,机器学习得到了广泛应用,尤其以机器学习中分类方法的应用最为广泛。

然而,对于分类方法的使用却面临着众多的难题,其中以特征选择,特征变换,模型选择和参数调优最为困难,需要反复尝试,修改,再迭代,使得数据分析周期长,成本高。由于特征选择,模型选择,参数调优等任何一个环节都有可能对最终结果产生影响,所以在数据分析时,要求系统整体具备较高的鲁棒性,使得当一个环节出了轻微的问题,不至于给最终结果造成很差的影响。

但也正因如此,影响数据分析的因素很多,对数据分析结果的定位和调试成本非常高,特别是大数据场景,每做一次数据分析需要花费大量的时间进行计算,导致整个数据分析周期过长,数据分析效率低下。



技术实现要素:

本申请提供了一种分类模型的训练方法及装置,用于提升数据分析效率。

本申请第一方面提供了一种分类模型的训练方法,该分类模型用于对数据进行分类。

为了便于从样本数据中提取相关特征,因此,首先需要接收输入的用于训练所述分类模型的样本数据;其中,该样本数据包括多个样本特征。

然后通过从该样本数据中确定目标特征子集,筛选出需要用到的多个特征,以减少数据的计算量。其中,该目标特征子集为该样本数据中相关性和冗余度都满足目标条件的特征集合。

利用高维稀疏化转换方法确定该目标特征子集的高维稀疏特征,该高维稀疏特征为线性特征;如利用核函数方法对所述目标特征子集进行稀疏化处理,得到目标特征子集的高维稀疏特征,以提高数据分析的精度。

接下来确定该目标特征子集的高维稀疏特征对应的目标数据复杂度,该数据复杂度包括用于表征数据特点的多个维度;可采用数据复杂度来度量特征子集的高维稀疏特征。

然后根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与所述目标分类算法的超参数集合的映射关系确定所述目标数据复杂度所对应的目标参数达到优选算法以及缩小参数空间的目的。其中,该数据复杂度与分类算法的映射关系,以及该数据复杂度与分类算法的超参数集合的映射关系可通过预学习训练得到。

最后根据确定的该目标参数以及该目标特征子集的高维稀疏特征训练该目标分类算法,以得到该分类模型。应用该分类模型能够提高数据分析效率。

在第一方面的一种实现方式下,上述从该样本数据中确定目标特征子集,包括:

从该样本数据中确定最大相关性和最小冗余度的特征子集;该最大相关性和最小冗余度的特征子集为该目标特征子集。通过提取满足最大相关性和最小冗余度的特征子集,可以过滤一些关联度不重要的数据,以减少数据的计算量。

在第一方面的一种实现方式下,该利用高维稀疏化转换方法确定该目标特征子集的高维稀疏特征,包括:

首先对该目标特征子集进行均衡处理,然后添加随机噪声;

然后对上述进行均衡处理以及添加随机噪声后的所述目标特征子集进行拆分,拆分为第一子集和第二子集;

利用该第一子集训练特征稀疏编码算法,以得到特征稀疏编码泛化模型;

最后输入第二子集,将所述特征稀疏编码泛化模型作用于拆分得到的第二子集中的数据,从而确定出该第二子集对应的高维稀疏特征。

在第一方面的一种实现方式下,上述根据已建立的数据复杂度与分类算法的映射关系确定该目标数据复杂度所对应的目标分类算法之前,该方法还包括:

训练该数据复杂度与分类算法的映射关系,以及训练该数据复杂度与分类算法的超参数集合的映射关系。该实现方式通过预学习训练得到该数据复杂度与分类算法的映射关系,以及该数据复杂度与分类算法的超参数集合的映射关系。

在第一方面的一种实现方式下,该训练该数据复杂度与分类算法的映射关系,以及训练该数据复杂度与分类算法的超参数集合的映射关系包括:

获取输入的多个分类算法以及多组训练数据;

确定该多组训练数据中每组训练数据对应的分类算法以及该多个分类算法中每个分类算法对应的超参数集合;通过使用多个分类算法训练多组不同的训练数据,获得每组训练数据与其各个分类算法的适合程度的统计信息,该统计信息包括了各个分类算法的类别,以及各个分类算法对应的参数取值范围即超参数集合。

获取多份数据复杂度,该多份数据复杂度是该多组训练数据中每组训练数据的数据复杂度;通过采用数据复杂度从多个维度表征每组训练数据的特点,以得到所述多组训练数据中每组训练数据的数据复杂度。

建立该多份数据复杂度与该多个分类算法的映射关系;按照所得数据指标的精度,选取数据指标精度较高的至少一个分类算法,并建立该份数据复杂度与该至少一个分类算法的映射关系。对于多组训练数据所包括的多份数据复杂度,按照上述方式,建立多份数据复杂度与所述多个分类算法的映射关系。

建立该多份数据复杂度与该每个分类算法对应的超参数集合的映射关系。按照所得数据指标的精度,从所述超参数集合中选取数据指标精度较高的一组参数作为目标参数,并建立该份数据复杂度与该分类算法的超参数集合中所述目标参数的映射关系。对于多组训练数据所包括的多份数据复杂度,按照上述方式,建立多份数据复杂度与每个分类算法的超参数集合的映射关系。

在第一方面的一种实现方式下,该数据复杂度包括用于表征数据特点的十二个维度中的至少两个,该十二个维度包括:线性判别率、目标类型范围重叠率、单一特征最大能效、线性分类误差率、线性分类最小误差和、线性分类面样本比例、同类样本聚集密度、不同类样本聚集密度、样本数据非线性、异类样本差异性、各类样本最小超维闭包以及各个维度取值稀疏率。可从该十二个维度中选取至少两个维度作为表征所述目标特征子集的高维稀疏特征的目标数据复杂度。

本申请第二方面提供了一种分类模型的训练装置,该分类模型用于对数据进行分类,该装置包括:

收发单元,用于接收用于训练该分类模型的样本数据,该样本数据包括多个样本特征;

处理单元,用于从该样本数据中确定目标特征子集,该目标特征子集为该样本数据中相关性和冗余度都满足目标条件的特征集合;

利用高维稀疏化转换方法确定该目标特征子集的高维稀疏特征,该高维稀疏特征为线性特征;

确定该目标特征子集的高维稀疏特征对应的目标数据复杂度,该数据复杂度包括用于表征数据特点的多个维度;

根据已建立的数据复杂度与分类算法的映射关系确定该目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与该目标分类算法的超参数集合的映射关系确定该目标数据复杂度所对应的目标参数;

根据确定的该目标参数以及该目标特征子集的高维稀疏特征训练该目标分类算法,以得到该分类模型。

在第二方面的一种实现方式下,该处理单元用于从该样本数据中确定目标特征子集,包括:

该处理单元,用于从该样本数据中确定最大相关性和最小冗余度的特征子集;该最大相关性和最小冗余度的特征子集为该目标特征子集。

在第二方面的一种实现方式下,该处理单元用于利用高维稀疏化转换方法确定该目标特征子集的高维稀疏特征,包括:

该处理单元,用于对该目标特征子集进行均衡处理,然后添加随机噪声;

将进行均衡处理以及添加随机噪声后的该目标特征子集拆分为第一子集和第二子集;

利用该第一子集训练特征稀疏编码算法,以得到特征稀疏编码泛化模型;

输入第二子集,并根据该特征稀疏编码泛化模型确定该第二子集对应的高维稀疏特征。

在第二方面的一种实现方式下,该处理单元,还用于:

训练该数据复杂度与分类算法的映射关系,以及训练该数据复杂度与分类算法的超参数集合的映射关系。

在第二方面的一种实现方式下,该处理单元用于训练该数据复杂度与分类算法的映射关系,以及训练该数据复杂度与分类算法的超参数集合的映射关系包括:

该处理单元,用于获取输入的多个分类算法以及多组训练数据;

确定该多组训练数据中每组训练数据对应的分类算法以及该多个分类算法中每个分类算法对应的超参数集合;

获取多份数据复杂度,该多份数据复杂度是该多组训练数据中每组训练数据的数据复杂度;

建立该多份数据复杂度与该多个分类算法的映射关系;

建立该多份数据复杂度与该每个分类算法对应的超参数集合的映射关系。

在第二方面的一种实现方式下,该数据复杂度包括用于表征数据特点的十二个维度中的至少两个,该十二个维度包括:线性判别率、目标类型范围重叠率、单一特征最大能效、线性分类误差率、线性分类最小误差和、线性分类面样本比例、同类样本聚集密度、不同类样本聚集密度、样本数据非线性、异类样本差异性、各类样本最小超维闭包以及各个维度取值稀疏率。

本申请第三方面提供一种计算设备,包括存储器、收发器、处理器以及总线系统;

其中,存储器用于存储程序和指令;

收发器用于在处理器的控制下接收或发送信息;

处理器用于执行存储器中的程序;

总线系统用于连接存储器、收发器以及处理器,以使存储器、收发器以及处理器进行通信;

处理器用于调用存储器中的程序指令,以执行本申请第一方面或第一方面的任一实现方式中提供的分类模型的训练方法。

本申请第四方面提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

本申请第五方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。

从以上技术方案可以看出,本申请具有以下优点:通过从样本数据中确定目标特征子集以减少数据计算量;利用高维稀疏化转换方法确定该目标特征子集的高维稀疏特征以提高数据分析的精度;最后通过确定该目标特征子集的高维稀疏特征对应的目标数据复杂度;并根据已建立的数据复杂度与分类算法的映射关系确定该目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与该目标分类算法的超参数集合的映射关系确定该目标数据复杂度所对应的目标参数达到优选算法以及缩小参数空间的目的;从而按照确定的该目标参数以及该目标特征子集的高维稀疏特征训练该目标分类算法,以得到分类模型。应用该分类模型能够提高数据分析效率。

附图说明

图1为本申请所提供的分类模型的训练装置的一个组织架构示意图;

图2为本申请所提供的计算设备的一个组织架构示意图;

图3为本申请所提供的分类模型的训练方法的一个流程示意图;

图4为本申请所提供的分类模型的训练方法的另一流程示意图;

图5为本申请所提供的分类模型的训练方法的另一流程示意图;

图6为本申请所提供的分类模型的训练方法的另一流程示意图;

图7为本申请所提供的分类模型的训练装置的另一组织架构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例进行描述。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

分类可以看成是从一个数据集到一组预先定义的、非交叠的类别的映射过程。其中映射关系的生成以及映射关系的应用就是数据挖掘分类方法主要的研究内容。这里的映射关系就是常说的分类函数或分类模型(分类器),映射关系的应用就对应于我们使用分类器将数据集中的数据项划分到给定类别中的某一个类别的过程。

分类的数学定义:给定一个数据集d={t1,t2,…,tn}和一组类c={c1,c2,…,cn},分类问题就是去确定一个映射f:d->c,每个元组ti被分配到一个类中。类cj包含映射到该类中的所有数据元组,即cj={ti|f(ti)=cj,1<=i<=n,且ti∈d}。

通常认为在分类问题中,特征选择,特征变换,模型选择,参数调优等四个步骤是难度最大,最为耗时的四个步骤。

所以,设计开发一种能够降低数据分析难度,提高数据分析效率的分类学习装置很有必要,基于此,本申请提供了一种基于集成学习的应用于解决数据分类问题的分类模型的训练装置。如图1所示,该分类模型的训练装置可以是一台物理主机,也可以是一个物理主机集群,也可以是为训练本申请中分类模型所配置的虚拟机,无论分类模型的训练装置的形态如何,只要能相当于一个计算引擎,能实现本申请中的分类模型的训练过程即可。该装置包括三个核心部分。其中,第一部分为特征选择部分,特征选择部分用于实现对输入数据的特征的选择,例如从输入的样本数据中提取相关性和冗余度都满足目标条件的特征集合。第二部分为特征稀疏编码部分,特征稀疏编码部分主要通过采用非线性(例如核函数)方法,对数据的特征子集进行稀疏化,以得到特征子集的高维稀疏特征。第三部分为模型选择和超参空间压缩部分,由于模型种类繁多且每个模型的超参空间巨大,利用模型选择和超参空间压缩部分中已建立的数据复杂度与分类算法的映射关系以及数据复杂度与分类算法的超参空间的映射关系,为输入的样本数据选择合适的分类算法,并缩小分类算法训练所需要的超参空间。利用缩小后的超参空间以及特征子集的高维稀疏特征训练为输入的样本数据所选择的合适的分类算法,以得到分类模型,从而提高数据分析的效率。

图1中的分类模型的训练装置可以通过图2中的计算设备200实现,计算设备200的组织结构示意图如图2所示,包括处理器202、存储器204和收发器206,还可以包括总线208。

其中,处理器202、存储器204和收发器206可以通过总线208实现彼此之间的通信连接,也可以通过无线传输等其他手段实现通信。

存储器204可以包括易失性存储器(volatilememory),例如随机存取存储器(random-accessmemory,ram);存储器也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-onlymemory,rom),快闪存储器(flashmemory),硬盘(harddiskdrive,hdd)或固态硬盘(solidstatedrive,ssd);存储器204还可以包括上述种类的存储器的组合。在通过软件来实现本申请提供的技术方案时,用于实现本申请图3提供的分类模型的训练方法的程序代码保存在存储器204中,并由处理器202来执行。

计算设备200通过收发器206与其他设备通信。

处理器202可以为中央处理器(centralprocessingunit,cpu)。

本申请中,所述收发器206,用于接收用于训练所述分类模型的样本数据,所述样本数据包括多个样本特征;

所述处理器202,用于从所述样本数据中确定目标特征子集,所述目标特征子集为所述样本数据中相关性和冗余度都满足目标条件的特征集合;

利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征,所述高维稀疏特征为线性特征;

确定所述目标特征子集的高维稀疏特征对应的目标数据复杂度,所述数据复杂度包括用于表征数据特点的多个维度;

根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与所述目标分类算法的超参数集合的映射关系确定所述目标数据复杂度所对应的目标参数;

根据确定的所述目标参数以及所述目标特征子集的高维稀疏特征训练所述目标分类算法,以得到所述分类模型。

本申请中的处理器202通过从样本数据中确定目标特征子集以减少数据计算量;利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征以提高数据分析的精度;最后通过确定所述目标特征子集的高维稀疏特征对应的目标数据复杂度;并根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与所述目标分类算法的超参数集合的映射关系确定所述目标数据复杂度所对应的目标参数达到优选算法以及缩小参数空间的目的;从而按照确定的所述目标参数以及所述目标特征子集的高维稀疏特征训练所述目标分类算法,以得到分类模型。应用该分类模型能够提高数据分析效率。

可选的,所述处理器202用于从所述样本数据中确定目标特征子集,包括:

所述处理器202,用于从所述样本数据中确定最大相关性和最小冗余度的特征子集;所述最大相关性和最小冗余度的特征子集为所述目标特征子集。

可选的,所述处理器202用于利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征,包括:

所述处理器202,用于对所述目标特征子集进行均衡处理,然后添加随机噪声;

将进行均衡处理以及添加随机噪声后的所述目标特征子集拆分为第一子集和第二子集;

利用所述第一子集训练特征稀疏编码算法,以得到特征稀疏编码泛化模型;

输入第二子集,并根据所述特征稀疏编码泛化模型确定所述第二子集对应的高维稀疏特征。

可选的,所述处理器202,还用于:

训练所述数据复杂度与分类算法的映射关系,以及训练所述数据复杂度与分类算法的超参数集合的映射关系。

可选的,所述处理器202用于训练所述数据复杂度与分类算法的映射关系,以及训练所述数据复杂度与分类算法的超参数集合的映射关系包括:

所述处理器202,用于获取输入的多个分类算法以及多组训练数据;

确定所述多组训练数据中每组训练数据对应的分类算法以及所述多个分类算法中每个分类算法对应的超参数集合;

获取多份数据复杂度,所述多份数据复杂度是所述多组训练数据中每组训练数据的数据复杂度;

建立所述多份数据复杂度与所述多个分类算法的映射关系;

建立所述多份数据复杂度与所述每个分类算法对应的超参数集合的映射关系。

可选的,所述数据复杂度包括用于表征数据特点的十二个维度中的至少两个,所述十二个维度包括:线性判别率、目标类型范围重叠率、单一特征最大能效、线性分类误差率、线性分类最小误差和、线性分类面样本比例、同类样本聚集密度、不同类样本聚集密度、样本数据非线性、异类样本差异性、各类样本最小超维闭包以及各个维度取值稀疏率。

本申请还提供了一种分类模型的训练方法,图2中的计算设备200运行时执行该方法,其流程示意图如图3所示。

301、接收用于训练所述分类模型的样本数据。

所述样本数据包括多个样本特征,该步骤通过接收输入的用于训练所述分类模型的样本数据,以便从样本数据中提取相关特征。

302、从所述样本数据中确定目标特征子集。

需要说明的是,输入的样本数据中包含多个样本特征,例如,衡量某人的特征包括身高、体重、年龄等多个特征。然而并非所有的特征都需要利用到,因此,通过该步骤提取目标特征子集,筛选出需要用到的多个特征,以减少计算量。

其中,所述目标特征子集为所述样本数据中相关性和冗余度都满足目标条件的特征集合。具体的,该目标特征子集为所述样本数据中满足最大相关性和最小冗余度的特征子集。

需要说明的是,互信息越大表示相关性越高。但是按照互信息大小选出的topk个特征的建模效果却不一定是最优的,这是由于单独考虑每个特征和目标的互信息忽略了特征之间的关联,很容易引入冗余特征。因而需要同时考虑特征子集的相关性和冗余性。基于互信息原理,可以得出最大相关性和最小冗余度的统一求解目标函数。按照最大相关性和最小冗余度的统一求解函数从所述样本数据中确定满足最大相关性和最小冗余度的特征子集。

其中,互信息的计算公式如下:其中,i(x;y)表示特征x和特征y之间的互信息,p(x,y)表示特征x和特征y的联合概率。特征相关性计算公式如下:其中,s表示所有特征子集的组合,c表示分类的目标,d表示特征与分类的目标的相关性,|s|表示所有特征子集的个数,i表示互信息,xi表示第i个特征。特征冗余度计算公式如下:其中,s表示所有特征子集的组合,r表示特征与特征的冗余度,|s|表示所有特征子集的个数,i表示互信息,xi表示第i个特征,xj表示第j个特征。基于互信息、特征相关性以及特征冗余度的计算方法,可得出最大相关性和最小冗余度的统一求解目标函数如下:其中,m-1表示已经获得的满足最大相关性和最小冗余度的特征个数,x表示所有特征的集合,sm-1表示已经选择的m-1个满足最大相关性和最小冗余度的特征集合,xi表示第i个特征,xj表示第j个特征。

通过该最大相关性最小冗余度统一求解目标函数可以从样本数据中确定最大相关性和最小冗余度的特征子集。结合图1所示的特征选择部分,该步骤得到的最大相关性和最小冗余度的特征子集可以作为后续特征稀疏编码处理的特征子集。

303、利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征。

利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征。高维稀疏化转换方法包括但不限于非线性(例如核函数)方法。如利用核函数方法对所述目标特征子集进行稀疏化处理,得到目标特征子集的高维稀疏特征。

可选的,所述利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征,包括:

对所述目标特征子集进行均衡处理,然后添加随机噪声后;

将进行均衡处理以及添加随机噪声后的所述目标特征子集拆分为第一子集和第二子集;

利用所述第一子集训练特征稀疏编码算法,以得到特征稀疏编码泛化模型;该特征稀疏编码泛化模型是利用非线性方法得到的非线性特征变换模型;

输入第二子集,并根据所述特征稀疏编码泛化模型确定所述第二子集对应的高维稀疏特征。

需要说明的是,结合图4所示,该过程的具体实现方式可以是,首先对所述样本数据中提取的目标特征子集进行均衡处理,然后添加随机噪声;其中,可用的均衡处理方法包括随机采样(如吉布斯gibbs采样算法)和分层采样等,可用的随机噪声包括高斯白噪声和均匀噪声等。

然后对上述进行均衡处理以及添加随机噪声后的所述目标特征子集进行拆分,其中拆分得到的第一子集即样本1用于训练特征稀疏编码算法,以得到特征稀疏编码泛化模型;

最后将所述特征稀疏编码泛化模型作用于拆分得到的第二子集中的数据,获得第二子集即样本2的高维稀疏特征。

其中,采用非线性方法对目标特征子集进行稀疏化处理,以得到目标特征子集的高维稀疏特征的方式可参考如下:

一种可能的实现方式是利用三层神经网络(层数可以灵活配置)对目标特征子集进行非线性变换,主要步骤如下:

首先对所述拆分得到的第一子集使用后向传播算法训练得到各层之间的连接系数;神经网络各层之间的输出存在一个系数比,该系数比即为连接系数。

然后遍历所述拆分得到的第二子集的每个样本vi,其中,遍历方法可采用前向传播方法,以得到每个样本vi在该三层神经网络的最后一层隐藏层(即第二层)的输出;

为了得到目标特征子集的高维稀疏特征表达,可为多个维度中的每个维度的特征添加激活函数,所述多个维度用于表征该目标特征子集的数据特点。其中,该激活函数用以确定每个维度的特征是否保留,激活函数可以选择sigmoid函数,softmax函数以及relu函数等中的任意一种。

另一种可能的实现方式是以随机森林为例,在机器学习中,随机森林是一个包含多个决策树的分类器,本申请利用随机森林模型(类似的模型如迭代决策树(gradientboostingdecisiontree,gbdt))对所述目标特征子集进行高维稀疏且使稀疏化后的数据具规则性分布,主要步骤如下:

首先针对所述拆分得到的第一子集训练得到一个随机森林模型(该模型包括多棵树);

然后遍历所述拆分得到的第二子集的每个样本vi,每个样本vi会落到各棵树tj的某个叶节点;

为每个样本vi针对每棵树tj构造一个稀疏矩阵的特征向量,将每个样本vi所在叶节点的特征向量置为(1,0),其余置为(0,0);

按顺序将上述特征向量排列成一个长度为tj的稀疏矩阵的特征向量。如向量1(0,1),向量2(1,1),向量3(1,0),排列后得到的稀疏矩阵的特征向量为(0,1,1,1,1,0)。

304、确定所述目标特征子集的高维稀疏特征对应的目标数据复杂度。

需要说明的是,不同数据集之间的差异千差万别,为了找到数据集与算法以及参数的关联关系,必须使用相同的方法来刻画数据的抽象特征。因此,可采用数据复杂度来度量特征子集的高维稀疏特征。所述数据复杂度包括用于表征数据特征的多个维度,具体的,该数据复杂度可包括用于表征数据特点的十二个维度中的至少两个。所述十二个维度包括:线性判别率、目标类型范围重叠率、单一特征最大能效、线性分类误差率、线性分类最小误差和、线性分类面样本比例、同类样本聚集密度、不同类样本聚集密度、样本数据非线性、异类样本差异性、各类样本最小超维闭包以及各个维度取值稀疏率。可从该十二个维度中选取至少两个维度作为表征所述目标特征子集的高维稀疏特征的目标数据复杂度。

需要说明的是,基于fishe’s线性判别准则,该线性判别率用于计算某个维度对分析目标的判别能力。计算公式如下:其中,μ1、μ2分别对应两个类别的均值,分别对应两个类别的方差。

目标类型范围重叠率,描述的是不同分类目标类别所属边界范围的重叠率,通过连乘所有特征为度的类别重叠率而来。计算公式为:其中,max和min分别表示某维特征对某个分类类别的最大值和最小值。

单一特征最大能效,是通过考量落在特征重叠区域之外,且取值在垂直于特征维度超平面的样本特征的比例。

线性分类误差率是衡量数据样本的线性可分程度。

线性分类最小误差和,是采用线性分类面衡量所有样本点到分类超平面的最小误差和。公式为:最小化:att,约束条件:ztw+t≥b,t≥0。其中,a,b,w为任意线性分类器的分类超平面参数。

线性分类面样本比例是指恰好处于分类边界的样本比例。

同类样本聚集密度是衡量样本中,同类样本的聚集紧密程度。公式为:其中,intradist(xi)表示样本xi与同类其他样本的最小距离,interdist(xi)表示样本xi与异类样本的最小距离。

不同类样本聚集密度描述的是不同类别样本之间的聚集紧密程度。

样本数据非线性描述的是数据样本的非线性。基本方法是多次随机使用线性分割面分割同类别样本,然后计算错分率。

异类样本差异性描述的是样本与其异类之间的非线性,基本方法是计算样本与其最为接近的异类凸包的距离关系。

各类样本最小超维闭包用于描述各个类别的超维闭包的最小球形(包含同类样本且不与其他类别有重叠的最小球形)个数。通过归一化全部类别的闭包球个数,为每个类别计算比例。

各个维度取值稀疏率表示每个维度上的平均有值样本比例。计算公式为:其中,m为该维度有值的样本个数,n为样本总数。

305、根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与所述目标分类算法的超参数集合的映射关系确定所述目标数据复杂度所对应的目标参数。

需要说明的是,所述数据复杂度与分类算法的映射关系以及所述数据复杂度与分类算法的超参数集合的映射关系的建立机制可参考如下实现方式。

可选的,所述根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法之前,所述方法还包括:

训练所述数据复杂度与分类算法的映射关系,以及训练所述数据复杂度与分类算法的超参数集合的映射关系。

所述训练所述数据复杂度与分类算法的映射关系,以及训练所述数据复杂度与分类算法的超参数集合的映射关系包括:

获取输入的多个分类算法以及多组训练数据;

确定所述多组训练数据中的每组训练数据对应的分类算法以及所述多个分类算法中每个分类算法对应的超参数集合;

获取多份数据复杂度,所述多份数据复杂度是所述多组训练数据中每组训练数据的数据复杂度;

建立所述多份数据复杂度与所述多个分类算法的映射关系;

建立所述多份数据复杂度与所述每个分类算法对应的超参数集合的映射关系。

需要说明的是,结合图5所示,该装置可通过预学习,训练得到数据复杂度与分类算法的映射关系,以及数据复杂度与分类算法的超参数集合的映射关系。

所述数据复杂度与分类算法的映射关系的建立,首先可通过使用多个分类算法训练多组不同的训练数据,获得每组训练数据与其各个分类算法的适合程度的统计信息,该统计信息包括了各个分类算法的类别,以及各个分类算法对应的参数取值范围即超参数集合。

采用数据复杂度从多个维度表征每组训练数据的特点,以得到所述多组训练数据中每组训练数据的数据复杂度。

每组训练数据的数据特点用一份数据复杂度来表征,通过输入的每组训练数据,训练得到每组训练数据对应的那一份数据复杂度与多个分类算法之间的数据指标。按照所得数据指标的精度,选取数据指标精度较高的至少一个分类算法,并建立该份数据复杂度与该至少一个分类算法的映射关系。对于多组训练数据所包括的多份数据复杂度,按照上述方式,建立多份数据复杂度与所述多个分类算法的映射关系。

由于每个分类算法对应的超参数集合巨大,因此有必要对超参数集合的范围进行缩减。按照上述精度度量的方式,训练每组训练数据对应的那一份数据复杂度与所选取的适合(精度较高)的分类算法的超参数集合的数据指标。按照所得数据指标的精度,从所述超参数集合中选取数据指标精度较高的一组参数作为目标参数,并建立该份数据复杂度与该分类算法的超参数集合中所述目标参数的映射关系。对于多组训练数据所包括的多份数据复杂度,按照上述方式,建立多份数据复杂度与每个分类算法的超参数集合的映射关系。

例如,初始化多个分类算法的集合,如选择随机森林(randomforest,rf),logistic回归(logisticregression,lr),支持向量机(supportvectormachine,svm)等三个分类算法,并分别编号为0,1,2。

选取多组不同训练数据,并分别在上述三个分类算法上进行训练,以训练所得结果的数据精度(即准确度)为度量指标,按照精度的划分获取适合各组训练数据所使用的分类算法。

根据数据复杂度度量方法,分别得到各组训练数据在数据复杂度所包括的十二个维度下的指标。如下表1,为某一组训练数据在数据复杂度所包括的十二个维度表征下,分别在上述三个分类算法上进行训练的数据集合。

表1

对表1中各组训练数据在数据复杂度所包括的十二个维度下的数据集合按照精度进行划分,选择该组训练数据对应的数据复杂度所适合(对应精度较高)的分类算法,并建立该份数据复杂度与该分类算法的映射关系。按照此方式,建立多份数据复杂度与多个分类算法的映射关系。

参考同样的方法,建立各个分类算法的超参数集合和各份数据复杂度的映射关系。

根据上述训练的多份数据复杂度与多个分类算法的映射关系,对于输入的一份样本数据,获取用于表征该份样本数据特点的目标数据复杂度,即可确定所述目标数据复杂度所对应的目标分类算法;同样的,根据上述训练的多份数据复杂度与每个分类算法的超参数集合的映射关系可以确定所述目标数据复杂度所对应的目标参数。

306、根据确定的所述目标参数以及所述目标特征子集的高维稀疏特征训练所述目标分类算法,以得到分类模型。

结合图6所示,应用步骤305中通过预学习训练的数据复杂度与分类算法的映射关系以及数据复杂度与分类算法的超参数集合的映射关系,对于给定的一份样本数据的数据复杂度,通过步骤305能够确定该样本数据所选择的目标分类算法以及目标参数,根据确定的所述目标参数以及所述目标特征子集的高维稀疏特征,通过集成学习方法(例如使用bagging(bootstrapaggregating)算法或者boosting(adaptiveboosting)算法)训练所述目标分类算法,并最终输出分类模型。应用该分类模型能够提高数据分析效率。

本申请通过从样本数据中确定目标特征子集以减少数据计算量;利用高维稀疏化转换方法确定所述目标特征子集的高维稀疏特征以提高数据分析的精度;最后通过确定所述目标特征子集的高维稀疏特征对应的目标数据复杂度;并根据已建立的数据复杂度与分类算法的映射关系确定所述目标数据复杂度所对应的目标分类算法,以及根据已建立的数据复杂度与所述目标分类算法的超参数集合的映射关系确定所述目标数据复杂度所对应的目标参数达到优选算法以及缩小参数空间的目的;从而按照确定的所述目标参数以及所述目标特征子集的高维稀疏特征训练所述目标分类算法,以得到分类模型。应用该分类模型能够提高数据分析效率。

需要说明的是,本申请中,若无特殊说明,不限定各步骤之间的先后顺序,不限定各步骤之间的相互依赖关系。

本申请还提供了分类模型的训练装置700,该装置700可以通过图2所示的计算设备200实现,还可以通过专用集成电路(application-specificintegratedcircuit,asic)实现,或可编程逻辑器件(programmablelogicdevice,pld)实现。上述pld可以是复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld),通用阵列逻辑(genericarraylogic,gal)或其任意组合。该分类模型的训练装置700用于实现图3所示的分类模型的训练方法。通过软件实现图3所示的分类模型的训练方法时,该装置700也可以为软件模块。

分类模型的训练装置700的组织结构示意图如图7所示,包括:收发单元702和处理单元704。收发单元702工作时,执行图3所示的分类模型的训练方法中的步骤301以及步骤301中的可选方案。处理单元704工作时,执行图3所示的分类模型的训练方法中的步骤302~306以及步骤302~306中的可选方案。应注意,本申请中,处理单元704也可由如图2中所示的处理器202实现,收发单元702也可由如图2中所示的收发器206实现。

上述装置的相关描述可以对应参阅方法实施例部分的相关描述和效果进行理解,本处不做过多赘述。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1