IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 实验三:最小错误率的贝叶斯分类预习报告 -> 正文阅读

[人工智能]实验三:最小错误率的贝叶斯分类预习报告

一、实验原理

贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。也就是说,贝叶斯分类器是最小错误率意义上的优化,它遵循“多数占优”这一基本原则。

贝叶斯公式

其中,是先验概率,是条件概率,我们要求的是后验概率。

由于分母项在不管求样本的哪个后验概率时都是一样的,实际上我们需要关注的只是分子,因此有

贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。在具有模式的完整统计知识条件下,按照贝叶斯决策理论进行设计的一种最优分类器。分类器是对每一个输入模式赋予一个类别名称的软件或硬件装置,而贝叶斯分类器是各种分类器中分类错误概率最小或者在预先给定代价的情况下平均风险最小的分类器。它的设计方法是一种最基本的统计分类方法。

利用贝叶斯后验概率确定分类:

二、实验内容

设有19人进行体检,结果如下表。但事后发现4人忘了写性别,试问,这4人是男是女?

序号

身高

体重

性别

序号

身高

体重

性别

1

170

68

11

140

62

2

130

66

12

150

64

3

180

71

13

120

66

4

190

73

14

150

66

5

160

70

15

130

65

6

150

66

16

140

70

α?

7

190

68

17

150

60

β?

8

210

76

18

145

65

γ?

9

100

58

19

160

75

δ?

10

170

75

C=2。男—1类,女—2类。

三、预习心得

贝叶斯推理实际是借助于新的信息修正先验概率的推理方法。显然,这样的方法如果运用得当,可以在依据概率作出决断时,不必一次收集一个长期过程的大量资料,而可以根据事物发展的情况,不断利用新的信息来修正前面的概率,作出正确决策。例如,当无法对一件事做出准确的判断时,可以通过寻找它的调整因子来增大或者减小它的概率,在经过多次调整后,即可将它的概率增加或者减少到可以做出判断。

四、预习代码

Matlab代码如下:

M=50;% M为最大的类数

% 已知类别样本15个 (身高,体重,类别)。1-男,2-女

n=15;

pattern=[170,68,1;

??????? 130,66,2;

??????? 180,71,1;

??????? 190,73,1;

??????? 160,70,2;

??????? 150,66,1;

??????? 190,68,1;

??????? 210,76,1;

??????? 100,58,2;

??????? 170,75,1;

??????? 140,62,1;

??????? 150,64,2;

??????? 120,66,2;

??????? 150,66,1;

??????? 130,65,1];

???? % 未知类别样本4个

X=??? [140,70,0;

??? ?? 150,60,0;

??? ?? 145,65,0;

??? ?? 160,75,0];

K=4;? % 未知类别样本个数

pattern?? % 显示pattern

X???????? % 显示未知类别的样本

C=2; % 类别总数C=2

num=zeros(1,C);

%数组 num(i)存放第i类的样本数(i=1...C

for i=1:n % 统计每类样本数

??? num(pattern(i,3))=num(pattern(i,3))+1;

end

for i=1:C % 输出每类样本数

??????? fprintf('%d 类样本数= %d \n',i,num(i))

end

% 计算每类的先验概率

for i=1:C

? P(i)=num(i)/n;

? % 输出每类的先验概率

? fprintf('%d 类的先验概率=%.2f \n',i,P(i))

end

% float PW1[M],PW2[M];? 存放后验概率数组

% float height,weight;? 身高-体重

% 对未知类别的样本进行分类判断

for? k=1:K? % 对未知类别样本数据:身高-体重加以处理

?? fprintf('第%d 个样本:%d,%d\n',k,X(k,1),X(k,2))

?? height=X(k,1);

?? weight=X(k,2);

?? num1=0;

?? for i=1:n

???? if (pattern(i,1)==height&pattern(i,3)==1)

??????????? num1=num1+1;

???? end

?? end

?? if (num1==0)? % 防止 0 概率,分子分母均作处理:分子加1,分母加类别数或不同取值个数

??? ??? PW1(1)=1/(num(1)+2);

??? else

??????? PW1(1)=(num1+1)/(num(1)+2);

?? end

?? num1=0;

?? for i=1:n

???? if (pattern(i,2)==weight&pattern(i,3)==1)

??????????? num1=num1+1;

???? end

?? end

?? if (num1==0)? % 防止 0 概率,分子分母均作处理:分子加1,分母加类别数或不同取值个数

??? ??? PW1(2)=1/(num(1)+2);

??? else

??????? PW1(2)=(num1+1)/(num(1)+2);

?? end

?? num2=0;

?? for i=1:n

??? ?? if (pattern(i,1)==height&pattern(i,3)==2)

??????????? ?num2=num2+1;

?????? end

?? end

?? if (num2==0)

??? ? PW2(1)=1/(num(2)+2);

??? ?else

????? PW2(1)=(num2+1)/(num(2)+2);

?? end

?? num2=0;

?? for i=1:n

??? ?? if (pattern(i,2)==weight&pattern(i,3)==2)

??????? ??? ?num2=num2+1;

?????? end

?? end

?? if (num2==0)

??? ? PW2(2)=1/(num(2)+2);

??? ?else

????? PW2(2)=(num2+1)/(num(2)+2);

?? end

?? PWT1=PW1(1)*PW1(2)*P(1); % 计算属于第一类的似然概率*先验概率

?? PWT2=PW2(1)*PW2(2)*P(2); % 计算属于第二类的似然概率*先验概率

?? fprintf('?? 属于第一类的似然概率*先验概率(后验概率*P(X))= %.2f \n',PWT1)

?? fprintf('?? 属于第二类的似然概率*先验概率(后验概率*P(X))= %.2f \n',PWT2)

?? if (PWT1>PWT2)

??? ?? fprintf('?? %d -th pattern belongs to 1\n',k)

??? elseif (PWT1<PWT2)

?????? fprintf('?? %d -th pattern belongs to 2\n',k)

??? ?else

??? ?? fprintf('?? %d -th pattern belongs to 1 or 2 is equal\n',k)

???? end

?end

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-11-22 12:20:40  更:2021-11-22 12:23:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 4:23:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码