機械学習記9日目 ~ 散布図をプロットしてみる
ここで、k近傍法のデータセットを散布図でプロットして、可視化してみます。irisデータセットの4つの特徴量(がく片の長さと幅、花弁の長さと幅)から、品種の分類ができそうか目視で確認します。
ここで、irisデータセットの散布図をプロットするコードを調べていると「mglearn」というライブラリを使ってカラーマップを指定している例が見つかりました。
mglearnは、matplotlibのヘルパーライブラリーのようですが、Anacondaには含まれていません。そこで、Anaconda Promptから「pip」を使ってインストールしておきます。
Anaconda Promptを起動して、「pip install mglearn」とコマンドを入力します。
インストールできたら、Jupyter Notebookに戻り、mglearnをインポートします。散布図のプロットには、matplotlib.pyplotを使うので一緒にインポートします。
X_train(訓練用データ)からDataFrameを作成します。
それでは、データセットを散布図でプロットします。プロットデータの生成には、pandas.plottingのscatter_matrixを使います(図2)。
scatter_matrix関数を使うと、一連の変数のペアプロットを作成して散布図にすることができます。なお、カラーマップの指定では、ラベルごとにmglearnの3色で着色しています。
それでは、scatter_matrix関数をインポートして散布図を表示してみます。
図2のように表示されます。3種類の品種(Setosa, Versicolour, Verginica)がラベルにしたがって色が付けられ、がく片と花弁の測定結果で分離しています。これなら、3つのクラスにグループ分けすることができそうです。