@spiritnotes
2016-06-14T15:22:02.000000Z
字数 650
阅读 1634
《机器学习实践:测试驱动的开发方法》
机器学习
读书笔记
DOING
1 测试驱动的机器学习
采用测试驱动开发的充足理由:
- 能排除大量程序缺陷
- 有利于将代码准备实现的功能记录下来
充分条件与必要条件
机器学习中的风险
- 数据的不稳定性:离群点的最少化
- 欠拟合
- 过拟合
- 未来的不可预测性
为降低风险应该采取的测试
- 利用接缝测试减少数据中的不稳定因素:给出某些输入时,输出可预测
- 利用交叉验证检验拟合效果
- 通过测试训练速度降低过拟合风险:过拟合只是记录了所有数据
- 检测未来的精度和查全率漂移情况:precision和recall
2 机器学习概述
2.1 什么是机器学习
监督学习、无监督学习、强化学习
3 K近邻分类
思想:投票,取最多
如何选择K
- 猜测
- 使用启发式策略
- 当分类问题只涉及两个类时,不要设置为偶数
- 不应小于类总数+1
- 避免出现噪声,K值应足够小
- 通过算法优化
距离度量
- Minkowski距离:
- Mahalanobis距离:
利用KNN算法和OpenCV实现胡须眼镜的检测
todo
4 朴素贝叶斯分类
条件概率
贝叶斯定理
链式法则
朴素性:认为各属性之间是独立
伪计数:默认出现次数为1