當我們照常使用分類器函數svmclassify時,2018版的matlab會報出以下錯誤:
解決辦法:
1,下載libsvm(一般下載最新版本就ok了)包,並將其添加至matlab的toolbox文件里。
並打開matlab編輯器,主頁 / 設置路徑 / 添加並包含子文件夾 / 加載libsvm包;
2. 編譯toolbox/libsvm/matlab文件,編譯方式兩種:一種是直接在matlab中打開make.m文件 ,命令框中輸入mex -setup
另一種:windows+r / cmd /cd +make.m 文件路徑下,輸入mex -setup ,之后再輸入make!
(特別提示:對於win10 系統的電腦,記得看上篇博客,libsvm中的代碼有需要改動的地方)
上圖是針對win10系統改動的代碼部分;
3. 如果提示找不到編譯器,則按照提示下載mingwin64,並進行安裝(安裝步驟百度都有,任意搜)
之后還是編譯器找不到,接着安裝visual studio (安裝的版本與之前電腦上有的net framwork版本相匹配)比如本機安裝net framwork4.5,則visual studio 安裝2012 版本
4. 一切安裝到位后,找到make.m文件進行編譯
軟件的安裝步驟都可以搜索到,請按規則安裝(各安裝包要互相匹配)!!!
5.
原本的代碼,會出現錯誤使用svmclassify的提示:
其中,將svmtrain ——> fitcsvm
svmclassify ——> predict
同時注意兩個函數的用法規則。
這樣就可以編譯成功了!