You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用MATLAB分类学习器导出的线性判别模型并可视化决策边界

解决MATLAB分类学习器线性判别模型的输出查看与决策边界绘制问题

一、查看模型预测输出

执行预测命令后,将结果保存到变量即可直接查看,还可以通过混淆矩阵对比真实标签与预测标签的匹配情况:

% 获取预测结果
yfit = trainedModel_LD.predictFcn(T);
% 打印预测标签
disp('预测标签:');
disp(yfit);
% 生成混淆矩阵,评估分类效果
confusion_matrix = confusionmat(T(:,1), yfit);
disp('混淆矩阵:');
disp(confusion_matrix);

注:T(:,1)是原始数据中的真实标签列,yfit是模型输出的预测标签。

二、绘制类间决策边界

分类学习器导出的trainedModel_LD是结构体,需先提取其中的底层LDA模型对象,再调用绘图函数:

% 提取底层线性判别模型
ldaModel = trainedModel_LD.LinearDiscriminantModel;
% 绘制原始分类散点图
figure
gscatter(T(:,2), T(:,3), T(:,1), 'rgb', 'osd');
hold on
% 绘制决策边界
plot(ldaModel)
title('LDA模型决策边界与原始数据分布')
xlabel('x')
ylabel('y')
legend('Cluster 1','Cluster 2','Cluster 3','Location','eastoutside')
hold off

之前直接plot(trainedModel_LD)报错,是因为该结构体不是MATLAB可直接绘图的模型对象,必须提取LinearDiscriminantModel字段对应的模型。

三、查看模型相关信息

直接在命令行输入trainedModel_LD并回车,即可展开结构体查看所有模型相关信息,关键字段包括:

  • LinearDiscriminantModel:底层LDA模型对象,包含均值、协方差、判别系数等核心参数
  • predictFcn:预测函数句柄
  • ClassNames:模型识别的类别名称
  • ScoreTransform:分数转换规则

若要查看LDA模型的具体参数,可通过以下代码:

ldaModel = trainedModel_LD.LinearDiscriminantModel;
% 查看各类别的均值向量
disp('各类别均值:');
disp(ldaModel.Mu);
% 查看协方差矩阵
disp('协方差矩阵:');
disp(ldaModel.Covariance);

内容的提问来源于stack exchange,提问作者user2587726

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 09:58:10