Zamrażanie warstw modelu
Za chwilę dostroisz model do nowego zadania po wczytaniu wag wytrenowanych wcześniej. Model zawiera trzy warstwy liniowe. Ponieważ jednak twój zbiór danych jest niewielki, chcesz trenować tylko ostatnią warstwę liniową – pierwsze dwie warstwy należy zamrozić.
Model został już utworzony i jest dostępny pod zmienną model. Do wylistowania parametrów modelu użyjesz metody named_parameters. Każdy parametr jest opisany nazwą – jest to ciąg znaków zgodny z konwencją: x.name, gdzie x to indeks warstwy.
Pamiętaj, że warstwa liniowa ma dwa parametry: weight (wagi) i bias (obciążenie).
To ćwiczenie jest częścią kursu
Wprowadzenie do uczenia głębokiego z PyTorch
Instrukcje do ćwiczenia
- Użyj instrukcji
if, aby sprawdzić, czy dany parametr to waga pochodząca z pierwszej lub drugiej warstwy. - Zamroź wagi pierwszych dwóch warstw tego modelu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
for name, param in model.named_parameters():
# Check for first layer's weight
if name == '____':
# Freeze this weight
param.____ = ____
# Check for second layer's weight
if name == '____':
# Freeze this weight
param.____ = ____