因此,我正在学习如何使用Tensorflow对自定义数据集的Inception-v3模型进行微调。
我找到了两个与此相关的教程。一个是关于"How to Retrain Inception's Final Layer for New Categories“的,另一个是”Train your own image classifier with Inception in TensorFlow with Fine tuning“的。
我在虚拟机上做了第一个再培训教程,只花了2-3个小时就完成了。对于相同的flowers数据集,我正在GPU上做第二个微调教程,大约花了一整天的时间进行训练。
再培训和微调有什么区别?
我的印象是,两者都涉及到使用预先训练的初始v3模型,删除旧的顶层,并在花朵照片上训练新的顶层。但我的理解可能是错误的。
发布于 2017-07-17 14:04:29
通常在ML文献中,我们称之为微调过程:
=要素提取器图层+分类层
这允许从特征提取层权重的良好配置开始,从而在短时间内达到最佳值。
您可以将微调视为一种使用非常好的权重初始化方法开始新训练的方法(尽管您必须初始化新的分类层)。
相反,当我们谈论模型的重新训练时,我们通常指的是以下过程:
为了生成想要首尾相连( classify
在这种情况下,您不会像上面那样从一个良好的起点开始,而是从解决方案空间中的一个随机点开始。
这意味着您必须训练模型更长的时间,因为初始解决方案不如预先训练的模型提供的初始解决方案好。
发布于 2017-07-17 15:56:26
在重新训练模型的情况下,它比微调花费的时间要少得多,而不是更长的时间。
https://stackoverflow.com/questions/45134834
复制相似问题