Как запустить libsvm в MATLAB?
Как начать работу с libsvm под MATLAB?
Я загрузил библиотеку и извлек ее в C:Program FilesMATLABR2012atoolbox
,
но тогда я не знаю, как использовать его в MATLAB.
2 ответов
скачать и извлечь libsvm в каталоге по вашему выбору, скажем C:\libsvm
как описано в C:\libsvm\matlab\README
файл, сначала вы должны убедиться, что поддерживаемый компилятор C/C++ это. Обратите внимание, что в 64-разрядных системах вам нужна правильная 64-разрядная версия компилятора (например, Windows SDK необходим для Visual Studio Express edition)
>> mex -setup
после того, как вы выбрали компилятор, вам нужно скомпилировать MEX-файлы:
>> cd('C:\libsvm\matlab')
>> make
наконец добавьте папку с сгенерированными двоичными файлами в путь поиска MATLAB:
>> addpath('C:\libsvm\matlab')
Проверьте библиотеку на простом примере (поддельные данные):
>> labels = double(rand(10,1)>0.5);
>> data = rand(10,5);
>> model = svmtrain(labels, data, '-s 0 -t 2 -c 1 -g 0.1')
обратите внимание, что текущая версия libsvm включает предварительно скомпилированные 64-разрядные MEX-файлы для Windows. Двоичные файлы расположены в C:\libsvm\windows\*.mexw64
(копия на matlab
папку сверху)
для меня мне не нужно было перекомпилировать файлы libsvm (это вызвало некоторые проблемы с .net framwork и Windows SDK) я использовал только уже скомпилированные файлы и добавил их в новую папку, выполнив указанные шаги здесь минус шаг make.
Итак:
1-я думаю, вам нужно создать папку "libsvm" под "C:\Program файлы\MATLAB\R2014b\toolbox\".
2 - скопируйте *.mexw64 файлы из папка "libsvm-3.21\windows" в новую папку.
3 - наконец, добавьте папку libsvm, которую вы только что создали в MATLAB bath, нажав кнопку set path в home и добавив новую папку с путем "C:\Program файлы\MATLAB\R2014b\toolbox\libsvm"