机器学习概述与算法介绍(二)
- 机器学习概述
- 机器学习基本概念
- 机器学习基本流程与工作环节
- 机器学习中的评估指标
- 机器学习算法一览
3. 机器学习基本流程与工作环节
3.1 机器学习应用几大环节
预测模型
image机器学习算法 / 数据
机器学习的应用工作是围绕着数据与算法展开的
3.2 机器学习不同阶段与作用
数据预处理 Preprocessing
- 特征抽取
- 幅度缩放
- 特征选择
- 维度约减
- 采样
模型评估 Evalution
- 模型选择 Model Selection
- 交叉验证 Cross-Validation
- 结果评估 Performance Metrics
- 超参选择 Hyperparameter Optimization
数据预处理 / 模型学习 / 模型评估 / 新样本预测
image要点总结
- 数据驱动方法:数据+机器学习算法 = 预测模型
- 机器学习应用阶段
- 数据预处理
- 数据采样、数据切分、特征抽取、特征选择、降维
- 模型学习
- 超参选择、交叉验证、结果评估、模型选择、模型训练
- 模型评估
- 分类、回归、排序评估标准
- 模型上线
- 数据预处理
4. 机器学习中的评估指标
4.1 机器学习的目标
imageQ: 什么模型好?
A: 泛化能力强! 能很好地适用于没见过的样本
例如,错误率低、精度高
然而,我们手上没有未知的样本......
案例 From 周志华《机器学习》
4.2 机器学习的评估方法
我们手上没有未知的样本,如何可靠地评估?
关键: 获得可靠的“测试集数据”(test set) ?
测试集(用于评估)应该与训练集(用于模型学习)“互斥”
常见方法:
- 留出法(hold-out)
- 交叉验证法(cross validation)
- 自助法(bootstrap)
1. 留出法
注意点:
- 保持数据分布一致性 (例如: 分层采样)
- 多次重复划分 (例如: 100次随机划分)
- 测试集不能太大、不能太小 (例如:1/5~1/3)
| 全 量 数 据 集 |
| 测试集 | 训练集 |
2. k折交叉验证
image典型的 10折交叉验证
3. 自助法(bootstrap)
基于“自助采样”的方法(bootstrap sampling) 别称:“有放回采样”、“可重复采样”
约有 36.8% 的样本不出现
image- 训练集与原样本集同规模
- 数据分布有所改变
包外估计(out-of-bag estimation)
- 性能度量(performance measure)是衡量模型泛化能力的数值评价标准,反映了当前问题(任务需求)
- 使用不同的性能度量可能会导致不同的评判结果
image关于模型“好坏”的判断,不仅取决于算法和数据, 还取决于当前任务需求。
比如:回归(regression) 任务常用均方误差:
image4.3 机器学习的评估度量指标
-
分类问题的常用性能度量
-
错误率:
image -
精度:
image
-
-
分类问题的常用性能度量
-
二分类混淆矩阵
image- 查准率(准确率): image
- 查全率(召回率): image
-
查准率 vs. 查全率
image- F1值 image image image
-
-
分类问题的常用性能度量
-
ROC && AUC
imageROC (Receiver Operating Characteristic) Curve [Green & Swets, Book 66; Spackman, IWML’89] Area Under ROC Curve
AUC (Area Under the ROC Curve)
AUC越大,结果越好
image image image image -
MAE(Mean Absolute Error) 平均绝对误差
image -
MSE(Mean Square Error) 均方误差
image -
RMSE(Root Mean Square Error) 均方根误差
image -
R平方
image
-
要点总结
- 机器学习目标
- 拿到有泛化能力的“好模型”
- 机器学习的评估方法
- 留出法、交叉验证法、自助法
- 机器学习的评估度量标准
- 分类问题
- 错误类、精度、召回率/准确率、混淆矩阵、F1值、AUC
- 回归问题
- MAE、MSE、RMSE、R平方
5. 机器学习算法一览
5.1 机器学习算法一览
image image5.2 机器学习算法可视化理解
不同算法在完成分类与回归问题时候,有不同的处理方式。
详见课程动态演示
image image image image image要点总结
- 机器学习算法
- 监督学习
- 分类:K最近邻、逻辑回归、朴素贝叶斯、支持向量机、树模型...
- 回归:线性回归、多项式回归、岭回归、树模型回归...
- 无监督学习
- 聚类:K-means,层次聚类、密度聚类、GMM...
- 关联规则:Fpgrowth
- 监督学习
- 机器学习算法可视化理解
- 分类问题
- 不同的算法在尝试生成不同的决策边界,从而完成分类
- 回归类问题有不同的拟合方式
- 分类问题
附 结合微专业课程的学习
数学基础
讲授具体算法时对涉及数学部分有针对的查漏补缺
算法理解
理解算法核心概念与原理,不同算法差异,不同场景与算法选择
编程基础
结合课程算法的配套案例与代码实现,巩固编程能力
动手实践
结合微专业综合应用部分,案例与机器学习应用“套路”学习
积累项目经验
组织大家积极参与数据科学比赛和讨论
附 参考文献/Reference
- Prof. Andrew Ng. Machine Learning. Stanford University
- 李航,统计学习方法,清华大学出版社,2012
- 周志华,机器学习,清华大学出版社,2016
- Scikit-learn,http://scikit-learn.org/stable/index.html