一种适用于高维大数据集的数据分类方法与流程

本发明属于计算机技术领域,更进一步涉及数据分类技术领域中一种适用于高维大数据集的数据分类方法。本发明可用于高维大数据的分类,以提高数据分类的准确率。

背景技术:

在过去的二十年里,人类收集、存储、传输、处理数据的能力取得了飞速提升,人们积累了越来越庞大和复杂的数据,因此,能有效对数据进行分析和利用的计算机算法是现今迫切需要的。同时,高维大数据量和稀疏冗余的特征使得数据挖掘的难度不断增大,一些传统的机器学习算法已经不能取得较好的效果或难以适用于当前的场景,这导致了高维大数据的挖掘具有很大的挑战性,也具有很大的提升空间。

浪潮电子信息产业股份有限公司在其申请的专利文献“一种基于随机森林加权距离的大规模高维数据分类方法”(申请号:201510272419.7,公开号:cn104915679a)中公开了一种大规模高维数据的分类方法。该方法首先对训练样本利用随机森林算法计算各维度特征的重要性,用维度特征重要性数值来加权标准化距离,在此基础上利用k近邻算法进行分类。该方法存在的不足之处是:k近邻算法用于大规模高维数据集时计算量过大,算法复杂度高,另外,对于现实场景下的高维稀疏数据集,传统随机森林算法收敛速度和分类精度表现不佳,导致该算法的准确率下降。

毛林、陆全华和程涛在其发表的论文“基于高维数据的集成逻辑回归分类算法的研究与应用”(科技通报,2013年12期)中提出一种大规模高维数据的分类方法。该方法首先对全部特征随机抽取多个特征集,并针对各个特征集构建多个逻辑回归模型。最后针对多个逻辑回归模型结果,利用集成学习方法进行最终预测。该方法存在的不足之处是:由于高维大数据集特征的冗余性和稀疏性,随机的特征抽取很难选到有用的特征的问题,导致多数基分类器性能不佳,算法准确率不理想,且直接进行集成学习使得基学习器相似性高,容易过拟合。

技术实现要素:

本发明的目的在于克服上述已有技术的不足,提出一种适用于高维大数据集的数据分类方法,在保证高维大数据下算法收敛速度的同时尽可能的提高分类精度。

实现本发明目的的具体思路是:依据高维稀疏数据集的特点,优化传统随机森林算法的特征选择方式,提高基决策树的分类能力及整体算法的性能。

实现本发明目的的具体步骤如下:

(1)输入训练样本数据集和测试样本数据集:

(1a)输入一个包含两种及以上类别的高维大数据集,作为训练样本数据集;

(1b)输入一个包含两种及以上类别的,与训练样本数据集特征相同的待分类的高维大数据集,作为测试样本数据集;

(2)对训练样本集进行采样:

(2a)采用自助采样法,从训练样本数据集中抽取与训练集样本数量相等的样本,作为抽样样本,放入一个采样集中;

(2b)执行30次上述采样,得到30个采样集;

(3)计算特征权重:

(3a)利用基尼指数计算公式,分别计算每个采样集对应的特征集中所有特征的基尼指数;

(3b)计算每个特征的基尼指数的倒数:

(3c)对每个特征的基尼指数的倒数进行归一化处理,得到各特征的权重值;

(4)用轮盘赌法选择特征:

(4a)按照下式,计算所有采样集中每一个特征的累积权重值:

其中,q(i)表示第d个采样集中第i个特征的累积权重值,σ表示求和操作,w(d,j)表示第d个采样集中第j个特征的权重值;

(4b)在[0,1]区间内随机选择一个均匀分布的伪随机数;

(4c)判断所选伪随机数是否小于当前采样集中第一个特征的累积权重值,若是,则执行步骤(4d),否则,执行步骤(4e);

(4d)将当前采样集中的第一个特征放入当前采样集的特征子集中;

(4e)判断所选伪随机数是否处于当前特征的累积权重值与当前特征的前一个特征的累积权重值之间,若是,则执行步骤(4g),否则,执行步骤(4f);

(4f)用当前特征的下一个特征作为当前特征,执行步骤(4e);

(4g)将当前特征放入当前采样集的特征子集中;

(4h)按照下式,计算当前采样集的特征子集的容量:

k=log2n

其中,k表示当前采样集的特征子集的容量,log2·表示以2为底的对数操作,n表示采样集的特征总数;

(4i)判断当前特征子集中的特征总数是否等于特征子集的容量,若是,执行步骤(5),否则,执行步骤(4b);

(5)构建基决策树:

采用主流方法cart决策树算法,构建30个与采样集及其特征子集对应的基决策树;

(6)获得随机森林模型在测试集上的分类结果:

