1.模型选择和交叉验证集
数据分为:训练集,交叉验证集,测试集
- 使用训练集练出多个模型
- 对多个模型分别用交叉验证集得出交叉验证误差(代价函数的值)
- 选取代价函数值最小的模型
- 使用3中选出的模型计算代价函数
2.诊断偏差和方差
训练集误差和交叉验证集误差近似时:偏差/欠拟合
交叉验证集误差远大于训练集误差时:方差/过拟合
应对方法:正则化
3.学习曲线
高偏差的/欠拟合的情况下,增加数据到训练集不一定有帮助。
高方差/过拟合的情况下,增加更多的数据可能提高算法的效果。
解决高方差:
- 获得更多的训练集
- 减少特征数量
- 增加正则化程度 λ \lambda λ
解决高偏差:
- 增加特征数量
- 增加多项式特征
- 减少正则化程度 λ \lambda λ
4.机器学习系统的设计
- 从简单快速的算法开始,实现算法并且交叉验证
- 绘制学习曲线算法,
- 误差分析
偏斜类(skewed classes)
查准率 precision:预测为真的实例是不是真的是真的
查全率 recall:预测为真的实例占所有真的是真的的实例的个数
- 正确肯定TP 预测为真,实际为真
- 正确否定TN 预测为假,实际为假
- 错误肯定FP 预测为真,实际为假
- 错误否定FN 预测为假,实际为真
查准率 P = T P T P + F P {TP} \over {TP+FP} TP+FPTP
查全率 R =
T
P
T
P
+
F
N
{TP} \over {TP+FN}
TP+FNTP
权衡查准率与查全率的方法,计算F1值(F1 score)F1值越高一般来说模型越好
F
1
s
c
o
r
e
=
2
P
R
P
+
R
F1 score ={ {2PR} \over {P+R}}
F1score=P+R2PR