linuxlibsvmpython
① libsvm使用python尋優的錯誤信息syntaxerror: invalid syntax是什麼意思
沒對齊。
仔細檢查一下,是不是多了或少了一個空格
② 如何在Windows7上安裝Libsvm Python
方法/步驟
1
首先去python官網下載Python2.79安裝程序,或者不知道官網地址的話,你也可以在網路下搜索python-2.7.9.msi安裝文件
2
在python官網上點擊Downloads按鈕,選擇"Python2.7.9"按鈕,在彈出對話框中點擊「保存」按鈕
3
點擊下載好的python2.7.9安裝文件
在安裝軟體窗口,點擊"Next>"按鈕
選擇相應的安裝目錄,這里我選擇的是默認安裝目錄C:\Python27,點擊"Next>"按鈕
注意,這里一定要選擇安裝這個組件Add python.exe to Path 選項,點擊"Next>"按鈕
安裝完成後會出現以下提示信息
接下來要為python2.7.0配置Path環境變數
點擊桌面上的計算機圖片,右擊選擇屬性->選擇高級系統設置
選擇環境變數按鈕
選擇Path選項,點擊"編輯",彈出窗口,在變數值框輸入C:\Python27;
在開始菜單里輸入cmd,按下鍵盤上的回車鍵
在命令行窗口中輸入以下命令:python,按下鍵盤上的回車鍵,顯示出python版本信息,到了這里,就成功的安裝了python了!
③ 如何利用python使用libsvm
一:libsvm包下載與使用:
,
1.
把包解壓在C盤之中,如:C:\libsvm-3.18
2.
因為要用libsvm自帶的腳本grid.py和easy.py,需要去官網下載繪圖工具gnuplot,解壓到c盤
3.
進入c:\libsvm\tools目錄下,用文本編輯器(記事本,edit都可以)修改grid.py和easy.py兩個文件,找到其中關於gnuplot路徑的那項,根據實際路徑進行修改,並保存
4python與libsvm的連接(參考SVM學習筆記(2)LIBSVM在python下的使用 )
a.打開IDLE(python GUI),輸入
>>>import sys
>>>sys.version
如果你的python是32位,將出現如下字元:
『2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)]』
這個時候LIBSVM的python介面設置將非常簡單。在libsvm-3.16文件夾下的windows文件夾中找到動態鏈接庫libsvm.dll,將其添加到系統目錄,如`C:\WINDOWS\system32\』,即可在python中使用libsvm
b.如果你是64位的請參考文獻,請參考上述連接。
5.執行一個小例子
import os
os.chdir('C:\libsvm-3.18\python')#請根據實際路徑修改
from svmutil import *
y, x = svm_read_problem('../heart_scale')#讀取自帶數據
m = svm_train(y[:200], x[:200], '-c 4')
p_label, p_acc, p_val = svm_predict(y[200:], x[200:], m)
##出現如下結果,應該是正確安裝了
optimization finished, #iter = 257
nu = 0.351161
obj = -225.628984, rho = 0.636110
nSV = 91, nBSV = 49
Total nSV = 91
Accuracy = 84.2857% (59/70) (classification)
④ python下使用libsvm能處理數據格式為復數(complex)的數據嗎
毋庸置疑,LibSVM是台灣牛人為世界機器學習的卓越貢獻之一。一般都是基於Matlab的,其實LibSVM也可以用Python跑。
第一步,確定本機Python的版本:
32位的最易配置,哈哈,我的機器就是這么的古董。64位的童鞋請Google。
第二步,到官網http://www.csie.ntu.e.tw/~cjlin/libsvm/,來下載LibSVM軟體包,我選擇的是zip包。
第三步,將zip包解壓到一個特定位置,我放到了C:盤根目錄,當然也可以放到program files中。
第四步,就可以測試一下LibSVM是否可用了,打開Python IDE,輸入以下代碼:
能夠看到輸出,84%的分類准確性。
第五步,使用我的個人數據
libsvm的數據格式如下:
第一列代表標簽,第二列是第一個特徵值,第三列是第二個特徵值。所以,先要把數據按規定格式整理好。然後開始訓練。
import os
import sys
os.chdir('C:\libsvm-3.17\python')
from svmutil import *
y, x = svm_read_problem('../lkagain.txt')
m = svm_train(y[:275], x[:275], '-c 5')
y, x = svm_read_problem('../lk2.txt')
p_label, p_acc, p_val = svm_predict(y[0:], x[0:], m)
print p_label
print p_acc
print p_val
第六步,Python介面
在libsvm-3.16的python文件夾下主要包括了兩個文件svm.py和svmutil.py。
svmutil.py介面主要包括了high-level的函數,這些函數的使用和LIBSVM的MATLAB介面大體類似
svmutil中主要包含了以下幾個函數:
svm_train() : train an SVM model
svm_predict() : predict testing data
svm_read_problem() : read the data from a LIBSVM-format file.
svm_load_model() : load a LIBSVM model.
svm_save_model() : save model to a file.
evaluations() : evaluate prediction results.
⑤ 求助,關於libsvm的運算結果分類精度
這個問題挺復雜的。 表面上看是libsvm導入出錯了。
但是還有另外一個原因,就是數據的格式不太對。 解析出錯了。
第三個原因就是python里計算的精度比較高。 而藉助了libsvm後數據的精度變低了。
你說的准確率應該是演算法結果的准確率。 按理,數據導入時精度變低應該影響不大。
所以很大可能是數據導入錯誤,或者是演算法錯誤。
⑥ linux系統libsvm可以單獨進行機器學習嗎
沒看懂你的問題,如果你是想在linux下用libsvm進行SVM演算法的話,這個是可以的,因為libsvm提供了java和python的工具包,這兩個都是跨平台的!
⑦ 如何下載libsvm python
下載libsvm python的方法:
1、訪問「www.csie.ntu.e.tw/~cjlin/libsvm/」網頁,下載zip格式的數據包
2、將文件解壓到python的site-packages文件夾中就可以了
更多Python知識,請關註:Python自學網!!
⑧ python調用libSVM異常,svm_save_model(modelName,model)。總說第一個參數類型錯誤
可以看看python文件夾下面的README。第一個參數是:保存model的文件名,字元串類型。第二個參數就是svm_train返回的model。
README裡面有詳細的例子。按照你的錯誤,
model_file_name是字元串類型嗎?檢查一下就行吧