validation
Cross Validation
-
什么是Cross Validation?
假设目前已有的数据集全集为D,从中选出一部分作为交叉验证集。
其余集作为训练集,将已有的模型在训练集上训练,在验证集上得到,再轮换选出另一部分作为验证集,重复。得到,对模型同样操作,得到,最终选出最小的模型A,在全集上训练,得到最终的矩 g 。
-
为什么需要Cross Validation?
我们已经有了很多的机器学习模型,linear regression,PLA,Pocket,Logistic,同时每种模型又有各种超参数,是否加regularization,learning-rate,Logistic的维数,从中如何选择合适的模型成了重点,因此需要一种评判优劣的标准,如果都在全集上训练,测试,可能无法做到泛化。而留出一部分未被污染的数据作为测试,更客观。
-
如何使用Cross Validation?
- 将全集分为几部分,常常分为5或10.
- 选出一部分作为验证集,取一个模型在其余数据上训练。
- 在验证集上得到
- 轮流去其余部分作为验证集,重复 b,c
- 得到对应于该模型的
- 对于其余模型,重复a, b, c, d, e
- 比较所有模型的 选出最小的作为最终模型 .
- 在全集上训练,得到合适的参数。确定最终的矩 g .
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment