机器学习常见分类算法
朴素贝叶斯分类器(Naive Bayes)
主要思想:
朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。
贝叶斯定理:
1)优点: 在数据较少的情况下依然有效,可以处理多类别问题,接受大量数据训练,查询时具有高速度
2)缺点: 难以满足输入特征之间相互独立的前提
支持向量机(SVM)
主要思想:
支持向量机是一种二类分类模型,他的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;支持向量机还包括核技巧,这使它成为实质上的非线性分类器。
图1 WEKA 中的SMO MarginCurve图像
图2 WEKA 中的SMO混淆矩阵
1)优点: SVM理论提供了一种避开高维空间,简化高维空间问题的求解难度的方法,具有较好的泛化推广能力。
2)缺点: 对于每个高维空间在此空间的映射如何确定,也就是核函数,现在还没有合适的方法;传统SVM进行二次规划的时候涉及到矩阵运算,因此对大规模的训练样本难以实施。
K-最邻近(K-Nearest Neighbor)
主要思想:
K-最近邻的思路是:如果一个样本在特征空间中的 k 个最相似即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN 算法中,所选择的邻居都是已经正确分类的对象。该方法在分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。
理论证明测试集很大,k也很大时,错误率趋向于理论最小值。
1)优点:无需估计参数,无需训练;适合对稀有事件进行分类;特别适合于多分类问题
2)缺点:计算量较大;当样本不平衡时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。
逻辑斯谛回归(Logistic regression)
主要思想:
在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。
回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。
在线性回归中,数据使用线性预测函数来建模,并且未知的模型参数也是通过数据来估计。这些模型被叫做线性模型。
1)优点:计算代价不高,易于理解和实现,且若采用随机梯度上升法可以在线学习;
2)缺点:可能容易欠拟合,分类精度不高,难以找到足够的特征。
决策树(Decision trees)
主要思想(以c4.5举例):
决策树是一种基本的分类与回归方法。决策树模型呈树形结构,在分类问题中,表示基于特征对实例进行分类的过程。它可以认为是if-then规则的集合,也可以认为是定义在特征空间与类空间上的条件概率分布。
C4.5算法首先定义了“分裂信息”,其定义可以表示成:
增益率被定义为:
注:C4.5选择具有最大增益率的属性作为分裂属性
图3 WEKA中的J48决策树
1)优点:计算量相对较小,且容易转化成分类规则,挖掘出的分类规则准确性高,便于理解,决策树可以清晰的显示哪些字段比较重要。
2)缺点:由于进行深度优先搜索,所以算法受内存大小限制,难于处理大训练集;对连续性的字段比较难作出准确的预测。
神经网络(Neural networks)
主要思想(举例BP神经网络):
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层、隐层和输出层。
基本工作流程:
1、初始化网络权值和神经元的阈值(最简单的办法就是随机初始化)
2、前向传播:按照公式一层一层的计算隐层神经元和输出层神经元的输入和输出。
3、后向传播:根据公式修正权值和阈值,直到满足终止条件。
图4 SPSS Modeler中的BP神经网络
1)优点:数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题;网络能通过学习带正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力。
2)缺点:由于BP算法本质上为梯度下降法,而它所要优化的目标函数又非常复杂,使得BP算法低效,且容易出现局部极值的情况。
主题模型(LDA)
主要思想:
LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。所谓生成模型,就是说,我们认为一篇文章的每个词都是通过“以一定概率选择了某个主题,主题中以一定概率选择了文档的分类”这样一个过程得到。依据文档中的词语搭配决定文档包含的主题(一或多个),再依据文档所包含的主题对文档进行分类。
图5 LDA原理模型(1)
图6 LDA原理模型(2)
1)优点: 结合了Dirichlet分布,Gibbs Sampling,文本建模等一些知识,生成的模型较比贝叶斯文本建模,PLSA建模有时更为精确。
2)缺点: 主题个数的选取尚无足够的理论支持,多数都是依靠经验。