Feature engineering

Vincere una competizione Kaggle con Python

Yauhen Babakhin

Kaggle Grandmaster

Workflow della soluzione

 

 

workflow della soluzione

Vincere una competizione Kaggle con Python

Fase di modellazione

  componenti della fase di modellazione

Vincere una competizione Kaggle con Python

Fase di modellazione

  componenti della fase di modellazione

Vincere una competizione Kaggle con Python

Fase di modellazione

  componenti della fase di modellazione

Vincere una competizione Kaggle con Python

Feature engineering

 

schema di feature engineering

Vincere una competizione Kaggle con Python

Feature engineering

 

schema di feature engineering

Vincere una competizione Kaggle con Python

Tipi di feature

 

  • Numeriche
  • Categoricali
  • Data/ora
  • Coordinate
  • Testo
  • Immagini
Vincere una competizione Kaggle con Python

Creare feature

# Concatenate the train and test data
data = pd.concat([train, test])
# Create new features for the data DataFrame...
# Get the train and test back
train = data[data.id.isin(train.id)]
test = data[data.id.isin(test.id)]
Vincere una competizione Kaggle con Python

Feature aritmetiche

# Two sigma connect competition
two_sigma.head(1)
      id     bathrooms  bedrooms price interest_level
0     10     1.5        3        3000  medium
# Caratteristiche aritmetiche
two_sigma['price_per_bedroom'] = two_sigma.price / two_sigma.bedrooms
two_sigma['rooms_number'] = two_sigma.bedrooms + two_sigma.bathrooms
Vincere una competizione Kaggle con Python

Feature di data/ora

# Demand forecasting challenge
dem.head(1)
          id           date store  item  sales
0     100000     2017-12-01     1     1     19
# Converti la colonna in datetime
dem['date'] = pd.to_datetime(dem['date'])
Vincere una competizione Kaggle con Python

Feature di data/ora

# Anno
dem['year'] = dem['date'].dt.year

# Mese dem['month'] = dem['date'].dt.month
# Settimana dem['week'] = dem['date'].dt.weekofyear
# Giorno
dem['dayofyear'] = dem['date'].dt.dayofyear
dem['dayofmonth'] = dem['date'].dt.day
dem['dayofweek'] = dem['date'].dt.dayofweek
date           year  month   week
2017-12-01     2017     12     48
2017-12-02     2017     12     48
2017-12-03     2017     12     48
2017-12-04     2017     12     49

 

date      dayofyear  dayofmonth dayofweek
2017-12-01  335      1          4
2017-12-02  336      2          5
2017-12-03  337      3          6
2017-12-04  338      4          0
Vincere una competizione Kaggle con Python

Ayo berlatih!

Vincere una competizione Kaggle con Python

Preparing Video For Download...