机器学习---初识贝叶斯分类器

1. 引入问题

有两个可选的假设:病人有癌症、病人无癌症,可用数据来自化验结果:正+和负-

有先验知识:在所有人口中,患病率是0.008,对确实有病的患者的化验准确率为98%,对确实无

病的患者的化验准确率为97%

总结如下:

P(cancer)=0.008, P(cancer)=0.992

P(+|cancer)=0.98, P(-|cancer)=0.02

P(+|cancer)=0.03, P(-|cancer)=0.9

问题:假定有一个新病人,化验结果为正,是否应将病人断定为有癌症?求后验概率P(cancer|+)

和P(cancer|+)

解决上面的问题:已知某条件概率,如何得到两个事件交换后的概率,也就是在已知P(A|B)的情况

下如何求得P(B|A)。

A:判断准确    B:癌症

条件概率: 在事情B发生的条件下A发生的条件概率,其求解公式为:

贝叶斯定理的意义在于,在生活中经常遇到这种情况:我们可以很容易直接得出P(A|B),P(B|A)则

很难直接得出,但我们更关心P(B|A),贝叶斯定理就为我们打通从P(A|B)获得P(B|A)的道路。

 :表示在没有训练数据前假设A拥有的初始概率,P(A)被称为A的先验概率。

P(A|B)表示假设B成立时A的概率。机器学习中我们关心的是P(B|A),即给定A时B的成

立的概率,称为B的后验概率。

 P(B|A)随着P(B)和P(A|B)的增长而增长,随着P(A)的增长而减少,即如果A独立于B时被观察到的

可能性越大,那么B对A的支持度越小。

2. 朴素贝叶斯分类器

条件独立性:给定类标号y,朴素贝叶斯分类器在估计类条件概率时假设属性之间条件独立。条件

独立假设可以形式化的表达如下:

其中每个训练样本可用一个属性向量X=(x1,x2,x3,„,xn)表示,各个属性之间条件独立。

比如,对于一篇文章“Good good study,Day day up.”

用一个文本特征向量来表示:x=(Good, good, study, Day, day , up)。

一般各个词语之间肯定不是相互独立的,有一定的上下文联系。但在朴素贝叶斯文本分类时,我们

假设个单词之间没有联系,可以用一个文本特征向量来表示这篇文章,这就是“朴素”的来历。

有了条件独立假设,就不必计算X和Y的每一种组合的类条件概率,只需对给定的Y,计算每个xi的

条件概率。后一种方法更实用,因为它不需要很大的训练集就能获得较好的概率估计。

P(xi|Y=y)怎么计算呢?它一般根据类别y下包含属性xi的实例的比例来估计。以文本分类为例,xi表

示一个单词,P(xi|Y=y)=包含该类别下包含单词的xi的文章总数/ 该类别下的文章总数。

假设给定了如下训练样本数据,我们学习的目标是根据给定的天气状况判断你对PlayTennis这个请

求的回答是Yes还是No。

Day

Outlook

Temperature

Humidity

Wind

PlayTennis

D1

Sunny

Hot

High

Weak

No

D2

Sunny

Hot

High

Strong

No

D3

Overcast

Hot

High

Weak

Yes

D4

Rain

Mild

High

Weak

Yes

D5

Rain

Cool

Normal

Weak

Yes

D6

Rain

Cool

Normal

Strong

No

D7

Overcast

Cool

Normal

Strong

Yes

D8

Sunny

Mild

High

Weak

No

D9

Sunny

Cool

Normal

Weak

Yes

D10

Rain

Mild

Normal

Weak

Yes

D11

Sunny

Mild

Normal

Strong

Yes

D12

Overcast

Mild

High

Strong

Yes

D13

Overcast

Hot

Normal

Weak

Yes

D14

Rain

Mild

High

Strong

No

         

我们需要利用训练数据计算后验概率P(Yes|x)和P(No|x),如果P(Yes|x)>P(No|x),那么新实例分类

