首页 > TAG信息列表 > vocabList
《machine learning in action》机器学习 算法学习笔记 基于概率论的分类方法:朴素贝叶斯
基于概率论的分类方法:朴素贝叶斯 优点:在数据较少的情况下任然有效(但是准确率也属于一言难尽),可以处理多类别问题。 缺点:对于输入数据的方式较为敏感。 适用数据类型:标称型数据。 前置知识:条件概率,贝叶斯决策理论,相互独立 相互独立:相互独立是设A,B是两事件,如果满足等式机器学习 朴素贝叶斯分类垃圾邮件
贝叶斯定理 已知两个独立事件A和B,事件B发生的前提下,事件A发生的概率可 以表示为P(A|B),即上图中橙色部分占红色部分的比例,即: ·建立概率模型用于求解后验概率 – 判别式模型 ·建立条件概率模型用于求解最大化后验概率 – 生成式模型 代码实现 文件解析及完整的垃圾邮件机器学习之朴素贝叶斯实现垃圾邮件过滤
一.朴素贝叶斯概述 朴素贝叶斯法是基于贝叶斯定理与特征条件独立性假设的分类方法。对于给定的训练集,首先基于特征条件独立假设学习输入输出的联合概率分布(朴素贝叶斯法这种通过学习得到模型的机制,显然属于生成模型);然后基于此模型,对给定的输入 x,利用贝叶斯定理求出后验概率最大朴素贝叶斯公式(过滤垃圾邮件)
准备数据:切分文本 现提供邮件文件夹:spam;非垃圾邮件文件夹:ham,各有25封邮件。 将邮件中的内容文本,进行分割,转换成一系列词语组成的列表 def textParse(bigString){ import re; listOfTokens=re.split('\W',bigString) ; return [tok.lower() for tok in listOfTokens基于贝叶斯决策理论的分类方法
import numpy as np ''' Parameters: 无 Returns: postingList - 实验样本切分的词条 classVec - 类别标签向量 ''' # 函数说明:创建实验样本 def loadDataSet(): postingList=[['my', 'dog', 'has', 'flea', &(3)机器学习实战笔记:朴素贝叶斯
优点:数据比较少的时候仍然有效,可以处理多类别问题 缺点:对于输入数据的准备方式比较敏感 适用的数据类型:标称型数据 将一组单词转换为一组数字 使用数字计算概率 著名应用:使用朴素贝叶斯过滤垃圾邮件 分类思路: (1)收集数据:提供文本文件 (2)准备数据:将文本文件解析成词条向量 (3Python机器学习(十五)朴素贝叶斯算法原理与代码实现
算法原理 朴素贝叶斯是经典的机器学习算法之一,也是为数不多的基于概率论的分类算法。朴素贝叶斯原理简单,也很容易实现,多用于文本分类,比如垃圾邮件过滤。 该算法的优点在于简单易懂、学习效率高、在某些领域的分类问题中能够与决策树、神经网络相媲美。 但由于该算法以自变量之第四章--基于概率论的分类方法:朴素贝叶斯--过滤垃圾邮件(二)
朴素贝叶斯对电子邮件进行分类的步骤:收集数据:提供文本文件。准备数据:将文本文件解析成词条向量。分析数据:检查词条确保解析的正确性。训练算法:使用我们之前建立的trainNB0()函数。测试算法:使用classifyNB(),并构建一个新的测试函数来计算文档集的错误率。使用算法:构建一个完整的程机器学习-朴素贝叶斯应用-判断垃圾邮件
文章中代码均来自于《机器学习实战》 这个程序没有邮件的文件的话是不能运行的,要是想试试可以去网上搞搞文件 ''' Created on Oct 19, 2010 @author: Peter ''' #和其他复杂模型不一样,朴素贝叶斯的思想和操作比较简单,它一般是内嵌在处理具体问题的函数中的,而不像神经网络模型或者(机器学习实战)第四章
都是在python3下面的: def loadDataSet(): postingList=[['my', 'dog', 'has', 'flea', 'problems', 'help', 'please'], ['maybe', 'not', 'take', &