python庫sklearn常用操作

前言

 sklearn是python的重要機器學習庫,其中封裝瞭大量的機器學習算法,如:分類、回歸、降維以及聚類;還包含瞭監督學習、非監督學習、數據變換三大模塊。sklearn擁有完善的文檔,使得它具有瞭上手容易的優勢;並它內置瞭大量的數據集,節省瞭獲取和整理數據集的時間。因而,使其成為瞭廣泛應用的重要的機器學習庫。

sklearn是一個無論對於機器學習還是深度學習都必不可少的重要的庫,裡面包含瞭關於機器學習的幾乎所有需要的功能,因為sklearn庫的內容是如此之多以至於一開始就從宏觀層面展開的話很可能會使初學者感到困惑和恐懼。相反的,本文不會先整體介紹sklearn庫,而是先從sklearn庫中的一些具體實例入手,在讀者學習完一些比較常用的函數並且對他們的功能有瞭一定瞭解之後,本文再從宏觀展開,全面細致的講解sklearn庫。本博客中的實例幾乎都來自我自己學習keras的過程中,建議與我的另外一篇寫keras的博客一同食用,理解起來更佳。

一、MinMaxScaler

MinMaxScaler函數主要的用途就在於數據歸一化。數據歸一化是在我們開始深度學習之前做的數據預處理過程中的重要一環,簡單來說就是將我們的測試樣本的元素都集中在[0,1]的區間上,數據歸一化可以讓我們的神經網絡模型學習起來更快達到最佳點,如果不進行歸一化的話神經網絡可能會花費很長時間來收斂(也就是到達最佳點)甚至可能最終也不會收斂。同時,數據歸一化也可以大大增加神經網絡中可學習參數的精度,從而達到更好的學習效果。下面就是MinMaxScaler函數的實例應用。

from sklearn import preprocessing
import numpy as np

x = np.array([[3., -1., 2., 613.],
              [2., 0., 0., 232],
              [0., 1., -1., 113],
              [1., 2., -3., 489]])

min_max_scaler = preprocessing.MinMaxScaler()
x_minmax = min_max_scaler.fit_transform(x)
print(x_minmax)

運行結果:

[[1. 0. 1. 1. ]

 [0.66666667 0.33333333 0.6        0.238     ]
 [0.         0.66666667 0.4        0.        ]
 [0.33333333 1.         0.         0.752     ]]
總結起來就是兩步:1.scaler=preprocessing.MinMaxScaler()
               2.x1=scaler.fit_transform(x)
x1就是歸一化之後的結果
註意,想要引入MinMaxScaler可以有兩種import的方式,除瞭上文中的方式還可以這樣做:

  from sklearn.preprocessing import MinMaxScaler

到此這篇關於python庫sklearn常用操作的文章就介紹到這瞭,更多相關python庫sklearn內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: