Skalowanie i transformacja nowych danych

Inżynieria cech w uczeniu maszynowym w Pythonie

Robet O'Callaghan

Director of Data Science, Ordergroove

Ponowne użycie skalerów treningowych

scaler = StandardScaler()

scaler.fit(train[['col']])

train['scaled_col'] = scaler.transform(train[['col']])

# FIT SOME MODEL
# ....

test = pd.read_csv('test_csv')

test['scaled_col'] = scaler.transform(test[['col']])

Inżynieria cech w uczeniu maszynowym w Pythonie

Ponowne użycie transformacji treningowych

train_mean = train[['col']].mean()
train_std = train[['col']].std()

cut_off = train_std * 3
train_lower = train_mean - cut_off
train_upper = train_mean + cut_off

# Subset train data

test = pd.read_csv('test_csv')

# Subset test data
test = test[(test[['col']] < train_upper) & 
              (test[['col']] > train_lower)]

Inżynieria cech w uczeniu maszynowym w Pythonie

Dlaczego używać tylko danych treningowych?

 

Wyciek danych: Wykorzystanie danych, do których nie będzie dostępu podczas oceny wydajności modelu

Inżynieria cech w uczeniu maszynowym w Pythonie

Unikaj wycieku danych!

Inżynieria cech w uczeniu maszynowym w Pythonie

Preparing Video For Download...