matlab 高斯朴素贝叶斯分类器
时间: 2023-08-26 20:11:33 浏览: 291
Matlab实现朴素贝叶斯分类算法
5星 · 资源好评率100%
在 MATLAB 中,使用高斯朴素贝叶斯分类器(GNB)可以按照以下步骤编写代码:
```matlab
% 1. 准备数据
load fisheriris; % 加载 Fisher Iris 数据集
X = meas; % 特征矩阵
y = species; % 目标向量
% 2. 拆分数据集为训练集和测试集
cv = cvpartition(y, 'Holdout', 0.3); % 以 70% 的数据作为训练集,30% 的数据作为测试集
X_train = X(cv.training,:);
y_train = y(cv.training,:);
X_test = X(cv.test,:);
y_test = y(cv.test,:);
% 3. 训练高斯朴素贝叶斯分类器
model = fitcnb(X_train, y_train, 'DistributionNames', 'normal');
% 4. 预测测试集数据
y_pred = predict(model, X_test);
% 5. 计算分类准确率
accuracy = sum(y_pred == y_test) / numel(y_test);
disp(['分类准确率:', num2str(accuracy)]);
```
以上代码加载了 Fisher Iris 数据集,将其拆分为训练集和测试集。然后使用 `fitcnb` 函数训练高斯朴素
阅读全文