0
1

Pythonのscikit-learnによる分類まとめ2

Last updated at Posted at 2023-10-08

前回の続きです。

Pythonのscikit-learnによる分類をまとめました。
今回は、ガウス過程、単純ベイズ、決定木を用いた分類を行います。

ガウス過程

GaussianProcessClassifier
https://scikit-learn.org/stable/modules/generated/sklearn.gaussian_process.GaussianProcessClassifier.html

from sklearn.datasets import load_iris
from sklearn.gaussian_process import GaussianProcessClassifier # GaussianProcessClassifierのインポート
X, y = load_iris(return_X_y=True)
model = GaussianProcessClassifier().fit(X, y)
model.score(X, y)

スコアは0.9733333333333334でした。

単純ベイズ

GaussianNB
https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.GaussianNB.html

from sklearn.datasets import load_iris
from sklearn.naive_bayes import GaussianNB # GaussianNBのインポート
X, y = load_iris(return_X_y=True)
model = GaussianNB().fit(X, y)
model.score(X, y)

スコアは0.96でした。

MultinomialNB
https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.MultinomialNB.html

from sklearn.datasets import load_iris
from sklearn.naive_bayes import MultinomialNB # MultinomialNBのインポート
X, y = load_iris(return_X_y=True)
model = MultinomialNB().fit(X, y)
model.score(X, y)

スコアは0.9533333333333334でした。

ComplementNB
https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.ComplementNB.html

from sklearn.datasets import load_iris
from sklearn.naive_bayes import ComplementNB # ComplementNBのインポート
X, y = load_iris(return_X_y=True)
model = ComplementNB().fit(X, y)
model.score(X, y)

スコアは0.6666666666666666でした。
irisデータセットの分類には適していない可能性があります。

BernoulliNB
https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.BernoulliNB.html

from sklearn.datasets import load_iris
from sklearn.naive_bayes import BernoulliNB # BernoulliNBのインポート
X, y = load_iris(return_X_y=True)
model = BernoulliNB().fit(X, y)
model.score(X, y)

スコアは0.3333333333333333でした。
ComplementNBと同様、irisデータセットの分類には適していない可能性があります。

CategoricalNB
https://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.CategoricalNB.html

from sklearn.datasets import load_iris
from sklearn.naive_bayes import CategoricalNB # CategoricalNBのインポート
X, y = load_iris(return_X_y=True)
model = CategoricalNB().fit(X, y)
model.score(X, y)

スコアは0.9333333333333333でした。

決定木

DecisionTreeClassifier
https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html

from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier # DecisionTreeClassifierのインポート
X, y = load_iris(return_X_y=True)
model = DecisionTreeClassifier().fit(X, y)
model.score(X, y)

スコアは1.0でした。

ComplementNBとBernoulliNBでスコアが低い理由がわからず、まだまだ勉強が必要です。

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1