Scikit-learn是一個用於Python編程語言的免費軟件機器學習庫。 它具有各種分類,迴歸和聚類算法,包括支持向量機,隨機森林,梯度增強,k均值和DBSCAN,旨在與Python數值和科學庫NumPy和SciPy互操作。
安裝方法很簡單 `pip3 install -U scikit-learn`
下面介紹一個簡單的栗子,初步嘗試sklearn。
sklearn有自帶的數據集,直接導入就好,首先導入相關庫
1from sklearn import datasets 2from sklearn.model_selection import train_test_split 3from sklearn.neighbors import KNeighborsClassifier
導入鳶尾花數據集
1iris = datasets.load_iris() 2iris_X = iris.data 3iris_y = iris.target 4 5print(iris_X[:5], '\n\n',iris_y)
輸出:
觀察一下數據集,X 有四個屬性,y 有 0,1,2 三類。把數據集分爲訓練集和測試集,其中 test_size=0.3,即測試集佔總數據的 30%。
1X_train, X_test, y_train, y_test = train_test_split(iris_X, iris_y, test_size=0.3)
Sklearn-train_test_split,會隨機劃分訓練集和測試集。
查看下我們的數據
下一步就可以模型,然後用train數據訓練得到模型,最後用模型來預測數據。
1knn = KNeighborsClassifier() 2knn.fit(X_train, y_train) 3X_predict = knn.predict(X_test)
可以看到大概模擬出了數據,但是有誤差,是不會完完全全預測正確的。
模型sklearn已經很完善,調參和數據處理就很重要了。
sklearn 非常強大,值得好好鑽研下。