始める無料で始める

音楽アーティストを推薦する パート I

この演習と次の演習では、NMF について学んだことを使って人気の音楽アーティストを推薦してみます。スパース配列 artists が与えられており、行がアーティスト、列がユーザーに対応しています。各要素は、各ユーザーが各アーティストを再生した回数を表します。

この演習では、パイプラインを構築し、配列を正規化した NMF 特徴量に変換します。パイプラインの最初のステップである MaxAbsScaler は、ユーザーがどれだけ多くの異なるアーティストを聴いていても、すべてのユーザーがモデルに与える影響を同一にするようにデータを変換します。次の演習では、得られた正規化済みの NMF 特徴量を推薦に活用します。

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

Pythonで学ぶ教師なし学習

コースを見る

演習の手順

  • 次をインポートします:
    • sklearn.decomposition から NMF
    • sklearn.preprocessing から NormalizerMaxAbsScaler
    • sklearn.pipeline から make_pipeline
  • MaxAbsScaler のインスタンスを作成し、scaler と名付けます。
  • コンポーネント数が 20NMF インスタンスを作成し、nmf と名付けます。
  • Normalizer のインスタンスを作成し、normalizer と名付けます。
  • scalernmfnormalizer を順につないだパイプラインを作成し、pipeline と名付けます。
  • pipeline.fit_transform() メソッドを artists に適用し、結果を norm_features に代入します。

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

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

# Perform the necessary imports
from ____ import ____
from ____ import ____, ____
from ____ import ____

# Create a MaxAbsScaler: scaler
scaler = ____

# Create an NMF model: nmf
nmf = ____

# Create a Normalizer: normalizer
normalizer = ____

# Create a pipeline: pipeline
pipeline = ____

# Apply fit_transform to artists: norm_features
norm_features = ____
コードを編集して実行