machine learning - software - ¿Es una buena tasa de aprendizaje para el método de Adam?
caffe vs tensorflow (2)
Estoy entrenando mi método. Obtuve el resultado de la siguiente manera. ¿Es una buena tasa de aprendizaje? Si no, ¿es alto o bajo? Este es mi resultado
lr_policy: "step"
gamma: 0.1
stepsize: 10000
power: 0.75
# lr for unnormalized softmax
base_lr: 0.001
# high momentum
momentum: 0.99
# no gradient accumulation
iter_size: 1
max_iter: 100000
weight_decay: 0.0005
snapshot: 4000
snapshot_prefix: "snapshot/train"
type:"Adam"
Esto es referencia
Con bajas tasas de aprendizaje, las mejoras serán lineales. Con altas tasas de aprendizaje, comenzarán a verse más exponenciales. Las tasas de aprendizaje más altas reducirán la pérdida más rápidamente, pero se quedan estancadas con peores valores de pérdida
La tasa de aprendizaje parece un poco alta. La curva disminuye demasiado rápido para mi gusto y se aplana muy pronto. Intentaría 0.0005 o 0.0001 como una tasa de aprendizaje básica si quería obtener un rendimiento adicional. Puede contribuir después de varias épocas de todos modos si ve que esto no funciona.
Sin embargo, la pregunta que debe hacerse es cuánto rendimiento necesita y qué tan cerca está de lograr el rendimiento requerido. Quiero decir que probablemente estés entrenando una red neuronal para un propósito específico. A menudo puede obtener un mayor rendimiento de la red al aumentar su capacidad, en lugar de ajustar la tasa de aprendizaje, que de todos modos es bastante buena si no perfecta.
Puede comenzar con una tasa de aprendizaje más alta (digamos 0.1) para salir de los mínimos locales y luego disminuirla a un valor muy pequeño para permitir que se calmen las cosas. Para hacer esto, cambie el tamaño del paso para decir 100 iteraciones para reducir el tamaño de la tasa de aprendizaje cada 100 iteraciones. Estos números son realmente únicos para su problema y dependen de múltiples factores, como su escala de datos.
También tenga en cuenta el comportamiento de pérdida de validación en el gráfico para ver si está sobreajustando los datos.