Naive Bayes、神经网络初步、SVM

PART 1    Naive Bayes

还是上节课说过的垃圾邮件分类问题,分为两种事件模型:

1.1.多变量Bernouli事件模型

  【就是上节课介绍的

  维护一个长长长长长的dictionary

  对于某个样本(x,y),x[i]=0or1表示dictionary第i个词是否在样本邮件中出现过,y=0or1表示样本是不是垃圾邮件

  在这个模型中,Xi取值只有0or1,因此 $x_{i} | y$ 是Bernouli分布

  $ANS= P\left( y\right) \prod ^{n}_{i=1}P\left( x_{i} | y\right)$

1.2.多项式事件模型

  还是需要长长长长长的dictionary【设dictionary中有50000个词】

  对于某个样本(x,y),x[j]表示样本text中第j个位置出现的是哪个词(编号) $\in [1,50000] $

  注:约定 $x^{\left( i\right) }_{j}$ 表示第i个样本中第j个位置出现的哪个词

  在这个模型中,Xi可以取50000种值,因此 $x_{i} | y$ 是多项式分布

  $ANS= P\left( y\right) \prod ^{n}_{i=1}P\left( x_{i} | y\right)$

  在这个模型中涉及的参数:

  $\phi_{y}=p\left( y=1\right)$

  $\phi_{i|y=1}=p\left(x_{j}=i | y=1\right)$

  $\phi_{i|y=0}=p\left(x_{j}=i | y=0\right)$   【注意:words具体出现的位置和顺序并不会影响结果

  

  对于i个样本的情况,可以求出似然函数,并求最大似然

  对这个结果也可以施行Laplace平滑,得  【这里的|V|就是dictionary中单词的数目,就是上文中的50000

时间: 2024-11-05 12:32:02

Naive Bayes、神经网络初步、SVM的相关文章

机器学习分类实例——SVM(修改)/Decision Tree/Naive Bayes

机器学习分类实例--SVM(修改)/Decision Tree/Naive Bayes 20180427-28笔记.30总结 已经5月了,毕设告一段落了,该准备论文了.前天开会老师说,希望我以后做关于语义分析那一块内容,会议期间还讨论了学姐的知识图谱的知识推理内容,感觉也挺有趣的,但是感觉应该会比较复杂.有时间的话希望对这块了解一下.其实吧,具体怎么展示我还是不太清楚... 大概就是图表那个样子.我先做一个出来,让老师看看,两个礼拜写论文.24/25答辩,6月就可以去浪哈哈哈哈哈哈. 一.工作

朴素贝叶斯(naive bayes)

#coding=utf-8 #Naive Bayes #Calculate the Prob. of class:clsdef P(data,cls_val,cls_name="class"): cnt = 0.0 for e in data: if e[cls_name] == cls_val: cnt += 1 return cnt/len(data) #Calculate the Prob(attr|cls)def PT(data,cls_val,attr_name,attr_v

朴素贝叶斯(Naive Bayes)及Python实现

朴素贝叶斯(Naive Bayes)及Python实现 http://www.cnblogs.com/sumai 1.模型 在GDA 中,我们要求特征向量 x 是连续实数向量.如果 x 是离散值的话,可以考虑采用朴素贝叶斯的分类方法. 以垃圾邮件分类为例子,采用最简单的特征描述方法,首先找一部英语词典,将里面的单词全部列出来.然后将每封邮件表示成一个向量,向量中每一维都是字典中的一个词的 0/1值,1 表示该词在邮件中出现,0 表示未出现. 比如一封邮件中出现了“ a”和“ buy”,没有出现“

数据挖掘十大经典算法(9) 朴素贝叶斯分类器 Naive Bayes

贝叶斯分类器 贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类.眼下研究较多的贝叶斯分类器主要有四种,各自是:Naive Bayes.TAN.BAN和GBN. 贝叶斯网络是一个带有概率凝视的有向无环图,图中的每个结点均表示一个随机变量,图中两结点 间若存在着一条弧,则表示这两结点相相应的随机变量是概率相依的,反之则说明这两个随机变量是条件独立的.网络中随意一个结点X 均有一个对应的条件概率表(Con

6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python)

6 Easy Steps to Learn Naive Bayes Algorithm (with code in Python) Introduction Here’s a situation you’ve got into: You are working on a classification problem and you have generated your set of hypothesis, created features and discussed the importanc

朴素贝叶斯分类器的应用 Naive Bayes classifier

一.病人分类的例子 让我从一个例子开始讲起,你会看到贝叶斯分类器很好懂,一点都不难. 某个医院早上收了六个门诊病人,如下表. 症状 职业 疾病 打喷嚏 护士 感冒  打喷嚏 农夫 过敏  头痛 建筑工人 脑震荡  头痛 建筑工人 感冒  打喷嚏 教师 感冒  头痛 教师 脑震荡 现在又来了第七个病人,是一个打喷嚏的建筑工人.请问他患上感冒的概率有多大? 根据贝叶斯定理: P(A|B) = P(B|A) P(A) / P(B) 可得 P(感冒|打喷嚏x建筑工人)  = P(打喷嚏x建筑工人|感冒)

Microsoft Naive Bayes 算法——三国人物身份划分

Microsoft朴素贝叶斯是SSAS中最简单的算法,通常用作理解数据基本分组的起点.这类处理的一般特征就是分类.这个算法之所以称为“朴素”,是因为所有属性的重要性是一样的,没有谁比谁更高.贝叶斯之名则源于Thomas Bayes,他想出了一种运用算术(可能性)原则来理解数据的方法.对此算法的另一个理解就是:所有属性都是独立的,互不相关.从字面来看,该算法只是计算所有属性之间的关联.虽然该算法既可用于预测也可用于分组,但最常用于模型构建的早期阶段,更常用于分组而不是预测某个具体的值.通过要将所有

PGM学习之三 朴素贝叶斯分类器(Naive Bayes Classifier)

介绍朴素贝叶斯分类器的文章已经很多了.本文的目的是通过基本概念和微小实例的复述,巩固对于朴素贝叶斯分类器的理解. 一 朴素贝叶斯分类器基础回顾 朴素贝叶斯分类器基于贝叶斯定义,特别适用于输入数据维数较高的情况.虽然朴素贝叶斯分类器很简单,但是它确经常比一些复杂的方法表现还好. 为了简单阐述贝叶斯分类的基本原理,我们使用上图所示的例子来说明.作为先验,我们知道一个球要么是红球要么是绿球.我们的任务是当有新的输入(New Cases)时,我们给出新输入的物体的类别(红或者绿).这是贝叶斯分类器的典型

Naive Bayes理论与实践

Naive Bayes: 简单有效的常用分类算法,典型用途:垃圾邮件分类 假设:给定目标值时属性之间相互条件独立 同样,先验概率的贝叶斯估计是 优点: 1. 无监督学习的一种,实现简单,没有迭代,学习效率高,在大样本量下会有较好的表现. 2. 对分类器的学习情况有着比较简单的解释,可以简单的通过查询学习时计算的一些概率值来了解其分类原理. 缺点: 1. 假设太强——假设特征条件独立,在输入向量的特征条件有关联的场景下并不适用. #################################W