论文部分内容阅读
数据挖掘是一种从大量复杂数据中,寻找、提取有用规律,形成有用模式,得到价值的过程。随着现代科技水平的发展,尤其是近年大数据概念的提出,我们正进入一个数据资源开发的时代,数据挖掘技术正得到越来越多的重视,在工业发展,医疗卫生,信息产业等诸多领域发挥着重要的作用。 KNN(K-最近邻)算法作为数据挖掘的“十大经典算法”之一,因为对复杂数据集性能优越,容易实现的特点,应用领域十分广泛。但KNN算法自身也存在着诸多缺点。例如K值如何选取便是个公开性难题,传统的K值由使用者自定义确定,但这种方法有很强的随机性,一定程度上依赖人员的经验。另外一些方法通过十折交叉法得到K值,虽然这种方法避免了K值选取的盲目性,可以确定具体的K值,但是计算量大,效率偏低,并且没有考虑到数据自身的结构特点。另外,真实的样本数据本身存在着噪声,传统的KNN算法对于实际样本存在的噪卢没有识别能力,敏感性较高,大量噪声样本的存在会影响形成模型和规则的准确性。其次,KNN算法需要做很多数据空间的转换,在进行投影变换过程中,数据本身的欧式距离会产生变化,造成的直接结果就是会改变样本之间的近邻关系,造成KNN算法进行相对距离计算时产生较大的偏差,如何保证在这种空间转换的过程中,依然能够保持数据之间相对不变的位置关系,保证近邻距离计算的准确性是一个难题。最后,传统KNN算法在使用样本时更多的是孤立的看待,忽略了他们之间存在的相关关系,数据本身的特点决定相同属性类型的样本之间存在相关关系,这种相关性的存在也保存着大量有用的信息。 为此,本文基于稀疏学习理论和流形学习理论知识,使用融合L2.1范式的最小二乘方模型重构的方法优化样本空间,自动确定KNN算法中的K值[1]。重构过程中充分利用样本间的相关关系,寻找样本之间的有用信息;本文应用的具有行稀疏性的L2.1范式,能使变换阵W具有很好的稀疏效果,具备去噪能力,并且能够选取合适的数据样本,压缩样本空间。考虑重构的过程中,投影变换时样本空间应保持数据结构近邻关系不变的问题,本文引入基于流形学习理论思想的LPP算法,以此保留数据间更多的近邻信息。本文定义这种可以通过自学习得到K值的最近邻方法为Self-Adaption KNN,简称为SA-KNN方法。本文将SA-KNN方法应用到分类和回归算法之中,并做了大量的对比试验,实验结果表明该方法比传统的KNN算法以及基于属性信息熵的Entropy-KNN算法效果更好[2]。