sklearn學習筆記

2021-08-19 04:26:34 字數 3724 閱讀 3091

1.波士頓房價線性回歸模型

from sklearn import datasets

from sklearn.linear_model import linearregression

boston = datasets.load_boston(

)data_x = boston.data

y = boston.target

model = linearregression(

)model.fit(data_x,y)

pred = model.predict(data_x[:2

,:])

actu = y[:2

]print

(pred)

print

(actu)

output:

前兩個房屋****:[

30.00821269

25.0298606

]前兩個房屋實際**:[24.

21.6

]

可見誤差還是挺大的,還需要很多任務作來對模型進行優化

2.對鳶尾花降維

鳶尾花原本是三種類別,此處把原本4個特徵維度降低為2個特徵維度,但是大致還是三類

3.knn對鳶尾花分類

from sklearn import datasets

from sklearn.cross_validation import train_test_split

from sklearn.neighbors import kneighborsclassifier

iris_x,iris_y = datasets.load_iris(return_x_y=

true

)knn = kneighborsclassifier(

)x_train,x_test,y_train,y_test = train_test_split(iris_x,iris_y,test_size=

0.3)

knn.fit(x_train,y_train)

print

(knn.predict(x_test)

)print

(y_test)

output:

knn測試集**分類:[12

1002

0120

2020

2002

1012

1012

0100

0110

0012

2021

101]

knn測試集實際分類:[12

1002

0120

1020

2002

1012

1012

0100

0110

0012

2021

102]

knn預設選擇近鄰5個資料,使用交叉驗證,test資料為總資料的30%

4.標準化資料

import numpy as np

from sklearn import preprocessing

a = np.array([[

10,2.7,

3.6],[

-100,5

,-2]

,[120,20,

40]])

print

(a)print

(preprocessing.scale(a)

)print

(preprocessing.minmax_scale(a)

)print

(preprocessing.minmax_scale(a,feature_range=(-

1,1)

))

第三個輸出預設標準化範圍為0到1,第四個輸出自定義標準化範圍在-1到1之間

5.支援向量機對鳶尾花分類

from sklearn import datasets

from sklearn.cross_validation import train_test_split

from sklearn.svm import svc

iris_x,iris_y = datasets.load_iris(return_x_y=

true

)x_train,x_test,y_train,y_test = train_test_split(iris_x,iris_y,test_size=

0.3)

clf = svc(

)clf.fit(x_train,y_train)

print

(clf.predict(x_test)

)print

(y_test)

print

(clf.score(x_test,y_test)

)

每次得到的結果都不相同,可能跟交叉驗證取值有關吧,其中的訓練資料70%應該是隨機抽取的

6.交叉驗證knn中近鄰數對精度的影響

sklearn學習筆記

決策樹一般採用整合,具有隨機,不純度最優 from sklearn import tree from sklearn.datasets import load wine from sklearn.model selection import train test split 用於劃分訓練測試集數目 ...

sklearn學習筆記

from sklearn.datasets import load iris from sklearn.model selection import train test split from sklearn.feature extraction import dictvectorizer from...

sk learn 學習筆記八

感知器通常用下面的圖形表示 x1,和是輸入單元。每個輸入單元分別代表乙個特徵。感知器通常用另外乙個輸入單元代表乙個常用誤差項,但是這個輸入單元在圖形中通常被忽略了。中間的圓圈是乙個計算單元,類似神經元的細胞核。連線輸入單元和計算單元的邊類似於樹突。每條邊是乙個權重,或者是乙個引數。引數容易解釋,如果...