sklearn 朴素贝叶斯

1. 朴素贝叶斯 iris案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from sklearn import datasets
from sklearn.model_selection import GridSearchCV
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
from sklearn.svm import SVC
from sklearn.naive_bayes import GaussianNB, BernoulliNB, MultinomialNB

"""
加载数据
"""
iris = datasets.load_iris()
X_data, y_data = iris.data, iris.target
X_train, X_test, y_train, y_test = train_test_split(X_data, y_data, test_size=0.25)

"""
特征归一化
"""
scaler = MinMaxScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)


def test(clf):
"""
训练
"""
clf.fit(X_train, y_train)
"""
评估
"""
print('=' * 60)
print("train score: ", clf.score(X_train, y_train))
print("test score: ", clf.score(X_test, y_test))

test(MultinomialNB()) # 多项式模型
test(GaussianNB()) # 高斯模型
test(BernoulliNB()) # Bernoulli模型
panchaoxin wechat
关注我的公众号
支持一下