我需要能够处理数据集,应用我的分类算法(我选择了3个朴素的bayes版本),打印精度得分到终端,并执行5到10倍交叉验证,找出有多少电子邮件是垃圾邮件。

正如你所看到的,我已经完成了一些任务,但是没有进行交叉验证,也没有发现有多少电子邮件是垃圾邮件。import numpy as np

import pandas as pd

import sklearn

from sklearn.naive_bayes import BernoulliNB

from sklearn.naive_bayes import GaussianNB

from sklearn.naive_bayes import MultinomialNB

from sklearn.model_selection import train_test_split

from sklearn import metrics

from sklearn.metrics import accuracy_score

# Read data

dataset = pd.read_csv('dataset.csv').values

# What shuffle does? How it helps?

np.random.shuffle(dataset)

X = dataset[ : , :48 ]

Y = dataset[ : , -1 ]

X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size = .33, random_state = 17)

# Bernoulli Naive Bayes

BernNB = BernoulliNB(binarize = True)

BernNB.fit(X_train, Y_train)

y_expect = Y_test

y_pred = BernNB.predict(X_test)

print ("Bernoulli Accuracy Score: ")

print (accuracy_score(y_expect, y_pred))

# Multinomial Naive Bayes

MultiNB = MultinomialNB()

MultiNB.fit(X_train, Y_train)

y_pred = MultiNB.predict(X_test)

print ("Multinomial Accuracy Score: ")

print (accuracy_score(y_expect, y_pred))

# Gaussian Naive Bayes

GausNB = GaussianNB()

GausNB.fit(X_train, Y_train)

y_pred = GausNB.predict(X_test)

print ("Gaussian Accuracy Score: ")

print (accuracy_score(y_expect, y_pred))

# Bernoulli ALTERED Naive Bayes

BernNB = BernoulliNB(binarize = 0.1)

BernNB.fit(X_train, Y_train)

y_expect = Y_test

y_pred = BernNB.predict(X_test)

print ("Bernoulli 'Altered' Accuracy Score: ")

print (accuracy_score(y_expect, y_pred))

我已经研究了交叉验证,认为我现在可以应用这个,但它发现有多少电子邮件是垃圾邮件,我不明白???我有不同的navie bayes版本的准确性,但我如何才能真正找到垃圾邮件的数量?最后一列是1或0,它定义了它是否是垃圾邮件?所以我不知道该怎么做

python垃圾邮件过滤_垃圾邮件过滤器Python newbi相关推荐

  1. python训练opencb分类器_垃圾邮件分类.ipynb

    { "cells": [ { "cell_type": "markdown", "metadata": {}, &quo ...

  2. U-Mail反垃圾邮件网关过滤Locky勒索邮件

    近期,不少朋友圈有朋友发布相关的邮件提醒,说有关于Locky病毒勒索邮件的.看来这个病毒影响不小啊!下面就说说怎么来防止Locky勒索病毒的侵扰. 什么是Locky勒索病毒 Locky勒索病毒主要以邮 ...

  3. java邮件抄送_抄送邮件的抄送功能的研发

    通用各大网易系,腾讯QQ系,新浪系,阿里系等主流邮箱:同时也适用于企业开发的企业邮箱,进行收件和发件. 通用各大网易系,腾讯QQ系,新浪系,阿里系等主流邮箱:同时也适用于企业开发的企业邮箱,进行收件和 ...

  4. python控制语句第一章_【原创】Python第一章

    Python总是从第一行代码开始逐步执行,而C是从main函数开始执行. 在Python中,一切东西都是对象. 在Python中,没有C的花括号,不能任意排版,属于同一个语句块的语句需要使用相同的对齐 ...

  5. 高考python必考题目_假如高考考python编程,这些题目你会几个呢?

    Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理 ...

  6. python派森编程软件_《派森》(Python)

    Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务.它的语法非 ...

  7. python 书籍 办公 自动化_你们都用Python实现了哪些办公自动化?

    这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音. 自动化办公无非是excel.ppt.word. ...

  8. python批量处理 办公_你们都用Python实现了哪些办公自动化?

    这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音. 自动化办公无非是excel.ppt.word. ...

  9. 我的python学习笔记全集_记录我的Python学习笔记

    不想再像以前那样,什么都从头开始学习语法.总结语法,这样反而会过分纠结于语法,耽误了开发,毕竟语言的主要属性是工具,次要的属性是语言本身. 所以还是先熟练使用语言去进行开发,等足够熟悉了,再去研究语言 ...

最新文章

  1. php 删除一周前,linux下删除7天前日志的代码(php+shell)
  2. java clone 报错_创建ArrayList对象时显示CloneNotSupportedException错误
  3. 封装EF code first用存储过程的分页方法
  4. mysql多线程使用一个链接_探索多线程使用同一个数据库connection的后果
  5. php执行sql内存溢出_SQL Server 2017:SQL排序,溢出,内存和自适应内存授予反馈
  6. Uncaught SyntaxError: Unexpected token ‘var‘
  7. 数据预处理第2讲:非线性变换
  8. og 的 debug()、 error()、 info()方法的区别
  9. [数位dp][状压dp] Jzoj P3458 密码
  10. 在C#中使用消息队列RabbitMQ
  11. 去除 AutoCAD 2013 x64 教育版打印戳记
  12. Linux系统版本介绍
  13. by mysql 按每分钟group_MySQL group by 统计每5分钟数据量
  14. 公司注册地址要注意,小心被拉“黑”,征信受影响
  15. Java_socket通信基础补充
  16. 车载网络: ECU (电子控制单元)
  17. linux 打开三维stl文件,stl文件扩展名,stl文件怎么打开?
  18. Pytorch tutorial pytorch 入门
  19. 网页播放视频没有进度条怎么可以实现倍速播放
  20. Unity 基础常用的脚本(一)

热门文章

  1. 西红柿的自我修养,是时候回来了。
  2. 希沃白板断网环境免登陆编辑课件
  3. 西安电子科技大学数学考研双非二本上岸经验分享
  4. mysql下载哪个_Mysql下载与版本选择
  5. java 文本框只能输入数字_怎么让文本框只能输入数字呢?
  6. html增加header,html怎么设置header
  7. 【IT名人堂】专访腾讯资深运维专家:QQ与微信架构的惊天秘密
  8. 水星mw300r服务器无响应,水星MW300R无线路由器无线网频繁掉线的解决方法除了重启路由还有???...
  9. 泛域名SSL数字证书与多域名通配符数字证书
  10. 一路走过,风雨同舟—记研二这一年学习经历(一)