MATLAB支持向量机:函数或变量 ‘svmtrain‘ 无法识别解决方法

我的MATLAB版本是2020a,在运行程序时出现了一下报错
若在运行程序时出现了以下报错: 

支持向量机程序在MATLAB执行代码的时候发现有错误。

试一下help,如下图所示,SVM_Lsvmtrain均找不到。

打开matlab帮助文档:

可以看到:svmtrain和svmclassify已被删除

svmtrain和svmclassification函数已被删除。请使用fitcsvm函数和ClassificationSVM的预测函数。要更新代码,请用fitcsvm替换svmtrain的所有实例,并用predict替换svmclassify的所有实例。

当然,我们可以使用新的fitcsvm函数,也可以添加包后,使用svmtrain函数。如果想继续使用svmtrain函数,请按照一下操作添加包libsvm

Step1:

打开链接,下载libsvm包。

【免费】LIBSVM支持向量机库安装包资源-CSDN文库icon-default.png?t=N7T8https://download.csdn.net/download/qq_42059684/89268262?spm=1001.2014.3001.5503

Step2:

  1. 下载之后就解压得到libsvm文件,并将这个文件拷贝到自己的Matlab安装路径中的toolbox文件里。
  2. 打开Matlab,在工具栏找到“设置路径”并添加。如下图:

这里我们只保存matlab版本即可,Python等版本删除即可。切记要先保存后,再关闭对话框。

Step3:

打开上面的libsvm文件下的matlab文件夹,在matlab命令行窗口执行

mex -setup

若报错,则需要下载编译器,并安装,安装路径不能有中文。

方法1:

点击网站后显示:

可以到这个网址查看自己的Matlab支持的编译器:

Support - System Requirements and Supported Compilers Previous Releases - MATLAB & Simulinkicon-default.png?t=N7T8https://ww2.mathworks.cn/support/sysreq/previous_releases.html

以2020a为例,点击Details,如下图

 查看版本对应的Source:

或者点击下图中版本所在年份数字,直接下载:

下载后,保存在toolbox文件夹里,并点击安装,如下图: 

方法2:在 MATLAB 的“主页”选项卡上,单击附加功能-管理附加功能。在弹出窗口中,搜索术语“mingw”,然后单击“MATLAB 支持 MinGW-w64 C/C++ 编译器”。选择安装选项,然后按照安装步骤进行操作。

安装和调试完成后,再次在matlab命令行窗口执行:

mex -setup

“MEX”完成后,在matlab命令行窗口执行make。

make

“make"后,运行自己的代码就可以了。

若在运行过程出现问题:可能是程序在调用svmpredict函数时,输入输出变量个数与软件包对应的函数不一致。可参考此篇博文:

matlab predict函数并行,Matalb 智能算法第29个案例运行报错问题-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_29174013/article/details/116114370?spm=1001.2014.3001.5502

问题解决,正常运行。 

  • 14
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扬辰鑫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值