在 Tensorflow 对象检测中训练时可以更改学习率 API
Can you change your learning rate while training in Tensorflow Object Detection API
我理解收敛时降低学习率可能更好。
我的困惑是,您可以在某些步骤后仅更改配置文件中的值吗?
如果是,我应该更改哪个配置文件? train文件夹中生成的还是下载模型文件夹中的?
是否需要先导出到冻结图才能使更改生效?
在此先感谢您对我的帮助!
您必须更改下载模型文件夹中的配置文件。 train 文件夹中的配置文件只是它的一个副本。
要在训练期间降低学习率,您可以在配置文件中这样写:
optimizer {
momentum_optimizer: {
learning_rate: {
manual_step_learning_rate {
initial_learning_rate: 0.0002
schedule {
step: 900000
learning_rate: .00002
}
schedule {
step: 1200000
learning_rate: .000002
}
}
}
momentum_optimizer_value: 0.9
}
use_moving_average: false}
查看 here 以获取更多示例配置文件。
通过导出到冻结图,您可以冻结模型的所有参数,因此无法再对其进行训练。这就是为什么你只在完成训练并想使用你的模型进行推理时才冻结图形。
我理解收敛时降低学习率可能更好。
我的困惑是,您可以在某些步骤后仅更改配置文件中的值吗? 如果是,我应该更改哪个配置文件? train文件夹中生成的还是下载模型文件夹中的?
是否需要先导出到冻结图才能使更改生效?
在此先感谢您对我的帮助!
您必须更改下载模型文件夹中的配置文件。 train 文件夹中的配置文件只是它的一个副本。
要在训练期间降低学习率,您可以在配置文件中这样写:
optimizer {
momentum_optimizer: {
learning_rate: {
manual_step_learning_rate {
initial_learning_rate: 0.0002
schedule {
step: 900000
learning_rate: .00002
}
schedule {
step: 1200000
learning_rate: .000002
}
}
}
momentum_optimizer_value: 0.9
}
use_moving_average: false}
查看 here 以获取更多示例配置文件。
通过导出到冻结图,您可以冻结模型的所有参数,因此无法再对其进行训练。这就是为什么你只在完成训练并想使用你的模型进行推理时才冻结图形。