多クラス分類(Multi-Class Classification)

ロジスティック回帰では、データを2つのクラスに分類する方法を学びました。しかし、実社会ではサンプルが3つ以上のクラスに分けられる問題も多くあります。

ここからのレクチャーでは、こうした問題に対応出来る、多クラス分類の方法を学びます。

1.) Iris(アヤメ)データの紹介
2.) ロジスティック回帰を使った多クラス分類の紹介
3.) データの準備
4.) データの可視化
5.) scikit-learnを使った多クラス分類
6.) K近傍法(K Nearest Neighbors)の紹介
7.) scikit-learnを使ったK近傍法
8.) まとめ

Step 1: Iris(アヤメ)のデータ

機械学習のサンプルデータとして非常によく使われるデータセットがあります。 それが、Iris(アヤメ)のデータ です。

このデータセットは、イギリスの統計学者ロナルド・フィッシャーによって、1936年に紹介されました。

3種類のアヤメについて、それぞれ50サンプルのデータがあります。それぞれ、Iris setosa、Iris virginica、Iris versicolorという名前がついています。全部で150のデータになっています。4つの特徴量が計測されていて、これが説明変数になります。4つのデータは、花びら(petals)と萼片(sepals)の長さと幅です。

花びら(petals)と萼片(sepals)

In [6]:
# Iris Setosa
from IPython.display import Image
url = 'http://upload.wikimedia.org/wikipedia/commons/5/56/Kosaciec_szczecinkowaty_Iris_setosa.jpg'
Image(url,width=300, height=300)
Out[6]:
In [7]:
# Iris Versicolor
from IPython.display import Image
url = 'http://upload.wikimedia.org/wikipedia/commons/4/41/Iris_versicolor_3.jpg'
Image(url,width=300, height=300)
Out[7]: