機器學習 特徵工程(三)

2021-09-29 16:29:37 字數 1979 閱讀 8161

簡單來說就是講特徵數量減少。去掉不需要的特徵。

常用方式:

主要方法:

filter(過濾式):variancethreshold(方差)

embedded(嵌入式):正則化、決策樹(後期介紹)

包裹式)、

神經網路(後期介紹)

從方差大小來考慮特徵的數值情況

api:sklearn.feature_selection.variancethreshold

語法:• variancethreshold

(threshold = 0.0)

•threshold的數字是 

刪除所有低於方差特徵 •

variance

.fit_transform

(x,y

)       •

x:numpy array

格式的資料

[n_samples,n_features]

• 返回值:

訓練集差異低於

threshold

的特徵將被刪除。 •

預設值是保留所有非零方差特徵,即刪除所有樣本 •

中具有相同值的特徵。

from sklearn.feature_selection import variancethreshold

def var():

"""特徵選擇-降維 -刪除低方差的特徵"""

var = variancethreshold(threshold=0.0)

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

[0, 1, 4, 3],

[0, 1, 1, 3]])

print(data)

if __name__ == '__main__':

var()

執行結果:

目的:是資料維數壓縮,盡可能降低原資料的維數(複雜度),損失少量資訊。維度會降低,但是資料也會降低。

api:sklearn.

decomposition.pca

語法:pca(

n_components

=none )

將資料分解為較低維數空間

pca.fit_transform

(x)      

x:numpy array

格式的資料

[n_samples,n_features]

返回值:轉換後

指定維度

的array

解釋:n_components = 小數: 一般 0 - 1.要求是  90% - 95%

= 整數:一般不用

**:

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)

if __name__ == '__main__':

pca()

結果:

機器學習 特徵工程

老師有多年的網際網路從業經驗,所以講解的過程中結合了很多任務業界的應用,更加的深入淺出。資料採集 資料採集前需要明確採集哪些資料,一般的思路為 哪些資料對最後的結果 有幫助?資料我們能夠採集到嗎?線上實時計算的時候獲取是否快捷?舉例1 我現在要 使用者對商品的下單情況,或者我要給使用者做商品推薦,那...

機器學習 特徵工程

資料和特徵決定了機器學習的上限,而模型和演算法只是逼近這個上限而已。通俗的說,就是盡可能的從原始資料中獲取更多資訊,從而使得 模型達到最佳。簡而言之,特徵工程是乙個把原始資料變成特徵的過程,這些特徵可以很好的描述資料,並且利用它們建立的模型在未知資料上表現效能可以達到最優。實驗結果取決於獲取的資料 ...

機器學習特徵工程

作用 對字典資料進行特徵值化 dictvectorizer語法 例項化了乙個物件 data dict fit transform x print dict get feature names print data return none if name main dictvec 結果 分析 使用di...