第十一次作业——正太(高斯),多项式,伯努利

1.使用朴素贝叶斯模型对iris数据集进行花分类

尝试使用3种不同类型的朴素贝叶斯:

高斯分布型

高斯适合连续型

from sklearn.naive_bayes import GaussianNB
from matplotlib import pyplot as plt
gnb = GaussianNB()#构造
pred = gnb.fit(iris.data, iris.target)# 拟合

y_pred = pred.predict(iris.data)#预测
plt.plot(y_pred)
plt.show()

print(iris.data.shape[0],(iris.target != y_pred))#前面的是打印出模型来,如果是false说明和植物学家预测的不一样,反之一样
print(iris.data.shape[0],(iris.target != y_pred).sum())#一共有150个,有6个是符合植物学家预测的分类

多项式型

伯努利型

from sklearn import datasets
from matplotlib import pyplot as plt
iris = datasets.load_iris()
from sklearn.naive_bayes import BernoulliNB
gnb = BernoulliNB()
pred = gnb.fit(iris.data, iris.target)
y_pred = pred.predict(iris.data)
print(iris.data.shape[0],(iris.target != y_pred).sum())
y_pred
plt.plot(y_pred)
plt.show()

运行结果:

y_pred != iris.target

运行结果:

可以看到一共有150个分类,有100个符合植物学家的分类

查看数组

scores

运行结果:

2.使用sklearn.model_selection.cross_val_score(),对模型进行验证。

from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import cross_val_score
gnb = GaussianNB()
scores = cross_val_score(gnb,iris.data,iris.target,cv=10)
p![](https://img2018.cnblogs.com/blog/1479633/201811/1479633-20181126155106982-976925688.jpg)

print("Accuracy:%.3f"%scores.mean())

scores

3. 垃圾邮件分类

数据准备:

用csv读取邮件数据,分解出邮件类别及邮件内容。
对邮件内容进行预处理:去掉长度小于3的词,去掉没有语义的词等
尝试使用nltk库:

pip install nltk

import nltk

nltk.download

不成功:就使用词频统计的处理方法

训练集和测试集数据划分

from sklearn.model_selection import train_test_split

3. 垃圾邮件分类

数据准备:

用csv读取邮件数据,分解出邮件类别及邮件内容。
对邮件内容进行预处理:去掉长度小于3的词,去掉没有语义的词等
尝试使用nltk库:

!pip install nltk

import nltk

nltk.download

不成功:就使用词频统计的处理方法

训练集和测试集数据划分

from sklearn.model_selection import train_test_split

读取文件和预处理

import csv 
file_path = r'SMSSpamCollectionjsn.txt'
sms = open(file_path,'r',encoding='utf-8')
sms_data = []
sms_label = []
csv_reader = csv.reader(sms,delimiter = '\t')
for line in csv_reader:
    sms_label.append(line[0])
    sms_data.append(line[1])
sms.close()
sms_data

运行结果:

sms_label

运行结果:

posted on 2018-11-26 09:09  16信管黄梓航  阅读(388)  评论(0)    收藏  举报

导航