iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 10
0
AI & Data

大數據的世代需學會的幾件事系列 第 10

Day10-Scikit-learn介紹(2)

在昨天的文章中,簡單介紹SKlearn內有的資料集合,並且有簡單做一個線性回歸範例,今天要來一步一步講解,如何利用SKlearn中的模組來實做。

1.選擇一類模型
在Scikit-Learn中,包含許多類型,像是線性回歸、決策數、PCA...等,今天以計算簡單的線性回歸模型為例,可以在 sklearn.linear_mode 導入線性回歸的類別

from sklearn.linear_model import LinearRegression

2.選擇超參數模型
選擇完模型後,還是可以針對自己本身的資料做一些參數設定,像是在做資料模型時,需要用到多少的元件?是否要設定適宜的偏移量(Y的截距)?如何讓資料達到正規化?...等問題來設定參數。對於線性回歸的範例,我們可以實例化LinearRegression類並指定我們想要使用fit_intercept超參數來擬合截距:

model = LinearRegression(fit_intercept=True)
model

out:LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)


3.把資料規劃到特徵矩陣和目標向量中

X = x[:, np.newaxis]
X.shape
model.fit(X, y)

out:LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)


4.預測未知數據的標籤
一旦訓練了模型,監督機器學習的主要任務就是根據它所說的關於不屬於訓練集的新數據的內容來評估它。在Scikit-Learn中,可以使用predict()方法來實做此操作。

xfit = np.linspace(-1, 11)
  • 我們需要將這些x值強制轉換為[n_samples,n_features]特徵矩陣,之後我們可以將它提供給模型:
Xfit = xfit[:, np.newaxis]
yfit = model.predict(Xfit)
  • 最後,通過之前繪製原始數據來顯示結果
plt.scatter(x, y)
plt.plot(xfit, yfit);

out


上一篇
Day8-Scikit-learn介紹(1)
下一篇
Day11-Scikit-learn介紹(3)_Feature Engineering
系列文
大數據的世代需學會的幾件事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言