K折交叉验证
在不浪费太多数据的情况下,精确估计真实误差而设计的,在K折交叉验证中,将原训练集拆分为样本数量为m/k的K折样本集(这里假定m/k为一整数)
对于每一折数据样本,这个算法是在其他折样本的联合样本上训练,然后由这一折样本上估计出输出的误差。最终,所有误差的平均即为真实误差的估计。
特殊情形k=m,这里m表示样本数量,这种方法称为留一验证法(LOO)
训练--验证--测试拆分
将数据样本拆分为3个数据集合,第一个数据集合用于训练我们的算法,第二个数据集合用于模型的选择的验证数据集合。选择最优模型后,我们在第三个
数据集上测试输出预测器的性能,第三个数据集我们称为测试数据集。测试集上的测试结果被用于估计学习预测器的真实误差。
如果机器学习失败了,我们应该做些什么呢
个人总结如下:
1.增加样本量
2.改变假设类
3.扩大假设类
4.减少假设类
5.彻底改变它
6.改变数据的特征表示
7.改变学习参数
8.应用学习规则改变优化算法