(6a)利用集成公式,对30个基决策树进行集成,得到高维大数据集的随机森林模型公式;

(6b)将测试样本集输入到高维大数据集的随机森林模型中进行分类,得到分类结果;

(6c)输出分类结果。

本发明与现有方法相比具有如下优点:

第1,由于本发明通过计算特征权重,为特征选择提供依据,将基尼指数的倒数作为特征权重,权重越大,则集合的纯度越高,使得构建基决策树时能够有指导性的建树,克服了现有技术由于高维大数据集特征的冗余性和稀疏性,随机的特征抽取很难选到有用的特征的问题,使得本发明提高了高维大数据集下分类器的分类精度及收敛速度。

第2,由于本发明引入用轮盘赌法选择特征,在构建基决策树时增加了随机扰动,使得特征被选择的可能性与特征权重成正比,从而克服了现有技术直接进行集成学习使得基学习器相似性高,容易过拟合的问题,使得本发明保证了高维大数据集下分类器的稳定性和鲁棒性。

附图说明

图1为本发明的流程图。

具体实施方式

下面结合附图1,对本发明的步骤作进一步的详细描述。

步骤1,输入训练样本数据集和测试样本数据集。

输入一个包含两种及以上类别的高维大数据集作为训练样本数据集。

输入一个包含两种及以上类别的,与训练样本数据集特征相同的待分类的高维大数据集作为测试样本数据集。

步骤2,对训练样本集进行采样。

采用自助采样法,从训练样本数据集中抽取与训练集样本数量相等的样本,作为抽样样本,放入一个采样集中。

执行30次上述采样,得到30个采样集。

步骤3,计算特征权重。

利用基尼指数计算公式,分别计算每个采样集对应的特征集中所有特征的基尼指数。

所述的基尼指数计算公式如下:

其中,gini(d,i)表示第d个采样集中第i个特征的基尼指数,v表示第i个特征对第d个采样集进行分类后得到的子集总数,s表示第i个特征对第d个采样集进行分类后得到的第v个子集中的样本总数,|·|表示绝对值操作,t表示采样集的样本总数,r表示采样集的类别总数,c表示第v个子集中第r类样本的样本总数。

计算每个特征的基尼指数的倒数。

对每个特征的基尼指数的倒数进行归一化处理,得到各特征的权重。

所述的归一化处理是按照下式实现的:

其中,w(d,i)表示第d个采样集中第i个特征的权重值,g表示第i个特征的基尼指数的倒数,n表示采样集的特征总数。

步骤4,用轮盘赌法选择特征。

第1步,按照下式,计算所有采样集中每一个特征的累积权重值:

其中,q(i)表示第d个采样集中第i个特征的累积权重值,σ表示求和操作,w(d,j)表示第d个采样集中第j个特征的权重值。

第2步,在[0,1]区间内随机选择一个均匀分布的伪随机数。

第3步,判断所选伪随机数是否小于当前采样集中第一个特征的累积权重值,若是,则执行第4步,否则,执行第5步。

第4步,将当前采样集中的第一个特征放入当前采样集的特征子集中。

第5步,判断所选伪随机数是否处于当前特征的累积权重值与当前特征的前一个特征的累积权重值之间,若是,则执行第7步,否则,执行第6步。

第6步,用当前特征的下一个特征作为当前特征,执行第5步。

第7步,将当前特征放入当前采样集的特征子集中。

第8步,按照下式,计算当前采样集的特征子集的容量:

其中,k表示当前采样集的特征子集的容量,log2·表示以2为底的对数操作。

第8步,判断当前特征子集中的特征总数是否等于特征子集的容量,若是,执行步骤5,否则,执行第2步。

步骤5,构建基决策树:

采用主流方法cart决策树算法,构建30个与采样集及其特征子集对应的基决策树。

步骤6,获得随机森林模型在测试集上的分类结果:

利用集成公式,对30个基决策树进行集成,得到高维大数据集的随机森林模型公式。

所述的集成公式如下:

其中,h表示高维大数据集的随机森林模型,argmax表示取最大值操作,j表示测试样本集样本分类类别的编号,hj表示第i个基决策树关于第j个类别的预测结果。

将测试样本集输入到高维大数据集的随机森林模型中进行分类,得到分类结果。

输出分类结果。

本发明的效果可以通过以下仿真实验做进一步的说明。

1.仿真条件。

本发明仿真的硬件环境是:intelcorei7-6700@3.40ghz,8g内存;软件环境:ubuntu14.04,python3.4,pycharm2017。

2.仿真内容与结果分析。

本发明首先将训练样本数据集作为输入,分别构建基决策树个数为5,10,20,30,40,50,60的适用于高维大数据集的改进随机森林模型,然后将测试样本集分别输入训练好的改进随机森林模型,得到对应不同的基决策树个数时的模型分类准确率。

