资源简介
朴素贝叶斯算法写的关于鸢尾花分类的程序,有需要的可以自己下载修改使用。重新更改一下积分设置,怎么变成13了
代码片段和文件信息
clc
clear
close all
total_data=load(‘C:\Users\ZAN\Desktop\matalb_drive\machine-learnning\Bayes\iris_data.mat‘);
len = size(total_data.features1);
rand_num=randperm(len);%disorder sequence
ratio=0.8;
train_num=ratio*len;
test_num=len-train_num;
data_mat = total_data.features(rand_num:);%attribute
labels = total_data.classes(rand_num);%class labels
% normalization
maxV = max(data_mat);
minV = min(data_mat);
range = maxV-minV;
newdataMat = (data_mat-repmat(minV[len1]))./(repmat(range[len1]));
newtrain_dataMat=newdataMat(1:train_num:);
newtest_dataMat=newdataMat(train_num+1:end:);
train_labels=labels(1:train_num);
test_labels=labels(train_num+1:end);
dataMat_1=newtrain_dataMat(find(train_labels==1):);
dataMat_2=newtrain_dataMat(find(train_labels==2):);
dataMat_3=newtrain_dataMat(find(train_labels==3):);
%compute the mean and stdandard diviation of each class
mean_1=mean(dataMat_1);
std_1=std(dataMat_1);
mean_2=mean(dataMat_2);
std_2=std(dataMat_2);
mean_3=mean(dataMat_3);
std_3=std(dataMat_3);
right_pre=0;
for i=1:test_num
prob_1=prod( normpdf(newtest_dataMat(i:)mean_1std_1) 2);
prob_2=prod( normpdf(newtest_dataMat(i:)mean_2std_2) 2);
prob_3=prod( normpdf(newtest_dataMat(i:)mean_3std_3) 2);
max_prob=max([prob_1prob_2prob_3]);
if max_prob==prob_1
pre_class=1;
elseif max_prob==prob_2
pre_class=2;
else
pre_class=3;
end
fprintf(‘predict class is:%d true result is:%d \n‘[pre_class test_labels(i)] );
if pre_class == test_labels(i)
right_pre=right_pre+1;
end
end
fprintf(‘the accuracy of the classifiter is:%d‘right_pre/test_num);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1105 2010-10-17 14:51 iris_data.mat
文件 1762 2018-08-31 09:37 my_bayes.m
- 上一篇:自相关法求时间延迟tau
- 下一篇:MATLAB实现SVPWM
相关资源
- MATLAB实现SVPWM
- LSTM-regression-master.zip
- LSTM算法推导及代码.zip
- 一维高斯随机粗糙面建模.zip
- 贝叶斯分类Matlab代码
- Matlab差分阈值法标记小波变换软阈值
- l利用matlab进行图像纹理特征提取
- 平面钢架问题求解MATLAB
-
Matlab下Simuli
nk搭建单轮四分之一车辆 - matlab-m语言-编程实现随机树算法实现
-
simuli
nk电弧模型 - 电力系统可靠性评估matlab编程
- 加注释完整CEEMD程序的matlab代码
- Sigma Delta ADC matlab全系统仿真.zip
- 基于椭圆雷达定位的matlab仿真
- 车辆ABS系统滑移率Bang-Bang、PID控制模
- 列车追踪间隔距离仿真
- MATLAB多种改进直方图均衡化
- 双边滤波图像处理方法MATLAB程序
- MATLAB:图像旋转与插值
- 模糊C均值聚类算法
- matlab整流电路
- matlab画雷达图
- matlab心电信号滤波R波提取
- FBG反射谱透射率的MATlab仿真,基于耦
- matlab2016
- 第二版 PDF 李国勇智能预测控制及其
- 基于matlab的PLL锁相环
-
MATLAB/Simuli
nk控制论电弧仿真模型 接 - 合成孔径雷达的BP成像算法
评论
共有 条评论