- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据挖掘
(计科一班——杨平——1025115034)
题目:iris数据集下的朴素贝叶斯实现
一.问题描述:
Iris数据集是在分类和模式识别研究中常用的基准数据。它是根据花瓣和萼片的长度和宽度来对Iris进行分类。Iris数据集包含3类4维样本,分别标为1, 2, 3。其中, 每类样本数目为50, 且服从正态分布,每个数据样本有4个特征向量,分别代表萼片长度, 萼片宽度, 花瓣长度和花瓣宽度。
分类是利用预定的已分类数据集构造出一个分类函数或分类模型(也称作分类器),并利用该模型把未分类数据映射到某一给定类别中的过程。
原理描述:
贝叶斯公式的实质是通过观察样本将状态的先验概率转化为状态的后验概率,给定一个未知类别的数据样本,贝叶斯分类法将预测属于具有最高后验概率的类。本问题可以数学描述为多元正态概率型下的最小错误率贝叶斯分类。
1)先验概率
设数据库表有个属性,因此,可以用一个维列向量来表示。同时,假定有个类。如果类的先验概率未知,则可以假定这些类是等概率的,即
,且
其中,是类中的训练样本数,而是训练样本总数。
2)参数估计
对于多变量正态分布,估计其均值和方差:
其中,为多元正态分布总体中第K个抽样,是维向量,是均值向量的最大似然估计,是协方差矩阵的最大似然估计。
利用python调用matlab函数,实现联合开发
.m文件见于附录
下面是python调用matlab方法实现
from win32com.client import Dispatch
h = Dispatch(Matlab.application)#启动MATLAB自动化服务器
h.execute(Iris_import.m)
h.execute(compare3.m)
三.附录
(1). “compare3.m”文件
function max=compare3(a,b,c)
max=a;
if maxb
max=b;
end
if maxc
max=c;
End
(2).“Iris_import.m”文件
clc;
clear all;
d=4;c=3;N=50;
D=load(Iris_data.txt);
data=zeros(150,d);
G1=zeros(50,d);
G2=zeros(50,d);
G3=zeros(50,d);
for i=1:1:4
data(:,i)=D(:,i+1);
end
for i=1:1:N
G1(i,:)=data(i,:);
G2(i,:)=data(i+N,:);
G3(i,:)=data(i+2*N,:);
end
disp(G1);
disp(G2);
disp(G3);
%计算各组的均值向量和协方差矩阵
miu1=mean(G1,1)
miu2=mean(G2,1)
miu3=mean(G3,1)
sigma1=zeros(d,d);
sigma2=zeros(d,d);
sigma3=zeros(d,d);
for i=1:1:N
sigma1=sigma1+(G1(i,:)-miu1)*(G1(i,:)-miu1);
sigma2=sigma2+(G2(i,:)-miu2)*(G2(i,:)-miu2);
sigma3=sigma3+(G3(i,:)-miu3)*(G3(i,:)-miu3);
end
sigma1=sigma1/N
sigma2=sigma2/N
sigma3=sigma3/N
%代入判别函数,实现分类
R=zeros(150,3);
fid=fopen(classifier_result.txt,wt);
for i=1:1:150
R(i,1)=-1/2*(data(i,:)-miu1)*inv(sigma1)*((data(i,:)-miu1))-1/2*log(det(sigma1));
R(i,2)=-1/2*(data(i,:)-miu2)*inv(sigma2)*((data(i,:)-miu2))-1/2*log(det(sigma2));
R(i,3)=-1/2*(data(i,:)-miu3)*inv(sigma3)*((data(i,:)-miu3))-1/2*log(det(sigma3));
switch (compare3(R(i,1),R(i,2),R(i,3)))
case R(i,1)
fprintf(fid,第%-2d个样本属于第1类\n,i);
case R(i,2)
fprintf(fid,第%-2d个样
您可能关注的文档
最近下载
- (高清版)DB31∕T 918-2015 城镇生活垃圾填埋场植被生态重建技术要求.pdf VIP
- YM-WI-SMT-062 A0 松下 NPM-TT2 贴片机作业指导书.pdf VIP
- 《安培定则》专项练习.docx VIP
- 沥青供货方案及保障措施.docx VIP
- 2025年中级银行从业资格之中级银行业法律法规与综合能力考试题库及答案【基础+提升】.docx VIP
- 2025年西藏自治区事业单位招聘考试公共基础知识考试试题库完整参考答案详解.docx VIP
- 高速铁路四电接口预留施工要点样本.pdf VIP
- 沥青供货方案及质量保证措施.docx VIP
- 通环(2018)8323 桥梁插板式声屏障安装图.pdf VIP
- YYT 1406.1-2016 医疗器械软件 第1部分:YYT 0316应用于医疗器械软件的指南.pdf
文档评论(0)