老师 请教两个问题,第一个 训练的时候出现 nan 是怎么回事 怎么调节?第二个我怎么在原有的模型基础上添加新的类别?
来源:8-5 利用DarkNet框架进行YOLOV3模型训练实操

慕用5536747
2019-01-25
写回答
1回答
-
会写代码的好厨师
2019-02-15
一般出现NAN,有可能是学习率出现问题,可以调小一些在尝试;如果还不行,那就要看一下,训练输入的数据是不是存在问题,或者是不是有脏数据。如果用tf训练的话,可以考虑梯度裁剪、梯度归一,加BN层等方法,来避免这些问题。通常在数据和网络都没问题的情况下,学习率也正确,一般不会出现这个问题。
再原有模型的基础上训练新的类别,就是fine-tuning的过程。训练新的类别是要加新的类别,还是要修改一些类别,还是去掉一些类别?如果这样的话,需要修改相应的类别映射的map。还有就是由于是分类任务,一般会有FC层,FC层在类别数量发生变化的时候,参数量也会变化,所以,这一层在funetuning的时候,一般不会用到它。如果网络没有FC,都是卷积操作的话,就不会有这个问题。这是最需要注意的地方。
00
相似问题