V tomto blogu se zaměříme na to, jak získat váhy modelové vrstvy v PyTorch.
Jaké jsou hmotnosti vrstvy modelu v PyTorch?
“ Závaží ' a ' Předsudky ” jsou obě základní vlastnosti modelů neuronové sítě. Jedná se o oba parametry, které se lze naučit, které jsou pravidelně aktualizovány během tréninkové smyčky s každým dopředným průchodem modelu. Tato pravidelná aktualizace je způsobena integrovaným optimalizátorem, jako je optimalizátor Adam. Cílem modelů neuronových sítí je provádět přesné předpovědi na základě vstupních dat a váhy a zkreslení se používají k úpravě těchto výsledků, aby se minimalizovaly ztráty.
Jak získat hmotnosti vrstvy modelu v PyTorch?
' závaží “ vrstvy jsou uloženy ve slovníku Pythonu a používají syntaxi “ state_dict() “. Slovník se používá k volání vah pomocí níže uvedených kroků:
Krok 1: Otevřete vývojové prostředí Colab
Tento tutoriál začne výběrem IDE pro projekt. Přejděte do Colaboratory webová stránka a začněte ' Nový notebook “ začít pracovat:
Krok 2: Instalace a import knihoven
Po nastavení notebooku Colab: Nainstalujte ' a ' import ” knihovny, které pokrývají všechny požadované funkce v projektu:
! pip install baterkaimport pochodeň
import torchvision. modely
Výše uvedený kód funguje následovně:
- ' pip ” instalační balíček z pythonu se používá k instalaci zásadního “ pochodeň “knihovna.
- Dále, „ import ” slouží k importu do projektu.
- Konečně, „ torchvision.modely Balíček ” je také importován pro přidanou funkčnost modelů hlubokého učení:
Krok 3: Import modelu ResNet
V tomto tutoriálu „ ResNet50 Pro demonstraci je použit model neuronové sítě s 50 vrstvami obsaženými v knihovně torchvision. Importujte předtrénovaný model podle obrázku:
vzorový_model = torchvision. modely . vážný50 ( předtrénovaný = Skutečný )
Krok 4: Definujte vrstvu modelu
Definujte název vrstvy modelu a použijte „ state_dict() ” způsob, jak získat jeho hmotnosti, jak je znázorněno:
název_vrstvy vzorku = 'layer2.0.conv1'sample_layer_weights = vzorový_model. state_dict ( ) [ sample_layer_name + '.hmotnost' ]
tisk ( 'Hmotnosti vrstev: \n ' , sample_layer_weights. tvar )
Výše uvedený kód funguje následovně:
- Druhá svinutá vrstva modelu ResNet50 je přiřazena k „ název_vrstvy vzorku “proměnná.
- Poté, „ state_dict() “ metoda se používá s “ vzorový_model “ a jsou přiřazeny k “ sample_layer_weights “proměnná.
- ' název_vrstvy vzorku “ a „ .hmotnost “ se přidávají jako argumenty pro „ state_dict() ” metodu, abyste získali váhy.
- Nakonec použijte „ tisk() ” metoda pro předvedení vah vrstev jako výstup:
Níže uvedený výstup ukazuje, že jsme získali váhy modelové vrstvy v Pytorch:
Poznámka : K našemu zápisníku Colab máte přístup zde odkaz .
Profesionální tip
Váhy modelové vrstvy v PyTorch ukazují průběh tréninkové smyčky. Tyto váhy se používají ke zjištění růstu modelu při zpracování vstupních dat do výstupních výsledků a predikcí. Získání vah vrstvy je důležité při posuzování kvality výsledků a při kontrole, zda je třeba provést nějaká zlepšení či nikoli.
Úspěch! Ukázali jsme, jak získat hmotnosti vrstvy modelu PyTorch.
Závěr
Získejte hmotnosti vrstvy modelu v PyTorch pomocí 'state_dict() ” metodu po importu modelu z torchvision nebo použití vlastního. Váhy modelové vrstvy jsou parametry, které se lze naučit, které se během tréninku neustále aktualizují a katalogizují jeho průběh. V tomto článku jsme si ukázali, jak importovat model ResNet50 z torchvision a získat váhy jeho druhé svinuté vrstvy.