机器学习基础模型概述
整理自《python机器学习及实践》
1 监督学习经典模型
1.1 分类模型
- 二分类
- 多类分类
- 多标签分类
e.g.
肿瘤良恶性预测、
手写数字识别、
灾难者生还Titanic、
新闻分类、
物种鉴定。
1.1.1 线性分类器
假设特征和分类存在线性关系,通过累加各个维度特征与权重的乘积来帮助类别决策。
通过logistic函数将f映射到01区间,逻辑斯蒂回归模型(logistic Regression)
【e.g. 肿瘤良恶性分类】
(为了学习到模型的参数w和b,普遍采用一种精确计算的解析算法和一种快速估计的随机梯度上升算法)
三种评价指标:
准确性 Accuracy
精确率 Precision
召回率 Recall
F1指标(计算上两个指标的调和平均数)
1.1.2 支持向量机(分类)
关注:如何最大限度的为未知数据提供足够的预测空间
根据训练样本分布,找到所有线性分类器中最佳的那一个
【e.g. 手写题数据分类】
进一步指出:召回率、准确率和F1指标最先适用于二分类任务,在此多分类中,可将其看作某一类和非某一类的二分类(共十个),分别计算三个指标
1.1.3 朴素贝叶斯
朴素贝叶斯会考察每一维度被分类的条件概率,从而对特征向量进行分类。基本数学假设:这些维度上的特征被分类的条件概率之间是相互独立的。
【e.g. 互联网新闻分类、垃圾邮件筛选、海量互联网文本分类任务】
优点:较强的特征条件独立假设,使得模型预测所需要估计的参数规模从幂指数量级到线性量级减少
1.1.4 K临近(kNN)
计算距离最近的k个样本,随着k的不同,分类器的结果可能不同
【e.g. 鸢尾花数据集】
1.1.5 决策树
【e.g. Titanic之灾】
1.1.6 集成模型(回归)
随机森林算法 Random Forest Classifier
【e.g. Titanic之灾】
同时搭建多个分类模型,少数服从多数。随即森林中有多个决策树
-
1.2 回归模型
与分类变量不同,预测目标为连续变量
1.2.1线性回归器
预测目标时,我们希望线性回归目标模型最小二乘预测的损失 L (w,b) ,比较常见的目标优化式如下
(为了学习到模型的参数w和b,普遍采用一种精确计算的解析算法和一种快速估计的随机梯度下降算法)
【e.g. 美国波士顿地区房价预测】
1.2.2 支持向量机(回归)
-
1.2.3 K临近(回归)
-
1.2.4 回归树
回归树的节点分裂策略与决策树有一定相似之处,但回归树的节点是一个个具体的值,最终返回的是“一团”训练数据的均值。
总结——树模型特点:
优点:
1. 可以解决非线性特征的问题
2. 树模型不要求对特征标准化和统一量化,即数值型和类别型特征都可以直接用于树模型的构建和预测过程中
3. 因为上述原因,树模型也可以直接地输出决策过程,使得预测结果具有可解释性
缺陷:
1. 因为可以解决复杂的线性问题,更容易因为搭建模型的复杂而丧失对新数据预测的精度(泛化力)
2. 树模型从上到下的预测结构会因为数据细微的更改而发生较大的结构变化,因此预测稳定性较差
3. 依托训练模型搭建最佳树模型是NP难问题,即在有限的时间内无法找到最优解的问题,用贪婪算法只能找到一些次优解,这也是我们为什么搭建集成模型的原因,在多个次优解模型中寻找的更高的模型性能
1.2.5 集成模型(回归)
极端随机森林 Extremely Randomized Trees(随机森林的一个变种):极端随机森林在构建一棵树分裂节点(node)时,不会任意地选取特征;而是先随机选取一部分特征,然后利用信息熵(Information Gain)和基尼不纯性(Gini Impurity)等指标挑选最佳的节点特征
2无监督学习经典模型
2.1 数据聚类
2.1.1 K均值算法(K-means)
原理:
1. 首先,随机布设K个特征空间内的点作为初始的聚类中心
2. 然后,对于根据每个数据的特征向量,从K个聚类中心中寻找距离最近的一个,并且把数据标记为属于这个聚类中心
3. 接着,在所有数据都被标记过聚类中心之后,根据这些数据新分配的类簇,重新对K个聚类中心做计算
4. 如果一轮下来所有的数据从属的聚类中心与上一次分配的类簇没有变化,那么迭代可以停止,否则继续2步骤循环
如何评估聚类算法的性能:
1. 如果用来评估的数据本身具有正确类别的信息,那么就使用Adjusted Rand Index (ARI),ARI指标与分类问题中计算准确性Accuracy的方法类似,同时兼顾了类簇无法和标记一一对应的问题。
2. 如果用来评估的数据没有所属类别,那么我们使用轮廓系数Silhouette Coefficient来度量聚类结果的质量。轮廓系数兼顾了聚类的凝聚度Cohesion和分离度Separation(计算公式及详情P85)
K-means的两大缺陷:
1. 容易收敛到局部最优解
2. 需要预先设定簇的数量
2.2 特征降维
特征降维是无监督学习的另一个应用,目的有二
1. 在实际项目中有维度很高的训练样本,而往往又无法接住自己的领域知识人工建立有效特征
2. 在数据表现方面,我们无法肉眼观察超过三个维度的特征
2.2.1 主成分分析(PCA分析)
将高维特征压缩到低维,在辅助图像识别方面有突出表现(矩阵的秩、多样性,详见P92)