機械学習で分類してみよう

AIネタ

scikit-learnを使って分類

  1. scikit-learnのデータセットの特徴を知ろう
  2. アヤメ(IRIS)とは
  3. アヤメを実際に分類してみよう

sciket-learnのデータの特徴

教師データのデータ部分(data)とラベル(target)が最初から別れている
まず dir(データ)でデータの概要を把握できる
data target feature_names descr など共通の属性
機会学習が練習できるようなデータが選ばれている

アヤメ(IRIS)とは

ガクの幅と長さ、花びらの幅の長さの4種類の情報で3種類に分類できる

すべて長さで表される整ったデータなので事前加工が必要ない

いろいろな分類問題の演習に最適

アヤメ(IRIS)を実際に分類してみよう

Sciket-learnのインポートとIrisデータ作成

from sklearn import datasets.load_iris
iris = load_iris()

訓練データとテストデータにシャッフルして分割

from sklearn.model_selection import train_test_split
xtest,xtrain,ytest,ytrain = train_test_split(iris.data,iris.target,random_state=0)

SVC (サポートベクトル分類器)で分類

from sklearn import svm
#訓練データで学習
model = svm.SVC() model.fit(xtrain,ytrain)
#テストデータでどれくらい正答だったか計算
model.score(xtest,ytest)

他の分類器でも試してみよう!

#KneighborsClassifier
from sklearn.neighbors import KNeighborsClassifier
model = KneighborsClassifier(n_neighbors=1)