Dask を使って線形モデルを学習する
Dask を使うと、メモリに収まりきらない巨大なデータセットでも Machine Learning モデルを学習できます。データの読み込み、前処理、学習を複数のスレッドやプロセス、さらには複数のコンピュータに分散させることができます。
あなたは、これまでの章で使った Spotify データセットを用いて、楽曲の人気度を予測する Machine Learning モデルを学習する役割を担当しています。データはすでに遅延評価の Dask DataFrame として読み込まれています。入力変数は dask_X にあり、楽曲のテンポやダンスしやすさなどの数値列が含まれます。目的変数は dask_y にあり、各楽曲の人気度スコアです。
この演習はコースの一部です
Pythonで学ぶDaskによる並列プログラミング
演習の手順
sklearn.linear_modelからSGDRegressorクラスを、dask_ml.wrappersからIncrementalクラスをインポートします。SGDRegressorを使って線形回帰モデルを作成します。Incrementalクラスでモデルをラップし、Dask のデータセットで学習できるようにし、scoringパラメータを'neg_mean_squared_error'に設定します。- データを1回だけループして、ラップしたモデルを学習させます。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# 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.____