为Yes,否则为No。 

我们将使用此表的数据,并结合朴素贝叶斯分类器来分类下面的新实例:

Day

Outlook

Temperature

Humidity

Wind

PlayTennis

D1

Sunny

Hot

High

Weak

No

D2

Sunny

Hot

High

Strong

No

D8

Sunny

Mild

High

Weak

No

D14

Rain

Mild

High

Strong

No

D6

Rain

Cool

Normal

Strong

No

      

   

Day

Outlook

Temperature

Humidity

Wind

PlayTennis

D3

Overcast

Hot

High

Weak

Yes

D4

Rain

Mild

High

Weak

Yes

D5

Rain

Cool

Normal

Weak

Yes

D7

Overcast

Cool

Normal

Strong

Yes

D9

Sunny

Cool

Normal

Weak

Yes

D10

Rain

Mild

Normal

Weak

Yes

D11

Sunny

Mild

Normal

Strong

Yes

D12

Overcast

Mild

High

Strong

Yes

D13

Overcast

Hot

Normal

Weak

Yes

           

由于 大于所以该样本分类为No

3. 多项式模型

基本原理:多项式模型中, 设某文档d=(t1,t2,…,tk),tk是该文档中出现过的单词,允许重复,则:

V是训练样本的单词表(即抽取单词,单词出现多次,只算一个),|V|则表示训练样本包含多少种

单词。在这里,m=|V|, p=1/|V|。P( tk|c)可以看作是单词tk在证明d属于类c上提供了多大的证据,

而P(c)则可以认为是类别c在整体上占多大比例(有多大可能性)。

给定一个新样本Chinese Chinese Chinese Tokyo Japan,对其进行分类:

该文本用属性向量表示为d=(Chinese, Chinese, Chinese, Tokyo, Japan),类别集合为Y={yes,

no}。                

id

doc

类别In c=China?

1

Chinese Beijing Chinese

yes

2

Chinese Chinese Shanghai

yes

3

Chinese Macao

yes

4

Tokyo Japan Chinese

no

P(Japan | yes)=P(Tokyo | yes)= (0+1)/(8+6)=1/14

P(Chinese | yes)=(5+1)/(8+6)=6/14=3/7

P(Chinese|no)=(1+1)/(3+6)=2/9

P(Japan|no)=P(Tokyo| no) =(1+1)/(3+6)=2/9

p(yes|d)=(3/7)3×1/14×1/14×8/11=108/184877≈0.00058417

P(no|d)= (2/9)3×2/9×2/9×3/11=32/216513≈0.00014780

因此,这个文档属于类别china。

4. 伯努利模型

基本原理:

id

doc

类别In c=China?

1

Chinese Beijing Chinese

yes

2

Chinese Chinese Shanghai

yes

3

Chinese Macao

yes

4

Tokyo Japan Chinese

no

P(Chinese|yes)=(3+1)/(3+2)=4/5

P(Beijing|yes)= P(Macao|yes)= P(Shanghai |yes)=(1+1)/(3+2)=2/5

P(Japan | yes)=P(Tokyo | yes)=(0+1)/(3+2)=1/5

P(Chinese|no)=(1+1)/(1+2)=2/3

 P(Japan|no)=P(Tokyo| no) =(1+1)/(1+2)=2/3

P(Beijing|no)= P(Macao|no)= P(Shanghai|no)=(0+1)/(1+2)=1/3

P(yes | d)=P(yes)×P(Chinese|yes) ×P(Japan|yes) ×P(Tokyo|yes)×(1-P(Beijing|yes)) ×(1-

P(Shanghai|yes))×(1-P(Macao|yes))=3/4×4/5×1/5×1/5×(1-2/5) ×(1-2/5)×(1-2/5)=81/15625≈0.005

P(no | d)= 1/4×2/3×2/3×2/3×(1-1/3)×(1-1/3)×(1-1/3)=16/729≈0.022

