機器學習之Scikit-learn篇(一)

前言
Scikit-learn是目前Python環境下最常用也是最好用的機器學習函式庫。Sklean裡邊幾乎集成了所有經典的機器學習演算法,同時配以非常簡單的實現語句(通常為1-2行程式碼)以及模式化的調參過程,使得我們可以花費更多時間在特徵工程及資料處理上,並且使得我們建模的過程集中於演算法比較以及模型選擇上。
當然,Sklearn並不是沒有他的弊端,比如過於簡單的語句使得其功能相對固定,這就讓我們構建定製化的模型變得相對困難。以個人經驗來說,當我們需要換掉模型中的損失函式或其他一些評判方式時,我們必須從原始碼中找出對應模組,然後按照原始碼的方式來編寫自己需要的程式。
雖然聽起來很麻煩,但Sklearn還是為我們提供了非常大的便利,如果每一個演算法都要由我們自己從零開始搭建的話,且不說費時費力,單單是程式碼的可靠性我們就已經無法保證。從這個角度來講,Sklearn的確是目前機器學習的首選函式庫。
基本語句及格式介紹
Sklearn內部有非常多的模組,每個模組的功能都很豐富,但是呼叫的方式卻基本上是一致的。如下程式碼所示,我們這裡邊用到了Sklearn的預處理模組,用到了K-NN演算法構建模型,用到了訓練集及測試集分離模組等等,從中不難看出,讀Sklearn的程式碼像是在讀文章一樣,一目瞭然且很容易get到寫程式碼者的意圖。

資料預處理
標準化

歸一化

二值化

分類變數的編碼

補全缺失值

建立高次冪特徵

模型的構建
監督學習模型

無監督學習

構建模型

利用模型進行預測

結語
今天為大家簡單介紹了Sklearn內的語句以及構建模型的流程,同時也為大家展示了Sklearn語句的格式,總體來講是很好記憶的,具體的細節需要大家參考Sklearn的官方文件來細緻的瞭解。
想成為一名合格的機器學習工程師嗎?微信掃碼關注“機器學習學社”獲取每天一份的新鮮諮詢,為你開拓屬於你自己的機器學習之路

掃碼關注機器學習學社