神经网络训练中的训练集、验证集以及测试集合
2014-03-18 10:55
176 查看
1:在NN训练中我们很常用的是训练集合以及测试集合,在训练集合上训练模型(我个人认为模型就是训练的方法以及对应的参数值,更偏重于参数值吧),训练好之后拿到测试集合上验证模型的泛华(就是该模型可以拿去实战的效果)的能力。
2:但是对于上述情况,举个例子,比如是在训练一个多层网络,我们用类似minFUNC的方法来训练,那么这个优化包会直接根据我们的输入直接迭代出来一个很好地结果了,此时模型就训练好了。但是如果运用SGD这些方法去训练的话,到底迭代多少次算好?有时候可能也不收敛,只是中间过程中的一个参数值是效果最好的,那我们如何知道这个参数值?
3:个人认为有了验证集,真的很适合来使用SGD来训练,在训练过程中,比如训练了一个epoch,那么来把训练好的参数用于验证集上,然后保存在验证集合上的精度,只要改精度满足一定条件,那么训练就可以终止。
4:关于训练集、验证集以及测试集合的选择,这个网上资料很多,不在这里说了。
补充一个伪代码:
2:但是对于上述情况,举个例子,比如是在训练一个多层网络,我们用类似minFUNC的方法来训练,那么这个优化包会直接根据我们的输入直接迭代出来一个很好地结果了,此时模型就训练好了。但是如果运用SGD这些方法去训练的话,到底迭代多少次算好?有时候可能也不收敛,只是中间过程中的一个参数值是效果最好的,那我们如何知道这个参数值?
3:个人认为有了验证集,真的很适合来使用SGD来训练,在训练过程中,比如训练了一个epoch,那么来把训练好的参数用于验证集上,然后保存在验证集合上的精度,只要改精度满足一定条件,那么训练就可以终止。
4:关于训练集、验证集以及测试集合的选择,这个网上资料很多,不在这里说了。
补充一个伪代码:
for each epoch for each training data instance propagate error through the network adjust the weights calculate the accuracy over training data for each validation data instance calculate the accuracy over the validation data if the threshold validation accuracy is met exit training else continue training
相关文章推荐
- 神经网络训练中的训练集、验证集以及测试集合
- 神经网络训练中的训练集、验证集以及测试集合
- 机器学习----训练集、验证集、测试集
- 机器学习数据集划分-训练集,验证集,测试集
- faster-rcnn训练和测试自己的数据(VGG/ResNet)以及遇到的问题
- tiny-yolo训练测试(coco训练集混合自己的voc训练集)--20170829
- 机器学习之训练集_验证集_测试集
- OCR开源代码以及OCR公开训练测试数据集汇总
- caffe搭建以及初步学习--win7-vs2013-gtx650tiboost-cuda8.0-cifar10训练和测试-2-完整解决方案cifar10_full_solver.prototxt
- 用tensorflow框架和Mnist手写字体,训练cnn模型以及测试一张手写字体
- KNN 算法的python实现 迭代训练方式,将最近的测试样例作为训练样例扩大训练集
- 【deeplearning.ai笔记第二课】1.1 训练集,验证集和测试集
- 训练集,验证集,测试集
- Ubuntu14.04+caffe+cuda7.5 环境搭建以及MNIST数据集的训练与测试
- 交叉验证与训练集、验证集、测试集
- Java学习之训练---求数组的交集、并集以及只在A数组中出现的子串集合
- caffe学习之二----mnist集合训练及其测试
- 神经网络-训练集 验证集 测试集
- TensorFlow识别复杂验证码以及搭建生产环境(6)—— 训练与测试
- 机器学习之训练集_验证集_测试集