特徵工程 特徵交叉 交叉特徵 特徵組合

2021-10-02 05:09:22 字數 1740 閱讀 2535

關於特徵交叉的作用以及原理,我這裡不進行詳細描述,因為大佬們已經說得很清楚了,這裡就附上幾個連線:

特徵組合&特徵交叉 (feature crosses)

結合sklearn進行特徵工程

對於特徵離散化,特徵交叉,連續特徵離散化非常經典的解釋

下面說怎樣製作和交叉特徵:

多項式生成函式:

sklearn.preprocessing.polynomialfeatures(degree=

2, interaction_only=

false

, include_bias=

true

)

引數說明:

舉例說明:

import numpy as np

from sklearn.preprocessing import polynomialfeatures

x = np.arange(6)

.reshape(3,

2)

x
array([[

0,1]

,[2,

3],[

4,5]

])

poly = polynomialfeatures(degree =

2)

poly.fit_transform(x)
array([[

1.,0

.,1.

,0.,

0.,1

.],[

1.,2

.,3.

,4.,

6.,9

.],[

1.,4

.,5.

,16.,

20.,25

.]])

# 設定引數interaction_only = true,不包含單個自變數****n(n>1)特徵資料

poly = polynomialfeatures(degree =

2, interaction_only =

true

)

poly.fit_transform(x)
array([[

1.,0

.,1.

,0.]

,[1.

,2.,

3.,6

.],[

1.,4

.,5.

,20.]

])

# 再新增 設定引數include_bias= false,不包含偏差項資料

poly = polynomialfeatures(degree =

2, interaction_only =

true

, include_bias=

false

)

poly.fit_transform(x)
array([[

0.,1

.,0.

],[2

.,3.

,6.]

,[4.

,5.,

20.]]

)

機器學習之特徵組合 特徵交叉

特徵交叉是資料特徵的一種處理方式,通過特徵組合的方式增加特徵的維度,以求得更好的訓練效果。在實際場景中,我們常常遇到這要的情況,線性分類起無法在如下樣本中 無法畫一條直線將下列黃點和藍點分開 所以特徵組合是一種讓線性模型學習到非線性特徵的方式 例如在廣告模型中用到了大量的特徵組合,因為lr是廣告推廣...

特徵工程之特徵選擇

在前一篇文章中我介紹了一些資料預處理的方法,原始資料在經過預處理之後可以被演算法處理了,但是實際中可能有一些特徵是沒有必要的,比如在中國採集的一些資料,那麼國籍就都是中國,其實也就沒有意義了,反映在統計量上就是方差過小,也就是樣本在這個特徵上變化很小。還有一種情況是特徵和最後的結果相關性很小,也就是...

特徵工程之特徵選擇

特徵選擇其實就是減少屬性個數,為什麼要這麼做呢?直接使用原始資料來訓練模型的話,雖然說在訓練模型上的準確率會非常高,但是在測試樣本上的準確率將會大打折扣,也就是會產生過擬合的現象。所以說需要選擇出最適合的屬性進行訓練。特徵選擇的原因 2 雜訊 部分特徵對 結果又影響 進行特徵選擇的時候有兩種情況 一...