Bootstrap

基于多种机器学习算法的短信垃圾分类模型

有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主

导入第三方库

import warnings  # 导入警告库
warnings.filterwarnings("ignore")  # 忽略所有警告信息

import string  # 导入字符串处理模块
import numpy as np  # 导入NumPy库,用于数组和矩阵运算
import pandas as pd  # 导入Pandas库,用于数据分析
import re  # 导入正则表达式模块
import matplotlib.pyplot as plt  # 导入matplotlib库,用于数据可视化
import seaborn as sns  # 导入Seaborn库,用于数据可视化
from nltk.corpus import stopwords  # 从NLTK库导入停用词
from plotly import graph_objs as go  # 导入Plotly库的图形对象
from plotly import express as px  # 导入Plotly Express模块,用于简化数据可视化
from plotly import figure_factory as ff  # 导入Plotly的图形工厂模块
from collections import Counter  # 导入Counter模块,用于计数
from PIL import Image  # 导入Python Imaging Library,用于处理图像
from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator  # 导入词云生成模块
# ! pip install bs4  # 安装BeautifulSoup4库
from bs4 import BeautifulSoup  # 导入BeautifulSoup库,用于解析HTML和XML

from sklearn.model_selection import train_test_split  # 导入数据划分模块
from sklearn.preprocessing import LabelEncoder  # 导入标签编码器
from sklearn.metrics import classification_report, confusion_matrix, accuracy_score  # 导入评估指标模块
from sklearn.linear_model import LogisticRegression  # 导入逻辑回归模型
from sklearn import svm  # 导入支持向量机模块
from sklearn.ensemble import RandomForestClassifier  # 导入随机森林分类器
from sklearn.ensemble import GradientBoostingClassifier  # 导入梯度提升分类器
from sklearn.neighbors import KNeighborsClassifier  # 导入K近邻分类器
from sklearn.feature_extraction.text import CountVectorizer  # 导入计数向量化模块
from sklearn import metrics  # 导入评估指标模块
from sklearn.naive_bayes import MultinomialNB  # 导入多项式朴素贝叶斯分类器
from sklearn.feature_extraction.text import CountVectorizer  # 导入计数向量化模块(重复)

from string import punctuation  # 导入标点符号
from nltk.tokenize.toktok import ToktokTokenizer  # 导入Toktok分词器
from nltk import pos_tag  # 导入词性标注模块
from nltk.corpus import wordnet  # 导入词汇数据库
from nltk.stem.porter import PorterStemmer  # 导入Porter词干提取器
from nltk.corpus import stopwords  # 从NLTK库导入停用词(重复)

primary_blue = "#496595"  # 定义主要的蓝色十六进制代码
primary_blue2 = "#85a1c1"  # 定义第二种主要的蓝色十六进制代码
primary_blue3 = "#3f4d63"  # 定义第三种主要的蓝色十六进制代码
primary_grey = "#c6ccd8"   # 定义主要的灰色十六进制代码

读取数据

在这里插入图片描述

数据预处理

在这里插入图片描述

数据分析与可视化

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

机器学习建模

贝叶斯

在这里插入图片描述在这里插入图片描述

逻辑回归

在这里插入图片描述在这里插入图片描述

支持向量机

在这里插入图片描述在这里插入图片描述

随机森林

在这里插入图片描述
在这里插入图片描述

XGBoost

在这里插入图片描述在这里插入图片描述

总结

本项目是一个基于多种机器学习的自然语言处理项目,通过对邮件的文本进行预处理,然后分词,转换为词向量,在进行多维度的EDA分析,最终采用多种机器学习的模型算法对其进行建模,评估。通过分类报告,ROC曲线,AUC面积,混淆矩阵,以及在线验证程序进行展示,来凸显出大数据和人工智能算法结合的语言判别模型的优势

每文一语

业精于勤荒于嬉

;