Padronizando features

Prevendo CTR com Machine Learning em Python

Kevin Huo

Instructor

Por que a padronização é importante

  • Padronização: garantir que os dados atendam às suposições dos modelos
  • Algumas features podem ter variância alta demais e dominar o modelo
  • Ex.: certas contagens têm faixa muito grande por causa de um usuário spam
  • Não se aplica a variáveis categóricas como site_id, app_id, device_id, etc.
Prevendo CTR com Machine Learning em Python

Normalização log

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
Prevendo CTR com Machine Learning em Python

Escalonando dados

  • Standard scaling deixa média = 0 e desvio padrão = 1 em todas as features

Exemplo de standard scaling

  • Em geral, é uma boa prática em modelos de ML
Prevendo CTR com Machine Learning em Python

Como fazer standard scaling

  • Dá pra escalar com StandardScaler() assim:
scaler = StandardScaler()
X[numeric_cols] = scaler.fit_transform(X[numeric_cols])
dtype: float64
1    10.5 -> 0.85
2    32.3 -> 1.54
Prevendo CTR com Machine Learning em Python

Vamos praticar!

Prevendo CTR com Machine Learning em Python

Preparing Video For Download...