Search on the blog

2015年4月30日木曜日

scikit-learn(1) SVM

 SVMでirisを識別するサンプルコード。
各カーネルのパラメータはデフォルト値を使用。

clf.fit(X, y)で学習データ(特徴ベクトル, ラベル)を渡す。
clf.score(X, y)で識別率(※このサンプルでは学習データの識別率)を計算出来る。
from sklearn import svm, datasets

iris = datasets.load_iris()
X = iris.data
y = iris.target

# linear kernel
clf = svm.SVC(kernel='linear')
clf.fit(X, y)
print clf.score(X, y)

# RBF kernel
clf = svm.SVC(kernel='rbf')
clf.fit(X, y)
print clf.score(X, y)

# polynomial kernel
clf = svm.SVC(kernel='poly')
clf.fit(X, y)
print clf.score(X, y)

# sigmoid kernel
clf = svm.SVC(kernel='sigmoid')
clf.fit(X, y)
print clf.score(X, y)
実行結果は以下のとおり。

0.993333333333
0.986666666667
0.98
0.333333333333

0 件のコメント:

コメントを投稿