Utiliser Dask pour entraîner un modèle linéaire
Dask peut être utilisé pour entraîner des modèles de Machine Learning sur des jeux de données trop volumineux pour tenir en mémoire. Il permet aussi de répartir le chargement des données, le prétraitement et l’entraînement sur plusieurs threads, processus, et même plusieurs machines.
Votre mission est d’entraîner un modèle de Machine Learning qui prédira la popularité des morceaux dans le jeu de données Spotify utilisé dans les chapitres précédents. Les données ont déjà été chargées sous forme de Dask DataFrames paresseux. Les variables d’entrée sont disponibles sous dask_X et contiennent quelques colonnes numériques, comme le tempo et la « danceability » du morceau. La cible est disponible sous dask_y et correspond au score de popularité de chaque morceau.
Cet exercice fait partie du cours
Programmation parallèle avec Dask en Python
Instructions
- Importez la classe
SGDRegressordepuissklearn.linear_modelet la classeIncrementaldepuisdask_ml.wrappers. - Créez un modèle de régression linéaire
SGDRegressor. - Utilisez la classe
Incrementalpour encapsuler le modèle afin qu’il puisse être entraîné avec un jeu de données Dask, et définissez le paramètrescoringsur'neg_mean_squared_error'. - Ajustez le modèle encapsulé en ne faisant qu’un seul passage sur les données.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the SGDRegressor and the Incremental wrapper
from ____ import ____
from ____ import ____
# Create a SGDRegressor model
model = ____
# Wrap the model so that it works with Dask
dask_model = ____
# Fit the wrapped model
dask_model.____