Créer un pipeline de machine learning

Analyzing IoT Data in Python

Matthias Voppichler

IT Developer

Pipeline

  • Transformer
    • Conversion
    • Mise à l'échelle
  • Estimateur
    • Modèle
Analyzing IoT Data in Python

Créer un pipeline

from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline

# Initialize Objects sc = StandardScaler() logreg = LogisticRegression()
# Create pipeline pl = Pipeline([ ("scale", sc), ("logreg", logreg) ])
Analyzing IoT Data in Python

Examiner le pipeline

pl
Pipeline(memory=None,
         steps=[('scale', StandardScaler(copy=True, with_mean=True, with_std=True)), 
                ('logreg', <class 'sklearn.linear_model.logistic.LogisticRegression'>)])
pl.fit(X_train, y_train)

print(pl.predict(X_test))
[0 0 1 1 0 1 1 0 0]
Analyzing IoT Data in Python

Enregistrer le modèle

import pickle

with Path("pipeline_model.pkl").open("bw") as f: pickle.dump(pl, f)
Analyzing IoT Data in Python

Charger le modèle

import pickle
with Path("pipeline_model.pkl").open('br') as f:
    pl = pickle.load(f)

pl
Pipeline(memory=None,
     steps=[('scale', StandardScaler(copy=True, with_mean=True, with_std=True)), 
             ('logreg', LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
          intercept_scaling=1, max_iter=100, multi_class='warn', n_jobs=None, penalty='l2', 
          random_state=None, solver='warn', tol=0.0001, verbose=0, warm_start=False))])

À utiliser avec prudence

NE dé-sérialisez pas des fichiers non fiables : cela peut exécuter du code malveillant.

Analyzing IoT Data in Python

Passons à la pratique !

Analyzing IoT Data in Python

Preparing Video For Download...