始める無料で始める

最良モデルとそのハイパーパラメータ

これでクロスバリデータ cv を作成できたので、Spark にデータを渡し、ALS アルゴリズムを当てはめ、param_grid のハイパーパラメータの組み合わせを試して、RMSE が最小となる値を特定させます。残念ながら、ここでは完了までに時間がかかりすぎますが、参考までに手順は次のとおりです。

# 'train' データセットにクロスバリデータを当てはめる
model = cv.fit(train)

# 上で作成した cv モデルから最良モデルを取り出す
best_model = model.bestModel

このコードは別途実行されており、best_model は特定されて保存済みです。与えられたコマンドを使って、モデルのパラメータを取り出しましょう。

この演習はコースの一部です

PySpark で作る Recommendation Engines

コースを見る

演習の手順

  • type(best_model) を出力して、ハイパーパラメータの候補から作成された ALS モデルが完成していることを確認しましょう。後続の出力と整合させるため、ここでは print 文が必要です。
  • best_modelrank を、best_model に対して .getRank() メソッドを呼び出して取得しましょう。
  • best_modelmaxIter を、best_model に対して .getMaxIter() メソッドを呼び出して取得しましょう。
  • best_modelregParam を、best_model に対して .getRegParam() メソッドを呼び出して取得しましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Print best_model
print(____)

# Complete the code below to extract the ALS model parameters
print("**Best Model**")

# Print "Rank"
print("  Rank:", best_model.get____())

# Print "MaxIter"
print("  MaxIter:", best_model.get____())

# Print "RegParam"
print("  RegParam:", best_model.get____())
コードを編集して実行