特徵標準化

用 Python 透過機器學習預測 CTR

Kevin Huo

Instructor

為何標準化很重要

  • 標準化:讓資料符合模型的假設
  • 有些特徵變異過大,可能不公平地主導模型
  • 例:某些計數因單一垃圾使用者造成取值範圍過大
  • 不適用於類別變數,如 site_idapp_iddevice_id 等。
用 Python 透過機器學習預測 CTR

對數正規化

df.var()
click                   1.294270e-01
hour                    1.123316e-01
df.var().median()
0.7108583771671939
print(df['click'].var())
df['device_id_count'] = df[
  'device_id_count'].apply(
  lambda x: np.log(x))
print(df['click'].var())
249362570.10134825
15.628476003312514
用 Python 透過機器學習預測 CTR

縮放資料

  • 標準縮放會將所有特徵轉為平均數 0、標準差 1

標準縮放示意

  • 一般而言對機器學習模型是好做法
用 Python 透過機器學習預測 CTR

如何進行標準縮放

  • 可用 StandardScaler() 進行縮放:
scaler = StandardScaler()
X[numeric_cols] = scaler.fit_transform(X[numeric_cols])
dtype: float64
1    10.5 -> 0.85
2    32.3 -> 1.54
用 Python 透過機器學習預測 CTR

一起來練習吧!

用 Python 透過機器學習預測 CTR

Preparing Video For Download...