1. 학습
  2. /
  3. 강의
  4. /
  5. Pythonで学ぶ教師なし学習

Connected

연습 문제

KMeans を使った株式のクラスタリング

この演習では、企業の株価の一日あたりの値動き(取引日ごとの始値と終値の差(ドル))を使って企業をクラスタリングします。2010 年から 2015 年までの一日あたりの値動きを格納した NumPy 配列 movements(Yahoo! Finance から取得)が与えられており、各行が企業、各列が取引日に対応します。

銘柄によって株価の水準は異なります。これを考慮するため、パイプラインの最初に Normalizer を入れてください。Normalizer は、クラスタリングを始める前に各企業の株価系列を相対的なスケールにそれぞれ変換します。

Normalizer() は、前の演習で使用した StandardScaler() とは異なる点に注意してください。StandardScaler() が(前の演習の魚のデータのような)特徴量を、平均を引いて分散を 1 にスケーリングすることで標準化するのに対し、Normalizer() は他のサンプルとは独立に、各サンプル(ここでは各企業の株価系列)を再スケーリングします。

KMeans と make_pipeline はすでにインポートされています。

지침

100 XP
  • sklearn.preprocessing から Normalizer をインポートします。
  • Normalizer のインスタンスを作成し、normalizer と名付けます。
  • KMeans のインスタンスを作成し、クラスタ数を 10 に設定して kmeans と名付けます。
  • make_pipeline() を使って、normalizer と kmeans を連結したパイプライン pipeline を作成します。
  • movements 配列に対してパイプラインを学習(fit)させます。