モデルの学習と予測
データを学習用とテスト用に分割したら、演習の後半では学習データを使って ALS アルゴリズムを学習します。PySpark MLlib の ALS アルゴリズムには必須パラメータとして rank(モデルの潜在因子の数)と iterations(反復回数)があります。ALS モデルを学習したら、テストデータから評価値を予測できます。このために、テストデータセットから user と item の列を渡し、最後に predictAll() の出力から 2 行のリストを返してください。
SparkContext sc、training_data、test_data はすでにワークスペースで利用可能です。
この演習はコースの一部です
PySparkで学ぶBig Data入門
演習の手順
- 学習データと設定したパラメータ(
rank= 10、iterations= 10)で ALS アルゴリズムを学習します。 - テストデータの 3 列目である
rating列を落とします。 - テストデータから評価値を予測してモデルを検証します。
- 予測された評価のうち 2 行のリストを返します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create the ALS model on the training data
model = ALS.____(____, rank=10, iterations=10)
# Drop the ratings column
testdata_no_rating = test_data.___(lambda p: (p[0], ____))
# Predict the model
predictions = model.____(testdata_no_rating)
# Return the first 2 rows of the RDD
predictions.____(2)