ロジスティック回帰とSVMの適用

Python で学ぶ線形分類器

Michael (Mike) Gelbart

Instructor, The University of British Columbia

LogisticRegressionの使い方

from sklearn.linear_model import LogisticRegression
lr = LogisticRegression()

lr.fit(X_train, y_train)
lr.predict(X_test)
lr.score(X_test, y_test)
Python で学ぶ線形分類器

LogisticRegressionの例

import sklearn.datasets
wine = sklearn.datasets.load_wine()

from sklearn.linear_model import LogisticRegression lr = LogisticRegression() lr.fit(wine.data, wine.target)
lr.score(wine.data, wine.target)
0.966
lr.predict_proba(wine.data[:1])
array([[9.966e-01, 2.740e-03, 6.787e-04]])
Python で学ぶ線形分類器

LinearSVCの使い方

LinearSVCも同様に使用できます:

import sklearn.datasets

wine = sklearn.datasets.load_wine()

from sklearn.svm import LinearSVC svm = LinearSVC() svm.fit(wine.data, wine.target)
svm.score(wine.data, wine.target)
0.955
Python で学ぶ線形分類器

SVCの使い方

import sklearn.datasets
wine = sklearn.datasets.load_wine()

from sklearn.svm import SVC svm = SVC() svm.fit(wine.data, wine.target);
svm.score(wine.data, wine.target)
0.708

モデルの複雑さの復習:

  • アンダーフィッティング:モデルが単純すぎる、訓練精度が低い
  • オーバーフィッティング:モデルが複雑すぎる、テスト精度が低い
Python で学ぶ線形分類器

練習しましょう!

Python で学ぶ線形分類器

Preparing Video For Download...