天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁(yè) > 論文百科 > 病蟲害防治論文 >

python_xuanyuansen的專欄

發(fā)布時(shí)間:2016-09-16 13:05

  本文關(guān)鍵詞:scikit-learn,由筆耕文化傳播整理發(fā)布。


scikit-learn是基于python的機(jī)器學(xué)習(xí)模塊,基于BSD開源許可證。這個(gè)項(xiàng)目最早由DavidCournapeau 在2007 年發(fā)起的,目前也是由社區(qū)自愿者進(jìn)行維護(hù)。

scikit-learn的官方網(wǎng)站是,在上面可以找到相關(guān)的scikit-learn的資源,模塊下載,文檔,例程等等。

scikit-learn的安裝需要numpy,scipy,matplotlib等模塊,windows用戶可以到

~gohlke/pythonlibs直接下載編譯好的安裝包以及依賴,也可以到這個(gè)網(wǎng)站下載。

 

scikit-learn的基本功能主要被分為六個(gè)部分,分類,回歸,聚類,數(shù)據(jù)降維,模型選擇,數(shù)據(jù)預(yù)處理,具體可以參考官方網(wǎng)站上的文檔。

對(duì)于具體的機(jī)器學(xué)習(xí)問題,通?梢苑譃槿齻(gè)步驟,數(shù)據(jù)準(zhǔn)備與預(yù)處理,模型選擇與訓(xùn)練,模型驗(yàn)證與參數(shù)調(diào)優(yōu),這里以邏輯回歸模型為例說明。

scikit-learn支持多種格式的數(shù)據(jù),包括經(jīng)典的iris數(shù)據(jù),LibSVM格式數(shù)據(jù)等等。為了方便起見,推薦使用LibSVM格式的數(shù)據(jù),詳細(xì)見LibSVM的官網(wǎng)。

from sklearn.datasets importload_svmlight_file,導(dǎo)入這個(gè)模塊就可以加載LibSVM模塊的數(shù)據(jù),

t_X,t_y=load_svmlight_file("filename")

機(jī)器學(xué)習(xí)模型也要導(dǎo)入相應(yīng)的模塊,邏輯回歸模型在下面的模塊中。

from sklearn.linear_modelimport LogisticRegression

regressionFunc =LogisticRegression(C=10, penalty='l2', tol=0.0001)

train_sco=regressionFunc.fit(train_X,train_y).score(train_X,train_y)

test_sco=regressionFunc.score(test_X,test_y)

就可以完成模型的訓(xùn)練和測(cè)試了。

為了選擇更好地模型可以進(jìn)行交叉實(shí)驗(yàn),或者使用貪心算法進(jìn)行參數(shù)調(diào)優(yōu)。

導(dǎo)入如下模塊就可以,

CV:

from sklearn importcross_validation

X_train_m, X_test_m,y_train_m, y_test_m = cross_validation.train_test_split(t_X,t_y, test_size=0.5,random_state=seed_i)

regressionFunc_2.fit(X_train_m,y_train_m)

sco=regressionFunc_2.score(X_test_m,y_test_m, sample_weight=None)

 

GridSearch:

from sklearn.grid_searchimport GridSearchCV

tuned_parameters =[{'penalty': ['l1'], 'tol': [1e-3, 1e-4],

                     'C': [1, 10, 100, 1000]},

                    {'penalty': ['l2'], 'tol':[1e-3, 1e-4],

                     'C': [1, 10, 100, 1000]}]

clf =GridSearchCV(LogisticRegression(), tuned_parameters, cv=5, scoring=['precision','recall'])

print(clf.best_estimator_)

 

當(dāng)然可以利用matplotlib繪制學(xué)習(xí)曲線,需要導(dǎo)入相應(yīng)模塊如下:

from sklearn.learning_curveimport learning_curve,validation_curve

核心代碼如下,具體參見scikit-learn的官方文檔:

rain_sizes, train_scores,test_scores = learning_curve(

        estimator, X, y, cv=cv, n_jobs=n_jobs,train_sizes=train_sizes)

train_scores, test_scores =validation_curve(

        estimator, X, y, param_name,param_range,

        cv, scoring, n_jobs)

 

當(dāng)然,scikit-learn中的機(jī)器學(xué)習(xí)模型非常豐富,包括SVM,決策樹,GBDT,,KNN等等,可以根據(jù)問題的類型選擇合適的模型,更多內(nèi)容請(qǐng)參閱官方文檔。


  本文關(guān)鍵詞:scikit-learn,由筆耕文化傳播整理發(fā)布。



本文編號(hào):116387

資料下載
論文發(fā)表

本文鏈接:http://www.sikaile.net/wenshubaike/kaixinbaike/116387.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶127f9***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com