Ajuste de hiperparámetros en deep learning

Predicción del CTR con Machine Learning en Python

Kevin Huo

Instructor

Learning rate y número de iteraciones

Ejemplos de learning rates

  • Los pesos se actualizan iterativamente
    • Usa retropropagación
  • Una buena learning rate hace que la loss baje rápido y se estabilice
    • Línea roja
  • Una learning rate demasiado alta provoca “overshoot” y loss muy alta
    • Línea amarilla
Predicción del CTR con Machine Learning en Python

Elegir capas ocultas

Efecto del tamaño de la capa oculta

  • Mejora hasta cierto nivel de complejidad; después cae.
Predicción del CTR con Machine Learning en Python

Búsqueda en cuadrícula

param_grid = {'max_iter': [10, 20], 
              'hidden_layer_sizes': [(8, ), (16, )]}
clf = GridSearchCV(
  estimator = MLPClassifier(), param_grid = param_grid, 
  n_jobs = 4)
print(clf.best_score_)
print(clf.best_estimator_)
0.65
MLPClassifier(hidden_layer_size = (16,), ...)
Predicción del CTR con Machine Learning en Python

Extensiones en la práctica

  • Batch size y epochs también son hiperparámetros
    • Batch size para mini-batch (entrenas en lotes pequeños) y epochs para cuántas pasadas por todo el set de entrenamiento
  • La inicialización de pesos varía y afecta resultados
    • Ejemplos: uniforme, normal, etc.
  • Se usan más Keras y TensorFlow que sklearn
    • sklearn tiene funcionalidad más limitada
Predicción del CTR con Machine Learning en Python

¡Vamos a practicar!

Predicción del CTR con Machine Learning en Python

Preparing Video For Download...