基于朴素贝叶斯的垃圾短信识别毕业论文
2020-04-19 21:21:31
摘 要
本论文详细的说明了如何通过朴素贝叶斯算法来进行对短信数据集的分类及甄别。针对朴素贝叶斯的特点及特性对垃圾短信分类的影响,使用了jieba分词工具,在进一步用TF-IDF加权技术进行转换,使得结果在短信识别准确率上有相应的提高,大幅降低了召回率。
在实现垃圾短信识别时,论文研究了朴素贝叶斯算法中的参数alpha对识别结果的影响。论文详细的说明了alpha对结果的正相关关系。
论文详细介绍了朴素贝叶斯算法的代码实现三步骤:预处理,训练模型,输出,并对各个步骤给出了详细的分析和代码实现。除此之外,还对算法实现过程中在Pycharm中调用的各类python的库进行了详细的功能介绍和调用指示。
最后,通过研究朴素贝叶斯算法对测试集输出的结果,研究了这个算法的实际意义以及优缺点,并且为这个系统附加了一些输出功能。
关键词: Python,TF-IDF,朴素贝叶斯,垃圾短信识别
Spam SMS Recognition Based on Naive Bayes Algorithm
Abstract
The paper explains in detail how to classify and screen SMS data sets by Naive Bayesian algorithm. According to the characteristics and characteristics of Naive Bayes on the classification of spam messages, the jieba word segmentation tool was used, and the conversion was further improved by TF-IDF weighting technology, which resulted in a corresponding improvement in the accuracy of short message recognition and greatly reduced the recall. rate.
In the realization of spam recognition, the paper studies the influence of the parameter alpha on the recognition result in the naive Bayesian algorithm. The paper details the positive correlation of alpha to the results.
The paper introduces in detail the three steps of the code implementation of the naive Bayesian algorithm: preprocessing, training model, output, and gives detailed analysis and code implementation for each step. In addition, detailed functions and call instructions for various types of Python libraries called in Pycharm during algorithm implementation are also provided.
Finally, by studying the output of the test set by the naive Bayesian algorithm, its practical significance, advantages and disadvantages are studied and some output functions are added to the system.
Key Words: python,TF-IDF,Naive Bayesian classifier algorithm, Spam SMS recognition
目录
基于朴素贝叶斯算法的垃圾短信识别
摘要 I
Spam SMS Recognition Based on Naive Bayes Algorithm
Abstract II
第一章 绪论 1
1.1课题的背景及意义 1
1.2国内外研究现状 1
1.3本文的主要研究工作 2
1.4 本章小结 2
第二章 开发工具及相关技术 3
2.1 开发平台 3
2.2 Python 3
2.3 TF-IDF 5
2.4 本章小结 5
第三章 基于朴素贝叶斯的垃圾短信识别实现 6
3.1 朴素贝叶斯 6
3.2 系统设计思路 7
3.3 垃圾短信识别功能概述 8
3.4 预处理 8
3.5 训练模型 11
3.6 输出 12
3.7 本章小结 14
第四章 垃圾短信识别系统实现 15
4.1 测试集 15
4.2 准确率 15
4.3 词云 16
4.4 本章小结 17
第五章 总结和展望 18
5.1 本文工作总结 18
5.2 下一步工作展望 18
参考文献 20
致谢 23
绪论
1.1课题的背景及意义
21世纪以来,随着全球科技飞速发展,手机用户迅猛增长,智能手机的普及已经成了一个不可阻挡的大势。360互联网安全中心于2017年2月发布的《2016年中国互联网安全报告》显示,360手机卫士在2016年为全国手机用户共拦截约173.5亿条垃圾短信。与之对应的烦恼也油然而生,我们每个人的手机都会收到大量的短信,而在这些短信中,绝大多数都是无效的垃圾短信。如何判断处理这些短信就成了现在困扰着我的问题。应此,我研究这个课题的初衷就跃然纸上了。
短信业务作为手机的必备功能,得到了一定的发展红利。在很久以前,手机的系统版本是SMSC 1.0版本的时候,一台手机平均每秒只能处理10条短信。但是现在,手机处理器性能的大幅提升下,这个数字已经被放大了一千多倍。手机短信相比于以往的邮件系统,方便,快捷,便宜,但是缺乏了监管。短信内也会掺杂着大量的垃圾信息。显而易见的,垃圾短信已成为一种社会公害。而本篇论文的目的,就是研究开发一个垃圾短信识别系统来对这些泛滥的垃圾信息进行审查。
1.2国内外研究现状
目前,为了应对这些垃圾信息泛滥的现状,国际上许多国家已经不得不采取了各式各样的法律的手段来规范和限制这些垃圾信息。美国,采取的是手机用户实名制。印度则是吧这个监管权交给了运营商,希望运营商通过自己的能量来对这些垃圾信息进行管理。相应的,在日本和德国,他们都是通过限制垃圾短信发出者来进行管理的,只是方法可能有所不同:在日本,如果一条手机短信被拒收了,那下一条手机短信也发不出来了;而德国会更趋向于直接屏蔽发送量大的短信。但是相较于其他国家的各种监管措施,目前在监管方面,我国还没有出台相应的法律、法规。但是在手机端上,国内许多互联网和手机公司都开发了垃圾短信拦截软件。许多国产手机的rom就自带拦截,比如小米的MIUI,华为的EMUI,一加的氢
OS,也有互联网公司开发的好用的第三方拦截软件比如360手机管家,qq手机管家。这些软件都有着相当不错的拦截性能。
1.3本文的主要研究工作
本文的主要研究工作是通过使用朴素贝叶斯算法进行机器学习,来对一条英文短信判断其是否为垃圾短信。下面是我的主要研究工作: