Tuning degli iperparametri nel deep learning

Prevedere il CTR con il Machine Learning in Python

Kevin Huo

Instructor

Learning rate e numero di iterazioni

Esempi di learning rate

  • I pesi si aggiornano iterativamente
    • Con backpropagation
  • Un buon learning rate fa calare la loss rapidamente e poi si stabilizza
    • Linea rossa
  • Un learning rate troppo alto causa overshoot e loss molto alta
    • Linea gialla
Prevedere il CTR con il Machine Learning in Python

Scelta dei livelli nascosti

Effetto della dimensione del livello nascosto

  • Le prestazioni aumentano fino a una certa complessità, poi calano.
Prevedere il CTR con il Machine Learning in Python

Grid search

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,), ...)
Prevedere il CTR con il Machine Learning in Python

Estensioni reali

  • Batch size ed epoche sono anche iperparametri
    • Batch size per mini-batch (training a piccoli lotti) ed epoche = numero di passaggi su tutto il training set
  • L’inizializzazione dei pesi può variare e influenzare i risultati
    • Esempi: uniforme, normale, ecc.
  • Spesso si usano Keras e TensorFlow invece di sklearn
    • Per le funzioni più limitate di sklearn in confronto
Prevedere il CTR con il Machine Learning in Python

Passiamo alla pratica!

Prevedere il CTR con il Machine Learning in Python

Preparing Video For Download...