A modellparaméterek számának kinyomtatása a PyTorch alkalmazásban

A Modellparameterek Szamanak Kinyomtatasa A Pytorch Alkalmazasban



A PyTorch egy népszerű keretrendszer, amelyet a mély tanulásban használnak. Számos funkciót kínál összetett neurális hálózatok (NN) létrehozásához. A felhasználók modell betanítási műveleteket hajthatnak végre ezzel a keretrendszerrel. A modell betanítása előtt azonban a felhasználóknak ismerniük kell a paraméterek számát.

Ez a blog a következőket írja le:

Mik a PyTorch paraméterei?

A PyTorch alkalmazásban a „ nn.Modul ” osztályt használjuk a modellek meghatározásához. Tartalmazza a modellt alkotó összes műveletet és réteget. Minden réteg tartalmaz egy sor paramétert. A paramétereket alapvetően a képzés során frissítik, hogy minimalizálják a modell tényleges értékei és az előrejelzések közötti hibát.







Miért kell a felhasználóknak ellenőrizniük a modell paramétereit?

A modell betanítása során a felhasználóknak tudniuk kell modelljük paramétereinek számát, mivel ez sok memóriát és feldolgozási teljesítményt igényel. Ha ismerik a modell paramétereinek számát, könnyen ki tudják értékelni a szükséges memória mennyiségét és mennyi időt vesz igénybe a betanítás, ami segít a felhasználóknak optimalizálni a képzési folyamatot, valamint megakadályozni, hogy a rendszer kifogyjon. hely.



Hogyan jeleníthető meg a modellparaméterek száma a PyTorch-ban?

A ' nn.Modul ' osztályban van a ' paraméterek () ” metódus, amely a PyTorch modellben lévő modellparaméterek számának megtekintéséhez. Az összes elem eléréséhez a „ szám1() ” módszert alkalmazzák.



A korábban tárgyalt koncepció megértéséhez vessünk egy pillantást a megadott kódra:





import fáklya. nn mint nn

osztály NNModel ( nn. Modul ) :
def __forró__ ( maga ) :
szuper ( NNModel , maga ) . __forró__ ( )
maga . fc1 = nn. Lineáris ( 10 , ötven )
maga . fc2 = nn. Lineáris ( ötven , 1 )

def előre ( maga , én ) :
én = maga . fc1 ( én )
én = maga . fc2 ( én )
Visszatérés én

my_model = NNModel ( )
t_params = összeg ( p. adjon nevet ( ) számára p ban ben my_model. paramétereket ( ) )
nyomtatás ( f 'A paraméterek teljes száma: {t_params}' )

A fent megadott kódban:

  • Először definiálunk egy modellt, amelynek két lineáris rétege van.
  • Ezután hozza létre a modell példányát, és használja a „ paraméterek () ” módszerrel az összes paraméter lekéréséhez.
  • Ezután a generátor kifejezést alkalmazzuk az összes paraméter kiszámításához az egyes paraméterek elemszámának összegzésével.
  • Végül hívja a „ nyomtatás() ” utasítással a kapott értékeket megjeleníti a képernyőn:



A fent leírt kódban csak a paraméterek teljes számát jelenítettük meg, ha a paraméter nevét és méretét szeretné megkapni, akkor a következő kódsorok használhatók:

számára név , param ban ben my_model. állam_dikt ( ) . tételeket ( ) :

nyomtatás ( név , param. méret ( ) )

Itt:

  • ' state_dict() ” a Python szótárobjektum, amelyet a PyTorch modellek tárolására és betöltésére használnak.
  • ' tétel() ” metódus segítségével visszaadja a listát a szótár összes kulcsával és értékeivel együtt.
  • ' nyomtatás() ' utasítás a paraméter nevének és méretének kinyomtatására szolgál a ' méret() ” módszer és paraméter:

Ez minden! Összeállítottuk a PyTorch modellparaméterek számának legegyszerűbb módját.

Következtetés

A PyTorch alkalmazásban a „ nn.Modul ” osztály a modellt alkotó összes műveletet és réteget tartalmazó modellek meghatározására szolgál. A ' nn.Modul ' osztályban van a ' paraméterek () ” metódus, amely a PyTorch modellben lévő modellparaméterek számának megtekintéséhez. Ez az írás bemutatta a PyTorch modellparaméterek számának kinyomtatásának módszerét.