一种基于凸边界的学习样本抽取方法与流程

文档序号:14451695阅读:181来源:国知局
本发明主要涉及人工智能技术,具体涉及一种基于凸边界的学习样本抽取方法。
背景技术
::随着大数据时代的来临,给数据驱动的各种智能系统的研究和设计带来了深刻的变化。尤其是人工智能的核心技术——机器学习,成为了研究的热点。而学习样本的质量,即学习样本中的缺失值、异常值、冗余样本、样本数量,都将严重影响到机器学习的性能,如何选择高质量的学习样本集合,成为一个关键的研究课题。在此问题的驱动下,本文的研究目标是提出有效地从原始数据库中抽取学习样本的新方法。学习样本的抽取技术是指对用于机器学习的学习样本进行主动选择的过程,是机器学习中一项必不可少的技术。学习样本的主动选择是选择有意义的样本,而采样,如常用的随机采样是选择代表性的样本,这二者之间是存在区别的。例如,在0-99之间有50个数据,这50个数据分布在0-49之间有1个数据0,50-99之间有49个数据。对于随机采样,数据0和其余49个数据被选择到的概率是相等,保证了样本的代表性;而对于样本抽取来说,是要选择有意义的样本,即如果数据0的存在对于原始数据集是有意义的,就要在抽取样本的过程中选择它,如果对于原始数据集是无意义、甚至对于原始数据集来说是一个噪声数据,那么在抽取样本的过程中就不会选择它。也就是,样本抽取要通过某种规则从原始数据库中选择一个具有意义的、样本数量较少但是包含信息尽可能多的子集作为机器学习的学习样本。使得在机器学习建模时的运行速度快、内存开销少,提升机器学习的效率。并且得到的模型的性能不仅比随机选择要好,而且要和使用原始训练集得到的性能差不多,甚至更好。这也是本方法的研究意义。本方法对于原始数据库中异常值的处理选择直接删除包含异常值的样本,在此之前需要对异常值样本进行识别。一般对于异常值的处理方法有如下几种:3σ探测方法、散点图、四分位数展布法。本方法对异常值的识别选用基于四分位数思想的箱型图对异常值进行检测。它的优势在于不需要数据服从某种特定的分布,它是根据实际的数据来绘制箱型图的。在箱型图中,异常值定义为大于q1+1.5iqr或小于q2-1.5iqr的值,其中iqr为四分位距。据此定义可知,箱型图判断异常值以四分位数和四分位距为标准,而四分位数具有一定的耐抗性,不会被异常值扰动,从而使用箱型图来识别异常值比较客观。在凸几何中,凸集是在凸组合下闭合的仿射空间的子集。更具体地说,在欧氏空间中,凸集是对于集合内的每一对点,连接该对点的直线段上的每个点也在该集合内。例如,立方体是凸集,但是任何中空的或具有凹痕的例如月牙形都不是凸集。将凸集合的概念应用到样本抽取中,有如下定义:其中xi代表数据集中的样本。对于凸集合的边界作如下定义:技术实现要素:本发明的目的在于提出一种基于凸边界的学习样本抽取方法。首先将原始数据库划分为多个子集,在每个子集上根据凸集合的定义及性质构造凸集合,并选择在其边界上的样本,将多个子集的边界样本进行合并,最终的结果则为学习样本。此方法在约减数据库规模的同时,保证了抽取到的学习样本可以代表原始数据库进行后续的机器学习过程。本发明的技术方案如下:步骤1,数据集合的预切割:对输入的数据库进行预处理,包括缺失值、异常值的处理。对原始数据库进行预处理的方法为,去除含缺失值的记录,利用箱型图检测异常值并去除,根据数据集合类别进行预切割工作。步骤2,构造学习样本凸集合:将每类子集中心化,形成凸集合,依象限用hash表构成样本索引。对步骤1所得到的预处理后的数据子集构造凸集合的方法为,对于步骤1得到的每个数据子集找到其中心点,进行坐标变换。在每个经过坐标变换的子集中,依象限用hash表构成样本索引,统计包含在此子集中每个样本所在的象限,并统计有样本存在的象限。步骤3,边界样本抽取:在凸集合的象限边界上抽取样本。根据步骤2中统计的每个凸集合中包含样本的象限,在每个象限中选择距原点最远的样本作为此凸集合的一个边界样本。合并所有凸集合的边界样本,得到的边界样本集合作为最终用于机器学习的学习样本。附图说明读者在参照附图阅读了本发明的具体实施方式以后,将会更清楚地了解本发明的各个方面。其中,图1为本发明基于凸边界的学习样本抽取方法的流程图;图2为20个原始训练集与抽取到的边界样本的数据量对比图;图3为原始训练集与边界样本在naivebayes分类器上的准确率对比图;图4为原始训练集与边界样本在j48分类器上的准确率对比图;图5为原始训练集与边界样本在decisiontable分类器上的准确率对比图;图6为原始训练集与边界样本在adaboostm1分类器上的准确率对比图;图7为原始训练集与边界样本在libsvm分类器上的准确率对比图;图8为应用在五种分类算法上的效率分析图,其中效率的定义为:具体实施方式步骤1,数据集合的预切割:对输入的数据库进行预处理,包括缺失值、异常值的处理。对原始数据库进行预处理的方法为,去除含缺失值的样本;在每个类别中,利用箱型图在每个属性中检测异常值,删除其所在的样本;进行归一化操作;根据数据集合类别标识进行预切割工作,每一类的所有样本为一个数据子集。步骤2,构造学习样本凸集合:将每类子集中心化,形成凸集合,依象限用hash表构成样本索引。对步骤1所得到的预处理后的数据子集构造凸集合的方法为,对于步骤1得到的每个数据子集进行中心化:找到中心点,将其作为坐标原点,进行坐标变换,得到新的坐标系,形成凸集合。在每个经过坐标变换的子集中,依象限用hash表构成样本索引:对包含在此子集中每个样本进行标注,标注内容为此样本在新坐标系中所在的象限。最后,统计在每个子集中有样本存在的象限是哪些。步骤3,边界样本抽取:在凸集合的象限边界上抽取样本。根据步骤2中统计的每个凸集合中包含样本的象限,在每个象限中选择距原点最远的样本作为此凸集合的一个边界样本。因为在经过坐标变换后,坐标原点就相当于原来数据子集的中心,在每个象限中距离原点最远的那些样本,可以构成次凸集合的边界,根据凸集合的性质,这些边界样本可以代表原来子集的所有样本。最后,合并所有凸集合的边界样本,得到的边界样本集合作为最终用于机器学习的学习样本。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1