天天看點

matlab2018b使用libsvm對wine資料集進行分類libsvm工具包的安裝使用libsvm對wine資料集進行分類

文章目錄

  • libsvm工具包的安裝
  • 使用libsvm對wine資料集進行分類

分類程式來自知乎

https://zhuanlan.zhihu.com/p/32366047

我隻是不習慣分行寫而已,沒有啥大的改動,下面的是部分是我遇到的坑,當時卡了有點久,是以記錄一下,感謝之前所有的部落客大大和up主大大。

libsvm工具包的安裝

軟體采用matalb2018b+vs2019+libsvm-314

libsvm是台灣大學林智仁(Lin Chih-Jen)教授等2001年開發設計的一個簡單, 易于使用和快速有效的SVM模式識别與回歸的軟體包,非常好用。libsvm軟體安裝下載下傳如下

百度網盤連結:https://pan.baidu.com/s/14b80Y_hLY7rKzsWS021yvA

提取碼:2k7c

網盤裡面有兩個工具包,一個是libsvm,一個是b站視訊裡推薦的工具包,但是我裝了還沒用過,B站視訊是安裝教程網址是: https://www.bilibili.com/video/BV1Tp4y1Q7oy?from=search&seid=3679677832720517463

另外,我下載下傳的是vs2019,matlab2018,需要進行額外的配置才能使用libsvm,針對這個問題,有兩個解決方法,方法一請參考 部落格1: https://blog.csdn.net/qq_21905401/article/details/77964779?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

方法二請參考 部落格2: https://blog.csdn.net/Systimax/article/details/106567092?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

推薦使用方法2,一勞永逸,解決matlab和vs2019的混合程式設計問題,部落格2中的msvc2019.xml和msvcpp2019.xml兩個檔案放在網盤中的MATLAB VS2019 Support壓縮包中,網盤裡面我還寫了一份簡單的使用說明,内容如下

使用說明

libsvm的安裝下載下傳 我安裝的是vs2019社群版,自行下載下傳就好了,不用錢。matlab是matlab2018b

我是參考B站的視訊安裝的:

https://www.bilibili.com/video/BV1Tp4y1Q7oy?from=search&seid=3679677832720517463

需要安裝visual studio

,但我安裝的vs2019,需要改配置才能和matlab2018b配套使用,(vs2019比matlab2018b晚推出,是以matlab2018不支援vs2019)

解決方法一:隻針對libsvm 參考部落格

https://blog.csdn.net/qq_21905401/article/details/77964779?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

解決方法二:一勞永逸,徹底解決matlab和vs2019混合程式設計的問題,參考

https://blog.csdn.net/Systimax/article/details/106567092?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

使用libsvm對wine資料集進行分類

安裝好了libsvm,我們就開始一個小的例子——對wine資料集進行分類,程式具體的内容我也不是很了解,剛剛在開始學習,隻是把這個程式跑通而已,看來還有很長的一條路要走啊,程式來源是https://zhuanlan.zhihu.com/p/32366047,我不習慣分行,是以改了一下而已,幾乎都是沒改動。

該程式需要用到data.mat,程式裡不提供,需要自己搞定,然後和該程式放在同一個檔案夾。 我看了一下data.mat應該就是包含兩個變量一個是wine,一個是wine_labels,wine就是uci的wine資料集了,裡面是三類的紅酒共178個樣本,每個樣本有14個屬性值,是以是一個178x14的矩陣,第一個屬性是類别,其餘13個是它的分類特征,wine_labels是紅酒的标簽,是一個178x1的矩陣,就是wine矩陣的第一列變量,可以通過

wine_labels=wine(:,1);

語句獲得wine的第一列變量,那麼wine怎麼獲得呢?可以從uci資料集上下載下傳得到,把下載下傳到的wine.data檔案轉為.mat檔案,然後load wine.mat,就可以在工作區看到我們的wine矩陣變量了,接着使用

wine_labels=wine(:,1);

得到wine_labels,然後使用

save (‘data.mat’,‘wine’,‘wine_labels’);

我們就可以得到該程式中的data.mat了,如何把下載下傳到的wine.data檔案轉為.mat檔案,在上一篇部落格裡面有說到,裡面包括怎麼下載下傳,怎麼轉換,怎麼儲存變量為.mat格式。部落格位址:https://blog.csdn.net/qigeyonghuming_1/article/details/108424028

下面我把程式和自己做的data.mat放在了一起,我是matlab2018b,安裝了libsvm和vs2019應該可以直接用,見百度網盤:連結:https://pan.baidu.com/s/1MSLs2pMOUXU-DHtYz9rWIA

提取碼:ki1n

最後這個是程式的運作結果,暫時隻看懂了accuracy是100%,菜鳥流下了羨慕的淚水,看來還有很多要學習的啊,謝謝之前所有厲害的部落客和up主。matlab用libsvm分類wine資料集還有一份程式是Jack 王的,https://www.cnblogs.com/blogwww/p/9498343.html,那個看上去好酷炫,再次羨慕ing。

matlab2018b使用libsvm對wine資料集進行分類libsvm工具包的安裝使用libsvm對wine資料集進行分類

繼續閱讀