我使用一台配置适中的机器,只有一张GPU(GeForce GTX 980 Ti,6GB)来训练Inception V3。最大批处理大小似乎约为40
。
我使用了inception_train.py
文件中指定的默认学习率设置:initial_learning_rate = 0.1
,num_epochs_per_decay = 30
和learning_rate_decay_factor = 0.16
。经过几周的训练,我能够达到的最佳准确度如下所示(大约500K-1M迭代):
2016-06-06 12:07:52.245005: precision @ 1 = 0.5767 recall @ 5 = 0.8143 [50016 examples]
2016-06-09 22:35:10.118852: precision @ 1 = 0.5957 recall @ 5 = 0.8294 [50016 examples]
2016-06-14 15:30:59.532629: precision @ 1 = 0.6112 recall @ 5 = 0.8396 [50016 examples]
2016-06-20 13:57:14.025797: precision @ 1 = 0.6136 recall @ 5 = 0.8423 [50016 examples]
在训练会话的最后阶段,我尝试了调整设置,但是准确性没有任何改善。
根据论坛中的一些帖子,我从头开始进行了新的训练会话,num_epochs_per_decay
为10,learning_rate_decay_factor
为0.001,但这有点盲目。
对于像我这样的小型硬件设置,有什么好的默认值推荐吗?