机器学习中的常用算法有:回归算法,基于实例的算法,正则化方法,决策树学习,贝叶斯方法,基于核的方法,聚类算法,降维算法等等
监督学习、非监督学习、半监督学习、弱监督学习?
监督学习就是数据集的数据与标签是一一对应的,例如逻辑回归和反向传播神经网络。
非监督学习就是只知道数据集,不知道标签,例如聚类算法,需要把没有标签的数据集分为几类。
半监督学习就是部分数据集有标签,而剩下的数据集没有标签,其中有标签的数据集可以用来训练模型去预测没有标签的数据集,例如分类算法。
弱监督学习则是只给定少量的标签信息,训练好模型,模型要给出更多的标签信息,例如图像检测中,检测出的目标需要得出更多的信息。
分类网络与回归的区别是分类是0和1,回归是0到1。
神经网络就是按照一定规则将多个神经元连接起来的网络。不同的神经网络,具有不同的
连接规则。
常用分类算法的优缺点
算点
Bayes
贝叶斯分类
1)所需估计的参数少,对于缺
失数据不敏感。
2)有着坚实的数学基础,以及
稳定的分类效率。
1)假设属性之间相互独立,这
往往并不成立。(喜欢吃番茄、
鸡蛋,却不喜欢吃番茄炒蛋)。
2)需要知道先验概率。
3)分类决策存在错误率。
Decision Tree
决策树
1)不需要任何领域知识或参数
假设。
2)适合高维数据。
3)简单易于理解。
4)短时间内处理大量数据,得
到可行且效果较好的结果。
5)能够同时处理数据型和常规
性属性。
1)对于各类别样本数量不一致
数据,信息增益偏向于那些具
有更多数值的特征。
2)易于过拟合。
3)忽略属性之间的相关性。
4)不支持在线学习。
SVM
支持向量机
1)可以解决小样本下机器学习
的问题。
2)提高泛化性能。
1)对缺失数据敏感。
2)内存消耗大,难以解释。
3)运行和调差略烦人。
19
3)可以解决高维、非线性问题。
超高维文本分类仍受欢迎。
4)避免神经网络结构选择和局
部极小的问题。
KNN
K
近邻
1)思想简单,理论成熟,既可
以用来做分类也可以用来做回
归;
2 可用于非线性分类;
3 训练时间复杂度为 O(n);
4)准确度高,对数据没有假设,
对 outlier 不敏感;
1)计算量太大
2)对于样本分类不均衡的问
题,会产生误判。
3)需要大量的内存。
4)输出的可解释性不强。
Logistic
Regression
逻辑回归
1)速度快。
2)简单易于理解,直接看到各
个特征的权重。
3)能容易地更新模型吸收新的
数据。
4)如果想要一个概率框架,动
态调整分类阀值。
特征处理复杂。需要归一化和
较多的特征工程。
Neural
Network
神经网络
1)分类准确率高。
2)并行处理能力强。
3)分布式存储和学习能力强。
4)鲁棒性较强,不易受噪声影
响。
1)需要大量参数(网络拓扑、
阀值、阈值)。
2)结果难以解释。
3)训练时间过长。
Adaboosting
1)adaboost 是一种有很高精
度的分类器。
2)可以使用各种方法构建子分
类器,Adaboost 算法提供的是
框架。
3)当使用简单分类器时,计算
出的结果是可以理解的。而且
弱分类器构造极其简单。
4)简单,不用做特征筛选。
5)不用担心 overfitting。
对 outlier 比较敏感
20
评价指标
1
)正确率
accuracy
)
正确率是我们最常见的评价指标,
accuracy =
(
TP+TN
)
/(P+N)
,正确率是被分对的样本
数在所有样本数中的占比,通常来说,正确率越高,分类器越好。
2
)错误率(
error rate)
错误率则与正确率相反,描述被分类器错分的比例,
error rate = (FP+FN)/(P+N)
,对某一
个实例来说,分对与分错是互斥事件,所以
accuracy =1 - error rate
。
3
)灵敏度(
sensitive
)
sensitive = TP/P
,表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力。
4
)特效度(
specificity)
specificity = TN/N
,表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力。
5
)精度(
precision
)
精度是精确性的度量,表示被分为正例的示例中实际为正例的比例,
precision=TP
(
/ TP+FP
)。
6
)召回率(
recall
)
召回率是覆盖面的度量,度量有多个正例被分为正例,
recall=TP/(TP+FN)=TP/P=sensitive
,
可以看到召回率与灵敏度是一样的。
7
)其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能力;
可扩展性:处理大数据集的能力;
可解释性:分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神
经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。
总计
P
’(被分为
Yes
)
N
’(被分为
No
)
P+N
8
)查准率和查全率反映了分类器分类性能的两个方面。如果综合考虑查准率与查全率,
可以得到新的评价指标
F1
测试值,也称为综合分类率:
为了综合多个类别的分类情况,评测系统整体性能,经常采用的还有微平均
F1
(
micro-averaging
)和宏平均
F1
(
macro-averaging
)两种指标。宏平均
F1
与微平均
F1
是以
两种不同的平均方式求的全局的
F1
指标。其中宏平均
F1
的计算方法先对每个类别单独计算
F1
值,再取这些
F1
值的算术平均值作为全局指标。而微平均
F1
的计算方法是先累加计算各
个类别的
a
、
b
、
c
、
d
的值,再由这些值求出
F1
值。由两种平均
F1
的计算方式不难看出,宏
平均
F1
平等对待每一个类别,所以它的值主要受到稀有类别的影响,而微平均
F1
平等考虑
文档集中的每一个文档,所以它的值受到常见类别的影响比较大。
正确率前提下,要求分类器的召回率尽量高。这样的分类器更好一点。
逻辑回归与朴素贝叶斯有什么区别?
1
)逻辑回归时生成模型,朴素贝叶斯是判别模型,所以生成和判别的所有区别它们都有。
2
)朴素贝叶斯属于贝叶斯,逻辑回归是最大似然,两种概率哲学间的区别。
3
)朴素贝叶斯需要独立假设。
4
)逻辑回归需要求特征参数间是线性的。
为什么代价函数要非负?
目标函数存在一个下界,在优化过程当中,如果优化算法能够使目标函数不断减小,根据
单调有界准则,这个优化算法就能证明是收敛有效的。
只要设计的目标函数有下界,基本上都可以,代价函数非负更为方便。
线性判别分析(
Linear Discriminant Analysis
,
LDA
)是一种经典的降维方法。
和
PCA
不考虑样本类别输出的无监督降维技术不同,
LDA
是一种监督学习的降维技术,
数据集的每个样本有类别输出。
LDA
分类思想简单总结如下:
1
)多维空间中,数据处理分类问题较为复杂,
LDA
算法将多维空间中的数据投影到一条
直线上,将
d
维数据转化成
1
维数据进行处理。
2
)对于训练数据,设法将多维数据投影到一条直线上,同类数据的投影点尽可能接近,
异类数据点尽可能远离。
3
)对数据进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定样本
的类别。
如果用一句话概括
LDA
思想,即“投影后类内方差最小,类间方差最大”。

以上为LDA(线性判别分析)算法的流程
PCA(主成分分析)
完成
PCA
的关键是
——
协方差矩阵。