本发明的仿真实验中所采用的现有技术为传统随机森林算法rf。

本发明仿真实验结果如表1所示,表中,将基决策树个数为5,10,20,30,40,50,60时,rf和本发明方法arf在测试样本集上的分类准确率进行对比展示。

从表1的实验结果可以看出,本发明方法arf算法和对比方法rf算法在测试样本集上的分类准确率,可以得到结论:随着基决策树数目的增加,两种方法在预测集上的分类准确率都逐渐提高,并最终基本趋于稳定。arf算法在基决策树数量为10已经基本收敛,rf在基决策树数量为50时才收敛,可以看出本发明方法收敛速度更快。并且,arf算法的准确率也均高于rf算法,arf最终准确率收敛于0.98,rf准确率收敛于0.96,可以看出本发明方法分类准确率更高。

THE END
1.社区Edge AI是边缘计算的研究方向之一,它将人工智能算法和模型推送到边缘设备,使其具备处理复杂数据的能力。随着硬件的不断进步,越来越多的智能设备能够在本地进行推理和决策,而无需将数据发送到云端。Intel和NVIDIA等公司也在加速边缘计算硬件的研发,提升计算能力以应对复杂的AI任务。 https://open.alipay.com/portal/forum/post/192201027
2.向量模型降维—套娃(Mytroyoshka)表征学习此外,MRL 展现了其在跨多种模态的大规模数据集上的无缝扩展能力,包括视觉(如 ViT、ResNet)、视觉+语言(如 ALIGN)以及语言(如 BERT)。这表明 MRL 不仅适用于单一类型的模型,而且可以在不同领域和不同类型的数据上发挥作用。 MRL原理: MRL通过显式优化O(log(d))个较低维度向量的方式,在同一个高维向量内学习https://www.ctyun.cn/developer/article/623686582206533
3.行业大模型数据隐私算力瓶颈:技术应用的挑战与机遇然而,通用大模型在广泛应用的同时也暴露出一些局限性。由于其训练数据和设计目标更倾向于通用性,在解决特定行业场景中的问题时,可能存在效果不足或成本过高的情况。基于此,各行业开始探索定制化的大模型——即“行业大模型”,通过优化模型架构和训练数据,使其在特定应用场景中实现更高效、更精准的表现。例如,金融领域https://www.thepaper.cn/newsDetail_forward_29663563
4.科学网—人工智能赋能科学与工程前沿——知识与数据融合之径从哈密顿量(量子力学和牛顿力学都适用)“根知识”出发在特征工程、激活函数、网络结构等方面进行人工智能算法设计,难度有点大。但它却符合人工智能数据、任务、架构的算法逻辑,可解释性和泛化能力不是问题。 2022跳入“智能计算材料”这个领域,从哈密顿量“根知识”出发在特征工程、激活函数、网络结构等方面进行人工智https://blog.sciencenet.cn/home.php?mod=space&uid=32670&do=blog&id=1465224
5.从K近邻算法距离度量谈到KD树SIFT+BBF算法用官方的话来说,所谓K近邻算法,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例(也就是上面所说的K个邻居),这K个实例的多数属于某个类,就把该输入实例分类到这个类中。根据这个说法,咱们来看下引自维基百科上的一幅图: https://blog.csdn.net/sjyttkl/article/details/52080358
6.KNN分类算法(精雅篇)KNN算法同样存在VSM的不足, 主要表现为: (1) 对于高维文本向量样本规模较大时, 算法的时间和空间复杂度较高, 其时间复杂度为O (n*m) , n为VSM空间特征维数, m为样本集大小。 (2) 传统KNN算法的计算过程为:当新待分类样本到来时, 每次都要计算其与所有训练样本的距离 (或相似度) , 这就大大降低了算https://www.360wenmi.com/f/cnkey5561set.html
7.学习K近邻算法基础:KD树的操作腾讯云开发者社区k-d树算法可以分为两大部分,一部分是有关k-d树本身这种数据结构建立的算法,另一部分是在建立的k-d树上如何进行最邻近查找的算法。 一、Kd-树的构建 Kd-树是一个二叉树,每个节点表示的是一个空间范围。下表表示的是Kd-树中每个节点中主要包含的数据结构。 https://cloud.tencent.com/developer/article/1101877
8.机器学习篇—大厂笔试题(三)A、KNN算法中K值对分类效果影响较为显著,一般K值较大时,对噪声比较敏感。 B、朴素贝叶斯算法对缺失数据特别敏感,事先需要知道先验概率。 C、SVM算法可以解决高维问题。提高泛化性能。 D、集成学习算法存在过拟合、鲁棒性不强等问题。 KNN:如果当K的取值过小时,一旦有噪声得成分存在们将会对预测产生比较大影响。如果https://developer.aliyun.com/article/951236
9.考试12. 在机器学习中,监督学习需要标注数据进行训练。 A、正确B、错误 13. K-means算法属于有监督学习算法。 A、正确B、错误 14. 在自然语言处理(NLP)中,词向量可以表示词语的语义。 A、正确B、错误 15. 在机器学习中,过拟合是指模型在训练数据上表现良好,但在新数据上表现不佳。 A、正确B、错误 https://www.wjx.cn/xz/274346310.aspx
10.(更新版)大数据应用技能竞赛考试题库大全A、MLE可能并不存在B、MLE总是存在C、如果MLE存在,那么它的解可能不是唯一的D、如果MLE存在,那么它的解一定是唯一的答案:AC49.下列属于数值优化算法的是()。A、梯度下降法B、牛顿法C、极大似然法D、逻辑回归答案:AB50.下列关于探索型数据分析常用图表的说法,正确的有:A、绝大部分情况下使用饼图代替条形图能https://www.renrendoc.com/paper/229635448.html
11.大数据相关知识练习题题库及答案.pdf[单选题]* A 低低 B.低 ,高 C .演),低「 D.高, |W) 39 .基于数据集划分方式的不同,评估方法可以分为三种,下列 错误的是 ()[单选题]* A .交叉验证法 B.自助法 C.过滤法V D.留出法 40 .K N N 算法更 适 合于 () 的分类问题。[单选题]* A .重复时间 B. 稀 有事件V C.规则事件 https://m.book118.com/html/2022/1208/7020113066005022.shtm
12.基于维度分组降维的高维数据近似k近邻查询摘要:针对现有的高维空间近似k近邻查询算法在数据降维时不考虑维度间关联关系的问题,首次提出了基于维度间关联规则进行维度分组降维的方法.该方法通过将相关联维度分成一组进行降维来减少数据信息的损失,同时针对Hash降维后产生的数据偏移问题,设置了符号位并基于符号位的特性对结果进行精炼;为提高维度间关联规则挖掘的效率https://d.wanfangdata.com.cn/periodical/jsjyjyfz202103013
13.大数据分析的分类模型有哪些帆软数字化转型知识库K近邻算法的优点在于其简单、直观,不需要进行模型训练,因此适用于一些实时性要求较高的应用场景。然而,K近邻算法的缺点在于其对数据量和维度较为敏感,计算复杂度较高,特别是在数据量较大的情况下,分类速度较慢。 四、朴素贝叶斯 朴素贝叶斯是一种基于贝叶斯定理的分类模型,通过计算特征与类别之间的条件概率,进行分类https://www.fanruan.com/blog/article/78194/
14.基于k近邻隔离森林的异常检测摘要:异常检测是机器学习与数据挖掘的热点研究领域之一, 主要应用于故障诊断、入侵检测、欺诈检测等领域. 当前已有很多有效的相关研究工作, 特别是基于隔离森林的异常检测方法, 但在处理高维数据时仍然存在许多困难. 提出了一种新的k近邻隔离森林的异常检算法: k-nearest neighbor based isolation forest (KNIF). 该https://c-s-a.org.cn/html/2023/2/8988.html
15.OpenCVPython教程下篇Python语言这也是线性可分的。简而言之,低维空间中的非线性可分离数据更有可能在高维空间中变为线性可分离。通常,可以将d维空间中的点映射到某个D维空间$(D> d)$,以检查线性可分离性的可能性。有一个想法可以通过在低维输入(特征)空间中执行计算来帮助在高维(内核)空间中计算点积。我们可以用下面的例子来说明。https://www.isolves.com/it/cxkf/yy/Python/2022-04-27/53791.html
16.机器学习(二)之无监督学习:数据变换聚类分析主成分分析(principal component analysis,PCA)是一种旋转数据集的方法,旋转后的特征在统计上不相关。在做完这种旋转之后,通常是根据新特征对解释数据的重要性来选择它的一个子集。 算法思路: step1:找到方差最大的方向,将其标记为“成分1”(Component 1)。这是数据中包含最多信息的方向(或向量)。即,沿着这个方向https://www.flyai.com/article/516
17.GitHubcreate6/Titanic而且对于分类问题,数据偏斜不能过于严重,不同类别的数据数量不要有数量级的差距。 而且还要对数据的量级有一个评估,多少个样本,多少个特征,可以估算出其对内存的消耗程度,判断训练过程中内存是否能够放得下。如果放不下就得考虑改进算法或者使用一些降维的技巧了。如果数据量实在太大,那就要考虑分布式了。 3 特征https://github.com/create6/Titanic_data