Scikit learn 方法使用總結

2021-08-16 05:27:23 字數 2278 閱讀 1074

在機器學習和資料探勘的應用中,scikit-learn是乙個功能強大的python包。在資料量不是過大的情況下,可以解決大部分問題。近期在學習使用scikit-learn的過程中,我自己也在補充著機器學習和資料探勘的知識。以下是我做乙個總結的筆記。後續會結合競賽實操。

常直接理解成分類器,主要包含兩個函式:

轉換器用於資料預處理和資料轉換,主要是三個方法:

sklearn.pipeline

功能:

使用方法:

流水線的輸入為一連串的資料探勘步驟,其中最後一步必須是估計器,前幾步是轉換器。輸入的資料集經過轉換器的處理後,輸出的結果作為下一步的輸入。最後,用位於流水線最後一步的估計器對資料進行分類。

每一步都用元組( 『名稱』,步驟)來表示。現在來建立流水線。

scaling_pipeline = pipeline([

('scale', minmaxscaler()),

('predict', kneighborsclassifier())

])

主要在sklearn.preprcessing包下。

規範化:

編碼:

1.5.1 特徵抽取

包:sklearn.feature_extraction

特徵抽取是資料探勘任務最為重要的乙個環節,一般而言,它對最終結果的影響要高過資料探勘演算法本身。只有先把現實用特徵表示出來,才能借助資料探勘的力量找到問題的答案。特徵選擇的另乙個優點在於:降低真實世界的複雜度,模型比現實更容易操縱。

一般最常使用的特徵抽取技術都是高度針對具體領域的,對於特定的領域,如影象處理,在過去一段時間已經開發了各種特徵抽取的技術,但這些技術在其他領域的應用卻非常有限。

1.5.2 特徵選擇

包:sklearn.feature_selection

特徵選擇的原因如下:

(1)降低複雜度

(2)降低噪音

(3)增加模型可讀性

單個特徵和某一類別之間相關性的計算方法有很多。最常用的有卡方檢驗(χ2)。其他方法還有互資訊和資訊熵。

包:sklearn.decomposition

包:**sklearn.ensemble **

組合技術即通過聚集多個分類器的**來提高分類準確率。

常用的組合分類器方法:

(1)通過處理訓練資料集。即通過某種抽樣分布,對原始資料進行再抽樣,得到多個訓練集。常用的方法有裝袋(bagging)和提公升(boosting)。

(2)通過處理輸入特徵。即通過選擇輸入特徵的子集形成每個訓練集。適用於有大量冗餘特徵的資料集。隨機森林(random forest)就是一種處理輸入特徵的組合方法。

(3)通過處理類標號。適用於多分類的情況,將類標號隨機劃分成兩個不相交的子集,再把問題變為二分類問題,重複構建多次模型,進行分類投票。

包:sklearn.metrics

sklearn.metrics包含評分方法、效能度量、成對度量和距離計算。

分類結果度量

引數大多是y_true和y_pred。

其中,f1是以每個類別為基礎進行定義的,包括兩個概念:準確率(precision)和召回率(recall)。準確率是指**結果屬於某一類的個體,實際屬於該類的比例。召回率是被正確**為某類的個體,與資料集中該類個體總數的比例。f1是準確率和召回率的調和平均數。

回歸結果度量

多標籤的度量

聚類的度量

包:sklearn.cross_validation

ifname== 『main』:

show_cross_val(「lpo」)

常用方法

包:sklearn.grid_search

網格搜尋最佳引數

包:sklearn.multiclass

最後奉獻sklearn處理資料流程圖一張:

Scikit Learn 使用技巧

1.使用 columntransformer 對 dataframe 不同的列分別進行不同的處理from sklearn.preprocessing import onehotencoder from sklearn.impute import imputer from sklearn.compos...

scikit learn中PCA的使用方法

原博文 blog 在前一篇文章 主成分分析 pca 中,我基於python和numpy實現了pca演算法,主要是為了加深對演算法的理解,演算法的實現很粗糙,實際應用中我們一般呼叫成熟的包,本文就結束scikit learn中pca使用的方法和需要注意的細節,參考 sklearn.decomposit...

scikit learn 使用指南

一般來說,機器學習問題可以這樣來理解 我們有n個 樣本 sample 的資料集,想要 未知資料的屬性。如果描述每個樣本的數字不只乙個,比如乙個多維的條目 也叫做 多變數資料 multivariate data 那麼這個樣本就有多個屬性或者 特徵 我們可以將學習問題分為以下幾類 scikit lear...