因此,这个文档不属于类别china

        二者的计算粒度不一样,多项式模型以单词为粒度,伯努利模型以文件为粒度,因此二者的

先验概率和类条件概率的计算方法都不同。计算后验概率时,对于一个文档d,多项式模型中,只

有在d中出现过的单词,才会参与后验概率计算。伯努利模型中,没有在d中出现,但是在全局单词

表中出现的单词,也会参与计算,不过是作为“反方”参与。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/193545.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asp.net智能考试系统VS开发sqlserver数据库web结构c#编程计算机网页项目

一、源码特点 asp.net 智能考试系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 系统运行视频 https://www.bilibili.com/video/BV1gz4y1A7Qp/ 二、功能介绍 本系统使用Microsoft Visual Studio 201…

Triage沙箱监控

Triage沙箱可以免费分析恶意软件样本。最先进的恶意软件分析沙箱,具有您需要的所有功能。 在可定制的环境中提交大量样本,并对许多恶意软件系列进行检测和配置提取。立即查看公开报告并对您的恶意软件进行分类! 官方网址:https:…

【STL】string类 (上) <vector>和<list>的简单使用

目录 一,什么是 STL 二,STL 的六大组件 三,标准库中的 string 类 1,string 类 2,string 类的常用接口 1,string类对象的常见构造 2,string(const string& str&#xff…

vulhub redis-4-unacc

环境搭建 cd vulhub/redis/4-unacc docker-compose up -d 漏洞复现 检测 redis-cli -h ip 使用redis工具 工具地址:https://github.com/vulhub/redis-rogue-getshell 下载完成后,先进入RedisModulesSDK/exp/ 目录进行make操作 获得exp.so后可以进行…

实验三 页面置换算法

一. 实验目的: 1、熟悉虚存管理的各种页面淘汰算法 二、实验环境: 硬件环境:计算机一台,局域网环境; 软件环境:Windows XP及以上版本 Professional操作系统平台,Visual C 6.0专业版或企业版…

数据结构及八种常用数据结构简介

data-structure 数据结构是一种存在某种关系的元素的集合。“数据” 是指元素;“结构” 是指元素之间存在的关系,分为 “逻辑结构” 和 “物理结构(又称存储结构)”。 常用的数据结构有 数组(array)、栈&…

Nacos入门

Nacos:以“服务”为中心的现代应用架构的服务基础设施 1、Nacos功能 Nacos主要功能在微服务中主要体现:配置中心、注册中心 1.1、Nacos优点 简单易用、特性丰富、超高性能、超大容量、高可用(这里几个特点下面会提到) 有些友…

突发 Chatgpt之父被开,GPT放开注册,注册难度大幅降低!

大家好,我是菜鸟哥,又到周末啦,我们聊一下非技术的话题。科技圈chatgpt属于当红辣子鸡,是目前最火的话题。前不久才开的发布会,然后没几天被黑客攻击,导致服务中断,然后openai 又突然宣布gpt4停…

斯坦福机器学习 Lecture1 (机器学习,监督学习、回归问题、分类问题定义)

https://www.bilibili.com/video/BV1JE411w7Ub?p1&vd_source7a1a0bc74158c6993c7355c5490fc600 笔记如下 机器学习的定义:不需要明确编程就能让计算机去学习做某件事情 另一个定义 什么是监督学习? 给定一组 (x,y) 样本,学习一个 x-&g…

Rocket如何实现顺序消费

RocketMQ 支持两种消息模式 集群消费( Clustering )和广播消费( Broadcasting )。 集群消费:同一 Topic 下的一条消息只会被同一消费组中的一个消费者消费。也就是说,消息被负载均衡到了同一个消费组的多…

WMS仓库管理系统库位分配规划

分配说明 每个商品必须至少有一个分拣位(整箱或拆零均可)如果只设了拆零分拣位,则入库不分配存储位,只上拆零分拣位,对于DPS分拣商品是一品固定一个货位,对于RF分拣商品是动态分配货位,一个商品…