sklearn數據的降維

本文主要記錄使用sklearn庫對數據集進行降維等相關操作,通過了解相關知識,運行已有的代碼來進行新內容的學習
降維這裏指降低特徵的數量

  • sklearn的特徵選擇API

    1.filter過濾式 : variancethreshold

from sklearn.feature_selection import VarianceThreshold
def var():
 
    var = VarianceThreshold(threshold=1.0)

    data = var.fit_transform([[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]])

    print(data)
    return None

2.embedded嵌入式 : 正則化,決策樹
3.wrapper包裹式

  • sklearn主成分分析的API

    數據位數壓縮,降低原始數據的維數當特徵數量達到上百的時候,要考慮要不要用PCA簡化特徵,這個簡化不是單獨的刪除或者捨去,而是對應的特徵值也會發生變化。
    高維數據通常具有相關性
    PCA(n_components=0.9)小數表示保留90%的信息量,一般範圍在0.9-1之間,通常使用0.95-1之間。整數表示減少到的特徵數量。

from sklearn.decomposition import PCA
def pca():
    pca = PCA(n_components=0.9)
    data = pca.fit_transform([[2,8,4,5],[6,3,0,8],[5,4,9,1]])

    print(data)

    return None

pca.components_返回模型的各個特徵向量
pca.explained_variance_ratio_返回各個成分各自的方差百分比

當特徵數量過多幾十種上百種時,就要考慮主成分分析了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章