Modelreview en -vergelijking

CTR voorspellen met Machine Learning in Python

Kevin Huo

Instructor

Modelreview

from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.neural_network import MLPClassifier
  • Logistische regressie: lineaire classifier met beslissingsgrens
  • Beslisbomen: boomvormige voorwaarden
  • Random forests: ensemble van beslisbomen
  • Neurale netwerken (MLP's): lagen met lineaire combinaties van features en een niet-lineaire activatiefunctie
CTR voorspellen met Machine Learning in Python

Modelimplementatie

Overeenkomsten
  • Featuretransformatie en regularisatie
  • Fitten met classifier.fit(X_train, y_train)
  • Voorspellen met predict_proba() en predict()
Verschillen
  • Beslisbomen: max_depth, min_samples_split
  • Random forests: n_estimators, oob_score
  • Logistische regressie: fit_intercept, class_weight
  • Neurale netwerken: hidden_layer_sizes, max_iter
CTR voorspellen met Machine Learning in Python

Modelevaluatie

  • Belangrijkste evaluatiemetrics:
    • Confusion matrix: confusion_matrix(y_test, y_pred)
    • Precisie: precision_score(y_test, y_pred)
    • Recall: precision_score(y_test, y_pred)
    • F-beta-score: fbeta_score(y_test, y_pred, beta = 0.5)
    • AUC van ROC-curve: roc_auc_score(y_test, y_score[:, 1])
CTR voorspellen met Machine Learning in Python

Belangrijkste voor- en nadelen van neurale netwerken

Voordelen

  • Schaalbaar met data
  • Minder feature engineering nodig
  • Beter overdraagbaar tussen domeinen

Nadelen

  • Minder krachtig bij kleine datasets
  • Moeilijker te interpreteren
  • Rekenintensiever en duurder
CTR voorspellen met Machine Learning in Python

Laten we oefenen!

CTR voorspellen met Machine Learning in Python

Preparing Video For Download...