@Pigmon
2017-04-01T22:25:36.000000Z
字数 703
阅读 1114
教案
# -*- coding: utf-8 -*-
"""
Created on Sat Apr 01 20:01:35 2017
@author: Yuan Sheng
以朴素贝叶斯分类器为例的一个最简单的SKLearn示例程序。
关键步骤:
1. 指定要使用的机器学习算法,如本例的model = GaussianNB()
2. 训练,如本例的 model.fit(X, y)
3. 测试,如本例的 model.predict(T)
几乎所有SKLearn的程序的主要部分都是这3个步骤!
"""
import numpy as np
from sklearn.naive_bayes import GaussianNB
# 训练集,特征列表,格式 numpy.array([[x1, x2], [x1, x2]...])
X = np.array([[1., 1.], [3., 3.], [3., 4.]])
# 训练集,人工标注分类标签,与上面的特征一一对应,格式 numpy.array([class1, class2,...])
y = np.array([-1, 1, 1])
# 测试集,格式 numpy.array([[x1, x2], [x1, x2]...])
T = np.array([[5., 5.], [0, 0], [4, 3]])
# 定义分类器的类型为朴素贝叶斯分类器中的高斯朴素贝叶斯(NB是Naive Bayes的缩写,这里不是在夸奖高斯)
model = GaussianNB()
# 将训练集,分类标导入分类器进行训练
model.fit(X, y)
# 将测试集导入,并返回分类结果给变量 predicted
predicted = model.predict(T)
print(predicted) # 输出 [ 1 -1 1]