Ladění hyperparametrů v hlubokém učení

Předpovídání CTR pomocí Machine Learning v Pythonu

Kevin Huo

Instructor

Rychlost učení a počet iterací

Příklady rychlostí učení

  • Váhy se aktualizují iterativně
    • Využívá zpětné šíření chyby
  • Dobrá rychlost učení způsobí rychlý pokles ztráty a její stabilizaci
    • Znázorněno červenou linií
  • Příliš vysoká rychlost učení způsobí „přestřelení" a velmi vysokou ztrátu
    • Znázorněno žlutou linií
Předpovídání CTR pomocí Machine Learning v Pythonu

Volba skrytých vrstev

Vliv velikosti skryté vrstvy

  • Výkon roste až do určité úrovně složitosti, poté klesá.
Předpovídání CTR pomocí Machine Learning v Pythonu

Prohledávání mřížky

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,), ...)
Předpovídání CTR pomocí Machine Learning v Pythonu

Rozšíření pro praxi

  • Velikost dávky a počet epoch jsou také potenciální hyperparametry
    • Velikost dávky slouží pro mini-dávky (trénink probíhá v malých dávkách), epochy určují počet průchodů celými trénovacími daty
  • Inicializace vah se může lišit a ovlivňovat výsledky
    • Příklady inicializací: rovnoměrné rozdělení, normální rozdělení apod.
  • Místo sklearn se obvykle používá Keras nebo TensorFlow
    • Důvodem je omezená funkčnost sklearn v porovnání s nimi
Předpovídání CTR pomocí Machine Learning v Pythonu

Pojďme si procvičit!

Předpovídání CTR pomocí Machine Learning v Pythonu

Preparing Video For Download...