1.3.2 朴素贝叶斯模型
和决策树模型相比,朴素贝叶斯分类器(Naive Bayes Classifier,或 NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。
解决这个问题的方法一般是建立一个属性模型,对于不相互独立的属性,把他们单独处理。例如中文文本分类识别的时候,我们可以建立一个字典来处理一些词组。如果发现特定的问题中存在特殊的模式属性,那么就单独处理。
2 Python语言概述
Python是一种被广泛使用的高级编程语言,由纪朵·范洛素姆(Guido van Rossum)于1991年首次发布。Python解释器可用于许多操作系统,允许代码在各种系统上运行。
Python有一个大型的标准库,被普遍认为是Python最大的优势之一,它提供了适合许多任务的工具。这被称为“自带技能”。对于面向Internet的应用程序,支持许多标准格式和协议(如MIME和HTTP)。用于创建图形用户界面的模块,连接到关系数据库,生成伪随机数用以任意精度小数运算操作,以及正则表达式,进行单元测试也包括在内。
标准库的某些部分被规范覆盖(例如,Web服务器网关接口(WSGI)实现wsgiref遵循PEP 333 ),但大多数模块不是。它们由其代码,内部文档和测试套件(如果提供)指定。然而,由于大多数标准库是跨平台的Python代码,因此只有少数模块需要对变体实现进行更改或重写。
截至2017年5月,,被封装为 Python可以调用的扩展类库,包括库官方的和第三方软件资料库,已有超过107000个扩展类库来提供一个广泛的功能:
(1)图形用户界面、web框架、多媒体、数据库、网络和通信
(3)科学计算、文本处理、图像处理
自2003年以来,Python一直在由TIOBE编程社区指数衡量的最受欢迎的编程语言中排在前十名,。截至2017年3月,它是第五大流行语言。它被评为2007年和2010年的年度编程语言。它是在语法上不主要基于C的第三大流行语言,例如C ++,Objective-C(注意,C#和Java仅与C具有部分语法相似性,例如使用花括号,相比C来说,两者之间更相似)。
实证研究发现,在用于涉及字符串操作和字典搜索的编程问题上,脚本语言(如Python)比常规语言(如C和Java)更有效率。内存消耗通常比Java更好,而且也不会比C或C ++更差。
许多大型组织包括维基百科、谷歌、雅虎、欧洲核子研究中心,美国国家航空航天局和一些较小的实体ILM,和ITA使用Python.社会新闻网站Reddit完全是用Python编写。
3 垃圾邮件
3.1 垃圾邮件的概述
电子邮件垃圾邮件,也称为垃圾邮件,是一种通过电子邮件发送未经用户许可、不请自来的电子垃圾。许多电子邮件垃圾邮件本质上是商业性质的,但也可能包含伪装成似乎是熟悉网站的链接,而实际上是链接到网络钓鱼网站或托管恶意软件的网站。垃圾邮件邮件还可能包括恶意软件作为脚本或其他可执行文件附件。电子邮件垃圾邮件自20世纪90年代初以来一直稳步增长。通过僵尸网络,病毒感染的计算机网络,用于发送大约80%的垃圾邮件。由于垃圾邮件的费用主要由收件人承担,因此实际上是邮寄广告。垃圾邮件发送者从聊天室,网站,客户列表,新闻组和一种能收集用户地址簿的病毒来收集电子邮件地址。这些收集到的电子邮件地址有时也被卖给其他垃圾邮件发送者 在2010年上半年,垃圾邮件的比例大约占发送的总电子邮件的80%。