Ostatnie kroki w modelach klasyfikacji
Teraz zbudujesz model klasyfikacji na podstawie zbioru danych Titanic, który został wcześniej wczytany do ramki danych df. Wykorzystasz informacje o pasażerach, aby przewidzieć, którzy z nich przeżyli.
Zmienne predykcyjne są przechowywane w tablicy NumPy predictors. Zmienna docelowa to df.survived – trzeba ją jednak odpowiednio przetworzyć dla Keras. Liczba cech predykcyjnych jest zapisana w zmiennej n_cols.
W tym ćwiczeniu użyjesz optymalizatora 'sgd', który oznacza stochastyczny spadek gradientu. Więcej na ten temat dowiesz się w kolejnym rozdziale!
To ćwiczenie jest częścią kursu
Wprowadzenie do uczenia głębokiego w Pythonie
Instrukcje do ćwiczenia
- Przekształć
df.survivedna zmienną kategoryczną za pomocą funkcjito_categorical(). - Zdefiniuj model
Sequentiali przypisz go do zmiennejmodel. - Dodaj warstwę
Densez32węzłami. Jakoactivationpodaj'relu', a jakoinput_shapeużyj(n_cols,). - Dodaj wyjściową warstwę
Dense. Ponieważ są dwa możliwe wyniki, powinna mieć 2 jednostki, a jakoactivation– zgodnie z wymaganiami modelu klasyfikacji – podaj'softmax'. - Skompiluj model, używając
'sgd'jakooptimizer,'categorical_crossentropy'jako funkcji straty orazmetrics=['accuracy'], aby śledzić dokładność (czyli jaki odsetek prognoz był poprawny) na końcu każdej epoki. - Dopasuj model, korzystając ze zmiennych
predictorsitarget.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import necessary modules
from tensorflow.keras.layers import Dense
from tensorflow.keras.models import Sequential
from tensorflow.keras.utils import to_categorical
# Convert the target to categorical: target
target = ____
# Set up the model
model = ____
# Add the first layer
____
# Add the output layer
____
# Compile the model
____
# Fit the model
____