机器学习与数据挖掘程序员

分类问题

2017-01-19  本文已影响967人  HeartGo

数据挖掘之分类模型

判别分析是在已知研究对象分成若干类型并已经取得各种类型的一批已知样本的观测数据,在此基础上根据某些准则建立判别式,然后对未知类型的样品进行判别分析。

聚类分析则是给定的一批样品,要划分的类型实现并不知道,正需要通过局内分析来给以确定类型的。


判别分析距离判别法

基本思想:首先根据已知分类的数据,分别计算各类的重心即分组(类)的均值,判别准则是对任给的一次观测,若它与第i类的重心距离最近,就认为它来自第i类。至于距离的测定,可以根据实际需要采用欧氏距离、马氏距离、明科夫距离等。

Fisher判别法

基本思想:从两个总体中抽取具有p个指标的样品观测数据,借助方差分析的思想构造一个判别函数或称判别式

其中系数ci确定的原则是使两组间的区别最大,而使每个组内部的离差最小。

对于一个新的样品,将它的p个指标值代人判别式中求出y值,然后与判别临界值(或称分界点(后面给出)进行比较,就可以判别它应属于哪一个总体。在两个总体先验概率相等的假设下,判别临界值一般取:

最后,用F统计量来检验判别效果,若FF则认为判别有效,否则判别无效。以上描述的是两总体判别,至于多总体判别方法则需要加以扩展。Fisher判别法随着总体数的增加,建立的判别式也增加,因而计算比较复杂。



Bayes判别法

基本思想:

基本思想:假定对所研究的对象有一定的认识,即假设k个总体中,第i个总体Gi的先验概率为qi,概率密度函数为f(x)。利用bayes公式计算观测样品X来自第j个总体的后验概

时,将样本X判为总体Gh。



逐步判别法

基本思想与逐步回归法类似,采用“有进有出”的算法,逐步引入变量,每次引入一个变量进入判别式,则同时考虑在较早引入判别式的某些作用不显著的变量剔除出去。



聚类分析

聚类分析是一种无监督的分类方法,即不预先指定类别。

根据分类对象不同,聚类分析可以分为样本聚类(Q型)和变量聚类(R型)。样本聚类针对观测样本进行分类,而变量聚类则是试图找出彼此独立且有代表性的自变量,而又不丢失大部分信息。变量聚类是一种降维的方法。


系统聚类法(分层聚类法)

基本思想:开始将每个样本自成一类;然后求两两之间的距离,将距离最近的两类合成一类;如此重复,直到所有样本都合为一类为止。适用范围:既适用于样本聚类,也适用于变量聚类。并且距离分类准则和距离计算方法都有多种,可以依据具体情形选择。


快速聚类法(K-均值聚类法)

基本思想:按照指定分类数目n,选择n个初始聚类中心Zi=(i=1,2....n),计算每个观测量(样本)到各个聚类中心的距离,按照就近原则将其分别分到放入各类中;重新计算聚类中心,继续以上步骤;满足停止条件时(如最大迭代次数等)则停止。使用范围:要求用户给定分类数目n,只适用于样本聚类(Q型),不适用于变量聚类(R型)。



两步聚类法(智能聚类方法)

基本思想:先进行预聚类,然后再进行正式聚类。

适用范围:属于智能聚类方法,用于解决海量数据或者具有复杂类别结构的聚类分析问题。可以同时处理离散和连续变量,自动选择聚类数,可以处理超大样本量的数据。


模糊聚类分析

采用模糊数学语言对事物按一定的要求进行描述和分类的数学方法称为模糊聚类分析

(1)计算样本或变量间的相似系数,建立模糊相似矩阵

(2)利用模糊运算对相似矩阵进行一系列的合成改造,生成模糊等价矩阵

(3)最后根据不同的截取水平λ对模糊等价矩阵进行截取分类



遗传算法聚类

遗传算法是一种模拟自然进化的优化搜索算法,它仅依靠适应度函数就可以搜索最优解。介绍了一种基于遗传算法的聚类分析方法,采用浮点数编码方式对聚类的中心进行编码,并用特征向量与相应聚类中心的欧氏距离的和来判断聚类划分的质量,通过选择、交叉和变异操作对聚类中心的编码进行优化,得到使聚类划分效果最好的聚类中心。


SOM聚类算法

SOM神经网络是由芬兰神经网络专家Kohonen教授提出的,该算法假设在输入对象中存在一些拓扑结构或顺序,可以实现从输入空间(n维)到输出平面(2维)的降维映射,其映射具有拓扑特征保持性质,与实际的大脑处理有很强的理论联系。

SOM网络包含输入层和输出层。输入层对应一个高维的输入向量,输出层由一系列组织在2维网格上的有序节点构成,输入节点与输出节点通过权重向量连接。学习过程中,找到与之距离最短的输出层单元,即获胜单元,对其更新。同时,将邻近区域的权值更新,使输出节点保持输入向量的拓扑特征。

算法流程:

(1) 网络初始化,对输出层每个节点权重赋初值;

(2) 将输入样本中随机选取输入向量,找到与输入向量距离最小的权重向量;

(3) 定义获胜单元,在获胜单元的邻近区域调整权重使其向输入向量靠拢;

(4) 提供新样本、进行训练;

(5) 收缩邻域半径、减小学习率、重复,直到小于允许值,输出聚类结果。


灰色聚类法

灰色聚类是将聚类对象对于不同聚类指标所拥有的白化素,按几个灰色类进行归纳,以判断该聚类对象属于哪一类。其一般步骤如下:

(一)确定聚类对象和聚类指标

聚类对象记为:i∈{Ⅰ,Ⅱ,…};聚类指标为:k∈{1*,2*,…,n*};给出不同聚类对象不同聚类指标的白化数dik,构成样本矩阵D=[dik]

当各个灰类的白化值在数量上相差太悬殊时,应先作无量纲化处理。

(二)确定灰类及白化函数fkj(X)

一般取“高” 、“中” 、“低“三种灰类进行分析,记为:j∈{1,2,3}。 

fkj(djk)为第i个聚类对象的第k个指标属于第j个灰类时的白化函数值。

(三)求标定聚类权ηkj

(四)求聚类系数σij

σji为第i个聚类对象第j个灰类的聚类系数。

(五)构造聚类矩阵

(六)聚类

对于任意i,若σij*=max{σij,j=1,2,3},则说明第i个聚类对象属于第j个灰类。



神经网络分类方法

神经网络分类算法的重点是构造阈值逻辑单元。一个阈值逻辑单元是一个对象,可以输入一组加权系数的量,对它们进行求和。如果这个和达到或者超过了某个阈值,则输出一个量。比如,输入值X1, X2, ..., Xn 和它们的权系数:W1, W2, ..., Wn,求和计算出的 Xi*Wi ,产生了激发层 a = (X1 * W1)+(X2 * W2)+...+(Xi * Wi)+...+ (Xn * Wn)。其中,Xi 是各条记录出现频率或其他参数,Wi是实时特征评估模型中得到的权系数。

算法描述:

若和E都小于允许的误差,则学习过程结束,否则计算各层节点的输出偏差,进行误差反向传播,修改网络连接权值和阈值。


网络连接权值和节点阈值,经过上述过程的反复修正,逐渐趋于稳定的值。

采用BPN法的过程中需要选择的几个参数

①学习率和惯性因子

BP算法本质上是优化计算中的梯度下降法,利用误差对于权、阀值的一阶导数信息来指导下一步的权值调整方向,以求最终得到误差最小。为了保证算法的收敛性,学习率必须小于某一上限,一般取0<<1而且越接近极小值,由于梯度变化值逐渐趋于零,算法的收敛就越来越慢。在网络参数中,学习率和惯性因子是很重要的,它们的取值直接影响到网络的性能,主要是收敛速度。为提高学习速度,应采用大的。但太大却可能导致在稳定点附近振荡,乃至不收敛。针对具体的网络结构模型和学习样本,都存在一个最佳的学习率和惯性因子,它们的取值范围一般0~1之间,视实际情况而定。

②初始权值和阈值

在前馈多层神经网络的BP算法中,初始权、阈值一般是在一个固定范围内按均匀分布随机产生的。一般认为初始权值范围为-1~+1之间,初始权值的选择对于局部极小点的防止和网络收敛速度的提高均有一定程度的影响,如果初始权值范围选择不当,学习过程一开始就可能进入“假饱和”现象,甚至进入局部极小点,网络根本不收敛。初始权、阈值的选择因具体的网络结构模式和训练样本不同而有所差别,一般应视实际情况而定。

③收敛误差界值Emin

在网络训练过程中应根据实际情况预先确定误差界值。误差界值的选择完全根据网络模型的收敛速度大小和具体样本的学习精度来确定。当Emin值选择较小时,学习效果好,但收敛速度慢,训练次数增加。如果Emin值取得较大时则相反

上一篇 下一篇

猜你喜欢

热点阅读