Ajuste de hiperparâmetros em deep learning

Prevendo CTR com Machine Learning em Python

Kevin Huo

Instructor

Taxa de aprendizado e número de iterações

Exemplos de taxas de aprendizado

  • Pesos são atualizados iterativamente
    • Usa retropropagação
  • Uma boa taxa de aprendizado faz a loss cair rápido e estabilizar
    • Linha vermelha
  • Taxa muito alta causa “overshoot” e loss muito alta
    • Linha amarela
Prevendo CTR com Machine Learning em Python

Escolhendo camadas ocultas

Efeito do tamanho da camada oculta

  • Desempenho sobe até certo nível de complexidade e depois cai.
Prevendo CTR com Machine Learning em Python

Busca em grade

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,), ...)
Prevendo CTR com Machine Learning em Python

Extensões no mundo real

  • Batch size e epochs também são hiperparâmetros
    • Batch size é para mini-batch (treino em lotes pequenos) e epochs são o número de passagens por todo o treino
  • A inicialização dos pesos varia e afeta os resultados
    • Exemplos: distribuição uniforme, normal, etc.
  • Keras e TensorFlow são mais usados que sklearn
    • Devido à funcionalidade limitada do sklearn em comparação
Prevendo CTR com Machine Learning em Python

Vamos praticar!

Prevendo CTR com Machine Learning em Python

Preparing Video For Download...