Scikit-learn - 讓機器學習變得人性化

Scikit-Learn是Python其中一個出名的Package,讓你在一些Data Mining中數據的特別處理和變換,模型訓練,驗證和評估,都能簡潔地實現出來。 一些基本的演算法如Regression, Decision Tree, Clustering等也能夠滿足我們對於預測分析的需求。 而最近,新版本(0.18.0)的Scikit-Learn亦新增和推出了人工神經網絡(監督式學習), 實在讓我十分期待最新版本的Scikit-learn!

事不宜遲,先一起安裝Scikit-Learn吧!

Mac
打開Terminal和輸入:
pip install scikit-learn

Window
打開CMD和輸入:
pip install scikit-learn

Ubuntu
打開Terminal和輸入:
pip install --user --install-option="--prefix=" -U scikit-learn

Scikit-Learn囊括了七大範疇,每一個範疇裡頭有很多的以Class型式儲存的Model或者而Function型式儲存的Methodology:
1. 監督式學習 (Supervised Learning)
常用和用作分類預測的監督式學習的模型,例如Regression, Decision Tree, KNN, Naive Bayes, Neural Network等都已經應有盡有,再進階一點的Ensemble Method,如Bagging, Boosting都包括在內。

2. 非監督式學習 (Unsupervised Learning)
非監督式學習的模型就像Clusteirng, Outlier Detection,甚至Neural Network也包括內,讓你在沒有已知的目標變數下進行有關的分析。

3. 模型的選擇和評估 (Model Selection & Assessment)
一些Confusion Matrix, ROC, Lift Chart等用作評估模型的Metrics都會包含在內。另外,Cross Validation和Learning Curve等Technique也會助你選擇最好的Parameters。

4. 數據變換(Data Transformation)
這明顯的能把數據的轉換成自己想要的形式,包括文字的Data也能變換成Vector,而數字類型的Data也可以處理Normalization, Standardization。

5. 數據集加載的實用程序 (Dataset loading utilities)
Scikit-Learn本身有內置的Dataset,如果想閱讀自己的數據也可以,尤其是csv, json等形式的檔案。

6. 規模計算 (Scale Computationally)
為處理數據量過大而導致無法一次地儲存在Main Memory,Scikit-Learn能讓你的系統規模化,out-of-core learning便是其中一個策略。

7. 演算法性能(Computational Performance)
有關運算性能的指標:Latency和Throughput都會應用在預測模型中,讓你知道自己的模型,在這兩個指標發揮得如何。

那麽,讓我們在之後的文章利用Scikit-Learn開發一些實用的工具吧!

Comments

Popular posts from this blog

Boosting vs Bagging? 別再胡亂用了!

機器學習之陷阱 - Imbalance Class Classification

Excel VBA - 自動生成分析報告