發表文章

目前顯示的是 5月, 2019的文章

[Note] 在 ubuntu 上用 python 連接 mySQL

參考:  https://www.opencli.com/perl/python-install-mysqldb 和 Java, C 引入 library 的方法不同, 對 python 而言, 所使用的套件需要先安裝 (如這篇文章), 或是, 將 make 好後的檔案放入指定路徑 (如 libsvm 的方法), 在這篇文章中, 使用 pip 的方式, 安裝連接 mySQL 的套件, 因此, 第一個步驟, 就是安裝或是升級 pip: $ apt-get install python-pip $ pip install -U pip 如果在升級 pip 後, 出現以下錯誤: Traceback (most recent call last):   File "/usr/bin/pip", line 9, in <module>     from pip import main ImportError: cannot import name main 需要修改 /usr/bin/pip 中的變數為: from pip import __main__ if __name__ == '__main__':     sys.exit(__main__._main()) 接著, 安裝必要套件與 python 插件: $ apt-get install python-dev libmysqlclient-dev $ pip install MySQL-python 我們一樣寫一隻簡單的程式來操作 mySQL database, 參考自:  http://www.runoob.com/python/python-mysql.html import MySQLdb db = MySQLdb.connect("localhost", "USERNAME", "PASSWORD", "DB_NAME", charset='utf8' ) cursor = db.cursor() cursor.execute("SELECT VERSION()&q

[Note] 在 ubuntu 上以 python 執行 libsvm

參考:  https://blog.csdn.net/letsseehow/article/details/10483729 首先, 利用 wget 下載 libsvm, 並解壓縮, 下載網址請參照 libsvm 的官網:  https://www.csie.ntu.edu.tw/~cjlin/libsvm/ 或是直接用此連結: libsvm連結 假設解壓縮完的資料夾路徑為: ~/libsvm-3.23 需要 make 兩次, 一次在 ~/libsvm-3.23, 另一次在 ~/libsvm-3.23/python/, 完成後, 應該可以找到: ~/libsvm-3.23/libsvm.so.2 把檔案移到 python2.7 的資料夾下, 指令如下: sudo cp ~/libsvm-3.23/python/*.py /usr/lib/python2.7/dist-packages/ sudo cp ~/libsvm-3.23/libsvm.so.2 /usr/lib/python2.7/ 接著, 我們來寫一個簡單的 SVM 測試程式: from svmutil import * from svm import * y, x = [1,-1], [{1:1, 2:-1}, {1:1,2:1}] prob  = svm_problem(y, x) param = svm_parameter('-t 0') model = svm_train(prob, param) yt = [1] xt = [{1:1, 2:-1}] p_label, p_acc, p_val = svm_predict(yt, xt, model) print(p_label) 其中, y 是 label, x 是分類輸入, 舉例來說: {1:1, 2:-1} 代表有兩個 feature, 第一個數值為 1, 第二個數值為 -1, svm_parameter 為 SVM 所用到的參數, 請參照 libsvm 的說明, yt, xt, 則是用來 testing 的資料, 執行結果如下: $ python svmtest.py * optimization finished, #iter = 1