2013-03-21 12 views
8

Come iniziare con libsvm in MATLAB?Come eseguire libsvm in MATLAB?

Ho scaricato la libreria e l'ho estratta in C:\Program Files\MATLAB\R2012a\toolbox\, ma poi non so come usarla in MATLAB.

+0

legge il file 'README' che si trova nell'archivio estratto nella sottocartella' matlab'. Dovrai compilare i file MEX, quindi aggiungere la cartella al percorso di ricerca MATLAB – Amro

+0

Hai letto il file README che si trova nella cartella MATLAB? Ci sono alcune istruzioni su come usarlo in MATLAB. Avresti bisogno di eseguire un comando make all'interno di MATLAB tra le altre cose. – Pedrom

+0

ma come compilare i file MEX? Ho provato questo [collegamento] (http://stackoverflow.com/questions/13954007/how-to-set-up-libsvm-matlab-interface?rq=1) ma è un errore in MATLAB. e ho anche provato mex -setup ma c'è un errore "Errore nell'utilizzo di mex (riga 206) Impossibile completare correttamente." – user2157806

risposta

28

Scaricare ed estrarre libsvm in una directory di vostra scelta, dire C:\libsvm

Come descritto nel file C:\libsvm\matlab\README, in primo luogo è necessario assicurarsi un supported C/C++ compiler è installato. Si noti che su sistemi a 64 bit, è necessario il corretto versione a 64 bit del compilatore (ad esempio Windows SDK è necessaria per l'edizione di Visual Studio Express)

>> mex -setup 

Dopo aver selezionato un compilatore, è necessario compilare il MEX-files:

>> cd('C:\libsvm\matlab') 
>> make 

Infine aggiungere la cartella con i file binari generati al percorso di ricerca di MATLAB:

>> addpath('C:\libsvm\matlab') 

prova la biblioteca con un semplice esempio (dati falsi):

>> labels = double(rand(10,1)>0.5); 
>> data = rand(10,5); 
>> model = svmtrain(labels, data, '-s 0 -t 2 -c 1 -g 0.1') 

Si noti che la versione corrente di libsvm include file MEX a 64 bit precompilati per Windows. I binari sono situati in C:\libsvm\windows\*.mexw64 (copiare quelli al matlab sottocartella dall'alto)

+1

Grazie mille, ha funzionato per me per il sistema operativo Windows. Potete per favore aiutarmi a eseguire la stessa cosa per Mac OS? –

+0

@Amro Aggiungi ulteriori dettagli sul test, perché sto affrontando problemi con l'opzione '-b', cioè la probabilità. Il risultato mostra la stessa distribuzione di prob a 5 classi per tutti i test. – kAmol

0

Per quanto mi riguarda non ho avuto bisogno di ricompilare i file libsvm (lo ha fatto causare alcuni problemi con il .net framwork e le finestre SDK) ho usato solo i file già compilati e li hanno aggiunti a una nuova cartella seguendo i passaggi indicati heremeno il passaggio di creazione.

Quindi, per riassumere:

1- Penso che è necessario creare la cartella "libsvm" sotto "C: \ Program Files \ MATLAB \ R2014b \ Toolbox \".

2- Quindi copiare i file * .mexw64 dalla cartella "libsvm-3.21 \ windows" nella nuova cartella.

3- infine aggiungere la cartella libsvm appena creato per bagno MATLAB facendo clic sul pulsante percorso impostato in casa e aggiungendo la nuova cartella con il percorso "C: \ Program Files \ MATLAB \ R2014b \ Toolbox \ libsvm"