[Scikit-learn教程] 02.01 統計學習:基本設置和預測器對象


歡迎訪問集智主站:集智,通向智能時代的引擎python


注意!

本文全部代碼都可在集智原貼中運行調試(無需安裝環境),請點擊這裏前往原貼
git



隨着實驗科學中的數據量急速增加,機器學習這門技術的重要性也與日俱增,其解決的問題包括創建預測方程以關聯觀察結果,對觀察結果進行分類,或是從沒有標籤的數據集中挖掘規律。算法

本教程面向統計學習,即基於統計原理應用機器學習技術:從數據中得出結論。 Scikit-learn是一個Python模塊,整合了經典機器學習算法和經常使用的Python科學計算包(NumPy, SciPy, matplotlib)。數組

數據集

Scikit-learn以二維數組形式處理來自一個或多個數據集的學習信息,能夠理解爲一組多維的觀察結果。通常稱第一個軸爲「樣本軸」,第二個爲「特徵軸」。bash

鳶尾花:Scikit-learn內置的簡單數據集範例

# 從scikit-learn庫中導入數據集模塊datasets
from sklearn import datasets

# 調用datasets的load_iris()方法建立對象,並賦值給變量iris
iris = datasets.load_iris()

# 將對象iris的data屬性抽取出來,賦值給變量data
data = iris.data

# 輸出data的shape屬性
print(data.shape)

from sklearn import datasets
iris = datasets.load_iris()
data = iris.data
data.shape
複製代碼

若是數據的初始形狀並不是(n_samples, n_features),則須要預處理以便在scikit-learn中使用。 固然了若是你的Python基礎還不牢固,也歡迎到集智課堂裏鞏固一下基礎機器學習

數字數據集:數據變形的舉例

數字數據集有1797個8x8的手寫數字像素圖像組成post

%matplotlib inline
from sklearn import datasets
# 導入digits數據集並輸出其規模
digits = datasets.load_digits()
digits.images.shape

# 導入繪圖擴展包matplotlib
import matplotlib.pyplot as plt

# 以灰度圖像形式輸出-1的像素圖
plt.imshow(digits.images[-1], cmap=plt.cm.gray_r) 

# 爲了在Scikit中應用這組數據集,咱們把8x8的圖像轉換成長度爲64的矢量。
data = digits.images.reshape((digits.images.shape[0], -1))
digits = datasets.load_digits()
digits.images.shape

import matplotlib.pyplot as plt 
plt.imshow(digits.images[-1], cmap=plt.cm.gray_r) 

# 爲了在Scikit中應用這組數據集,咱們把8x8的圖像轉換成長度爲64的矢量。
data = digits.images.reshape((digits.images.shape[0], -1))
digits.images.shape==(1797,8,8)
複製代碼

預測器對象

擬合數據:預測器是Scikit-learn的主API,能夠是任意從數據中學習的對象,好比分類,迴歸或聚類算法,抑或是從原始數據中抽取/過濾有效特徵的轉換器。學習

全部預測器對象都有以數據集(一般爲2D數組)爲輸入參數的fit方法:ui

estimator.fit(data)

# 預測器參數:全部的預測器參數均可以在實例化的時候指定,或以後修改相應屬性。
estimator = Estimator(param1=1, param2=2)
複製代碼



推薦閱讀

「女生科技體驗節」 TensorFlow Workshop

這評論有毒!——文本分類的通常套路

我作了一個叫「瑟曦」的機器人,但是她動不動就想讓格雷果爵士弄死我。

相關文章
相關標籤/搜索