《垃圾邮件识别器》项目实战 | 朴素贝叶斯 + 词频向量 | 从理论到代码落地
已完结
《垃圾邮件识别器》项目实战 | 朴素贝叶斯 + 词频向量 | 从理论到代码落地

课程简介

《垃圾邮件识别器》项目是一个能够支持邮件输入、并自动识别垃圾邮件是否为垃圾邮件的项目。该项目主要包含以下方面的技术知识:Python Tkinter 图形库的使用、朴素贝叶斯算法原理剖析。相信通过本项目的学习能够使你更加深刻的理解朴素贝叶斯算法,以及如何应用。

章节目录
互动留言

1/9 《垃圾邮件识别器》内容摘要

视频课程地址:https://space.bilibili.com/429380437 《垃圾邮件识别器》项目旨在开发一个能够支持邮件输入、并自动识别垃圾邮件的窗口应用程序。该项目主要包含以下方面的内容: Python Tkinter 窗口程序开发 朴素贝叶斯算法原理以及应用 相信通过本项目的学习能够使你更加深刻的理解朴素贝叶斯算法,以及相关的实现编码技巧。 /?p=68681 介绍项目开发的环境... 查看完整内容

2/9 《垃圾邮件识别器》(一)准备工作

我们的开发环境:Win11 + PyCharm 2021.1.3 + Python 3.8.5 1. 虚拟环境 /archives/tag/py-env 接下来,创建 spam-env 虚拟环境,并在其中安装如下所需要的第三方包: pip install jieba==0.42.1 pip install pandas==2.0.3 pip install scikit-learn==1.3.0 ... 查看完整内容

3/9 《垃圾邮件识别器》(二)Tkinter

项目的第一步就是编写需要的界面,我们使用 Python 标准的 GUI 库 Tkinter 来实现。这一节就快速学习该库中将会用到的控件,为搭建图形界面做准备。 主窗口主菜单文本控件其他控件 1. 主窗口 tk.Tk 是 Tkinter 中的主窗口类,它是创建图形用户界面(GUI)应用程序的起点。Tk 表示 "ToolKit",是一个跨平台的图形用户界面工具包,用于创建窗口、按钮、文本框、标签等 ... 查看完整内容

4/9 《垃圾邮件识别器》(三)界面搭建

通过前面学习的 Tkinter 知识,这一节我们将《垃圾邮件识别器》所需要的界面搭建起来,界面主要包括: 主窗口顶部菜单中心文本框底部状态栏 1. 主窗口 创建 MainFrame.py 文件,创建 MainFrame 类如下: import tkinter as tk class MainFrame(tk.Tk): def __init__(self): # 初始化父类 super(MainFr... 查看完整内容

5/9 《垃圾邮件识别器》(四)算法理论

这一节我们将通过学习贝叶斯公式、朴素贝叶斯、文本分类案例三部分来了解垃圾邮件识别的算法原理。 首先,我们将理解贝叶斯公式,这是垃圾邮件识别中关键的数学基础; 接着,我们将介绍朴素贝叶斯算法,它建立在贝叶斯公式的基础上; 最后,我们将通过一个文本分类案例,演示如何应用这些算法原理来实现垃圾邮件的识别,从而深入理解算法在实际应用中的过程、原理。 通过这三部分的学习,将对朴素贝叶斯算法的原理有更加深刻的... 查看完整内容

6/9 《垃圾邮件识别器》(五)Scikit-Learn

Scikit-Learn 是一个用于机器学习和数据分析的 Python 库,它提供了各种用于数据预处理、特征工程、模型选择、模型训练和模型评估的工具和算法。我们使用到的朴素贝叶斯算法实现,以及文本特征提取等操作都可以使用该机器学习库来完成。 pip install scikit-learn pip install jieba 1. 文本数值化 首先,使用 jieba 进行文本分词;其次,使用 Co... 查看完整内容

7/9 《垃圾邮件识别器》(六)数据处理

垃圾邮件分类是一种具有广泛应用场景的二分类问题,可以利用机器学习进行解决,市场上已经有很成熟的垃圾邮件分类软件或集成在 Outlook上 的垃圾邮件过滤插件。接下来,我们使用朴素贝叶斯算法训练一个《垃圾邮件分类器》。 邮件数据介绍邮件数据读取邮件数据清洗 import time from sklearn.model_selection import train_test_split from co... 查看完整内容

8/9 《垃圾邮件识别器》(七)训练评估

这一章节主要涉及算法模型训练、算法模型评估、算法模型封装: 算法模型训练: 模型使用已标记的垃圾邮件和非垃圾邮件样本来学习如何识别垃圾邮件;算法模型评估: 使用测试数据来评估模型的性能;算法模型封装: 将训练好的相关模型封装成软件组件,以便将垃圾邮件识别功能集成到项目中。 from sklearn.naive_bayes import MultinomialNB from sklearn.feat... 查看完整内容

9/9 《垃圾邮件识别器》(八)收尾工作

这一部分主要完成两个任务: 将封装的 RecognizerMail 应用到项目中; 将项目打包成可执行程序。 1. 完成代码 在开发的 MainFrame 界面中集成邮件识别器 RecognizerMail。修改 MainFrame 的 init 方法中初始化邮件识别器,并实现 on_menu_predict 函数: import tkinter as tk from RecognizerMail... 查看完整内容