logo

torch.nn programoje PyTorch

„PyTorch“ teikia torch.nn modulį, kuris padės mums kurti ir mokyti neuroninį tinklą. Pirmiausia apmokysime pagrindinį neuroninį tinklą MNIST duomenų rinkinyje nenaudodami jokių šių modelių funkcijų. Naudosime tik pagrindines PyTorch tenzorines funkcijas, o po to laipsniškai pridėsime po vieną funkciją iš torch.nn.

torch.nn suteikia mums daug daugiau klasių ir modulių, skirtų neuroniniam tinklui įdiegti ir mokyti.

nn paketą sudaro šie moduliai ir klasės:

Taip ne Klasė ir modulis apibūdinimas
1. deglas.nn.Parametras Tai tenzoriaus tipas, kuris turi būti laikomas modulio parametru.
2. Konteineriai
1) degiklis.nn.Modulis Tai yra pagrindinė visų neuroninio tinklo modulių klasė.
2) fakelas.nn.Nuoseklus Tai nuoseklus konteineris, kuriame moduliai bus pridedami ta pačia tvarka, kokia jie perduodami konstruktoriuje.
3) torch.nn.ModuleList Taip submoduliai bus įtraukti į sąrašą.
4) torch.nn.ModuleDict Tai talpins submodulius kataloge.
5) torch.nn.ParameterList Tai išsaugos parametrus sąraše.
6) torch.nn.parameterDict Tai išsaugos parametrus kataloge.
3. Konvoliucijos sluoksniai
1) torch.nn.Conv1d Šis paketas bus naudojamas 1D konvoliucijai taikyti įvesties signalui, sudarytam iš kelių įvesties plokštumų.
2) torch.nn.Conv2d Šis paketas bus naudojamas 2D konvoliucijai pritaikyti įvesties signalui, sudarytam iš kelių įvesties plokštumų.
3) torch.nn.Conv3d Šis paketas bus naudojamas 3D konvoliucijai pritaikyti įvesties signalui, sudarytam iš kelių įvesties plokštumų.
4) torch.nn.ConvTranspose1d Šis paketas bus naudojamas 1D transponuotos konvoliucijos operatoriui pritaikyti įvesties vaizdui, sudarytam iš kelių įvesties plokštumų.
5) torch.nn.ConvTranspose2d Šis paketas bus naudojamas 2D perkeltos konvoliucijos operatoriui pritaikyti įvesties vaizdui, sudarytam iš kelių įvesties plokštumų.
6) torch.nn.ConvTranspose3d Šis paketas bus naudojamas 3D transponuoto konvoliucijos operatoriui pritaikyti įvesties vaizdui, sudarytam iš kelių įvesties plokštumų.
7) deglas.nn.Išskleisti Jis naudojamas slankiojantiems vietiniams blokams iš paketinio įvesties tenzoriaus išgauti.
8) deglas.nn.Sulankstyti Jis naudojamas slankiųjų vietinių blokų masyvai sujungti į didelį turintį tenzorių.
4. Sujungimo sluoksniai
1) žibintuvėlis.nn.MaxPool1d Jis naudojamas 1D max telkimui taikyti įvesties signalui, sudarytam iš kelių įvesties plokštumų.
2) žibintuvėlis.nn.MaxPool2d Jis naudojamas 2D maksimalų telkimą įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
3) torch.nn.MaxPool3d Jis naudojamas 3D maksimalų telkimą įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
4) degiklis.nn.MaxUnpool1d Jis naudojamas dalinei MaxPool1d atvirkštinei daliai apskaičiuoti.
5) torch.nn.MaxUnpool2d Jis naudojamas dalinei MaxPool2d atvirkštinei daliai apskaičiuoti.
6) torch.nn.MaxUnpool3d Jis naudojamas dalinei MaxPool3d atvirkštinei daliai apskaičiuoti.
7) torch.nn.AvgPool1d Jis naudojamas 1D vidutiniam sujungimui per įvesties signalą, sudarytą iš kelių įvesties plokštumų.
8) torch.nn.AvgPool2d Jis naudojamas 2D vidutiniam sujungimui per įvesties signalą, sudarytą iš kelių įvesties plokštumų.
9) torch.nn.AvgPool3d Jis naudojamas 3D vidutiniam sujungimui per įvesties signalą, sudarytą iš kelių įvesties plokštumų.
10) torch.nn.FractionalMaxPool2d Jis naudojamas 2D trupmeniniam maksimaliam telkimui įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
11) žibintuvėlis.nn.LPPool1d Jis naudojamas 1D vidutinės galios sujungimui per įvesties signalą, sudarytą iš kelių įvesties plokštumų.
12) žibintuvėlis.nn.LPPool2d Jis naudojamas 2D vidutinės galios kaupimui per įvesties signalą, sudarytą iš kelių įvesties plokštumų.
13) torch.nn.AdavtiveMaxPool1d Jis naudojamas 1D adaptyviam maksimaliam telkimui įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
14) torch.nn.AdavtiveMaxPool2d Jis naudojamas 2D adaptyviam maksimaliam telkimui įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
15) torch.nn.AdavtiveMaxPool3d Jis naudojamas 3D adaptyviam maksimaliam telkimui įvesties signalui, sudarytam iš kelių įvesties plokštumų, taikyti.
16) torch.nn.AdavtiveAvgPool1d Jis naudojamas pritaikyti 1D adaptyvų vidurkį įvesties signalui, sudarytam iš kelių įvesties plokštumų.
17) torch.nn.AdavtiveAvgPool2d Jis naudojamas pritaikyti 2D adaptyvų vidurkį įvesties signalui, sudarytam iš kelių įvesties plokštumų.
18) torch.nn.AdavtiveAvgPool3d Jis naudojamas pritaikyti 3D adaptyvų vidurkį įvesties signalui, sudarytam iš kelių įvesties plokštumų.
5. Paminkštinimo sluoksniai
1) žibintuvėlis.nn.ReflectionPad1d Jis papildys įvesties tenzorių, naudodamas įvesties ribos atspindį.
2) torch.nn.ReflactionPad2d Jis papildys įvesties tenzorių, naudodamas įvesties ribos atspindį.
3) torch.nn.ReplicationPad1 Jis papildys įvesties tenzorių, naudodamas įvesties ribos replikaciją.
4) torch.nn.ReplicationPad2d Jis papildys įvesties tenzorių, naudodamas įvesties ribos replikaciją.
5) torch.nn.ReplicationPad3d Jis papildys įvesties tenzorių, naudodamas įvesties ribos replikaciją.
6) žibintuvėlis.nn.ZeroPad2d Įvesties tenzoriaus ribos bus užpildytos nuliu.
7) torch.nn.ConstantPad1d Jis papildys įvesties tenzoriaus ribas pastovia verte.
8) torch.nn.ConstantPad2d Jis papildys įvesties tenzoriaus ribas pastovia verte.
9) torch.nn.ConstantPad3d Jis papildys įvesties tenzoriaus ribas pastovia verte.
6. Netiesiniai aktyvavimai (svertinė suma, netiesiškumas)
1) deglas.nn.ELU Jis bus naudojamas taikant elementų funkciją:
ELU(x)=maks.(0,x)+min(0,α*(exp(x)-1))
2) deglas.nn.Kietas susitraukiantis Jis bus naudojamas kietojo susitraukimo funkcijos elementų funkcijai taikyti:
torch.nn programoje PyTorch
3) degiklis.nn.LeakyReLU Jis bus naudojamas taikant elementų funkciją:
LeakyReLu(x)=maks.(0,x) +neigiamas_nuolydis*min(0,x)
4) degiklis.nn.LogSigmoid Jis bus naudojamas taikant elementų funkciją:
torch.nn programoje PyTorch
5) deglas.nn.MultiheadAttention Jis naudojamas, kad modelis galėtų atsižvelgti į informaciją iš skirtingų vaizdavimo poerdvių
6) deglas.nn.PReLU Jis bus naudojamas taikant elementų funkciją:
PReLU(x)=maks.(0,x)+a*min(0,x)
7) deglas.nn.ReLU Jis bus naudojamas taikant ištaisytą linijinio vieneto funkcijos elementą:
ReLU(x)=maks.(0,x)
8) deglas.nn.ReLU6 Jis bus naudojamas taikant elementų funkciją:
ReLU6(x)=min(maks.(0,x),6)
9) deglas.nn.RReLU Jis bus naudojamas atsitiktinės atrankos nesandariai ištaisytai tiesinio vieneto funkcijai taikyti elementų atžvilgiu, kaip aprašyta dokumente:
torch.nn programoje PyTorch
10) deglas.nn.SELU Jis bus naudojamas elementų funkcijai taikyti kaip:
SELU(x)=mastas*(maks.(0,x)+ min(0,a*(exp(x)-1)))

Čia α = 1,6732632423543772848170429916717 ir skalė = 1,0507009873554804934193349852946.
11) deglas.nn.TARGET Jis bus naudojamas elementų funkcijai taikyti kaip:
torch.nn programoje PyTorch
12) žibintuvėlis.nn.Sigmoidas Jis bus naudojamas elementų funkcijai taikyti kaip:
torch.nn programoje PyTorch
13) žibintuvėlis.nn.Softplus Jis bus naudojamas elementų funkcijai taikyti kaip:
torch.nn programoje PyTorch
14) degiklis.nn.Minkštas susitraukiantis Jis bus naudojamas švelnaus susitraukimo funkcijos elementams taikyti:
torch.nn programoje PyTorch
15) torch.nn.Softsign Jis bus naudojamas elementų funkcijai taikyti kaip:
torch.nn programoje PyTorch
16) deglas.nn.Tanh Jis bus naudojamas elementų funkcijai taikyti kaip:
torch.nn programoje PyTorch
17) deglas.nn.Tanhshrink Jis bus naudojamas elementų funkcijai taikyti kaip:
Tanh susitraukimas(x)=x-Tanh(x)
18) deglas.nn.Slenkstis Jis bus naudojamas kiekvienam įvesties tensor elementui nustatyti. Slenkstis apibrėžiamas taip:
torch.nn programoje PyTorch
7. Netiesinis aktyvinimas (kita)
1) degiklis.nn.Softmin Jis naudojamas „softmin“ funkcijai pritaikyti n matmenų įvesties „Tensor“, kad būtų pakeistas jų mastelis. Po to n-mačio išvesties tenzoriaus elementai yra diapazone nuo 0, 1 ir suma iki 1. Softmin apibrėžiamas taip:
torch.nn programoje PyTorch
2) degiklis.nn.Softmax Jis naudojamas „softmax“ funkcijai pritaikyti n matmenų įvesties „Tensor“, siekiant pakeisti jų mastelį. Po to n-mačio išvesties tenzoriaus elementai yra diapazone nuo 0, 1 ir suma iki 1. Softmax apibrėžiamas taip:
torch.nn programoje PyTorch
3) degiklis.nn.Softmax2d Jis naudojamas SoftMax funkcijoms pritaikyti kiekvienai erdvinei vietai.
4) degiklis.nn.LogSoftmax Jis naudojamas LogSoftmax funkcijai pritaikyti n-mačio įvesties tensoriui. „LofSoftmax“ funkciją galima apibrėžti taip:
torch.nn programoje PyTorch
5) torch.nn.AdaptiveLogSoftmaxWithLoss Tai strategija, skirta mokymo modeliams su didelėmis išvesties erdvėmis. Tai labai efektyvu, kai etiketės paskirstymas yra labai nesubalansuotas
8. Normalizavimo sluoksniai
1) degiklis.nn.BatchNorm1d Jis naudojamas paketiniam normalizavimui per 2D arba 3D įvestis.
torch.nn programoje PyTorch
2) degiklis.nn.BatchNorm2d Jis naudojamas norint taikyti paketinį normalizavimą per 4D.
torch.nn programoje PyTorch
3) torch.nn.BatchNorm3d Jis naudojamas paketiniam normalizavimui per 5D įvestis.
torch.nn programoje PyTorch
4) torch.nn.GroupNorm Jis naudojamas grupės normalizavimui taikyti mini įvesties paketą.
torch.nn programoje PyTorch
5) torch.nn.SyncBatchNorm Jis naudojamas paketiniam normalizavimui n matmenų įvestims taikyti.
torch.nn programoje PyTorch
6) degiklis.nn.InstanceNorm1d Jis naudojamas egzemplioriaus normalizavimui taikyti 3D įvestyje.
torch.nn programoje PyTorch
7) torch.nn.InstanceNorm2d Jis naudojamas egzemplioriaus normalizavimui per 4D įvestį taikyti.
torch.nn programoje PyTorch
8) torch.nn.InstanceNorm3d Jis naudojamas egzemplioriaus normalizavimui taikyti 5D įvestyje.
torch.nn programoje PyTorch
9) degiklis.nn.LayerNorm Jis naudojamas sluoksnio normalizavimui taikyti mini įvesties paketą.
torch.nn programoje PyTorch
10) torch.nn.LocalResponseNorm Jis naudojamas vietiniam atsako normalizavimui įvesties signalui, sudarytam iš kelių įvesties plokštumų, kur kanalas užima antrąją dimensiją.
9. Pasikartojantys sluoksniai
1) žibintuvėlis.nn.RNN Jis naudojamas kelių sluoksnių Elman RNN su tanh arba ReLU netiesiškumu pritaikyti įvesties sekai. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
ht=tanh(Wjuosxt+bjuos+Whhtt-1+bhh)
2) deglas.nn.LSTM Jis naudojamas daugiasluoksnės ilgalaikės trumpalaikės atminties (LSTM) RNN pritaikymui įvesties sekai. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
torch.nn programoje PyTorch
3) deglas.nn.GRU Jis naudojamas daugiasluoksniam pasikartojančiam blokui (GRU) RNN taikyti įvesties sekai. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
torch.nn programoje PyTorch
4) žibintuvėlis.nn.RNNCell Jis naudojamas Elmano RNN langeliui su tanh arba ReLU netiesiškumu pritaikyti įvesties sekai. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
h'=tanh(Wjuosx+bjuos+Whhh+bhh)
Vietoj tanh naudojamas ReLU
5) torch.nn.LSTMCell Jis naudojamas ilgalaikės trumpalaikės atminties (LSTM) langeliui pritaikyti įvesties sekai. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
torch.nn programoje PyTorch
Kur σ yra sigmoidinė funkcija, o * yra Hadamardo sandauga.
6) deglas.nn.GRUCell Jis naudojamas įvesties sekai pritaikyti uždarojo pasikartojančio vieneto (GRU) langelį. Kiekvienas sluoksnis kiekvienam įvesties sekos elementui apskaičiuoja šią funkciją:
torch.nn programoje PyTorch
10. Linijiniai sluoksniai
1) deglas.nn.Tapatybė Tai vietos rezervavimo tapatybės operatorius, kuris nejautrus argumentams.
2) deglas.nn.Tiesinis Jis naudojamas įeinantiems duomenims taikyti tiesinę transformaciją:
y=xAT+b
3) žibintuvėlis.nn.Bilinear Jis naudojamas gaunamiems duomenims pritaikyti bilinijinę transformaciją:
y=x1Ax2+b
vienuolika. Nuleidžiami sluoksniai
1) deglas.nn.Iškritimas Jis naudojamas neuronų koadaptacijos reguliavimui ir prevencijai. Veiksnys torch.nn programoje PyTorchtreniruočių metu svarstyklės išeina. Tai reiškia, kad modulis įvertinimo metu apskaičiuoja tapatybės funkciją.
2) deglas.nn.Dropout2d Jei gretimi elementų žemėlapių pikseliai yra koreliuojami, tada torch.nn.Dropout nesureguliuos aktyvavimų ir sumažins efektyvų mokymosi greitį. Šiuo atveju torch.nn.Dropout2d() naudojamas siekiant skatinti objektų žemėlapių nepriklausomybę.
3) torch.nn.Dropout3d Jei gretimi elementų žemėlapių pikseliai yra koreliuojami, tada torch.nn.Dropout nesureguliuos aktyvavimų ir sumažins efektyvų mokymosi greitį. Šiuo atveju torch.nn.Dropout2d () naudojamas siekiant skatinti objektų žemėlapių nepriklausomybę.
4) žibintuvėlis.nn.AlphaDropout Jis naudojamas Alpha Dropout pritaikymui per įvestį. „Alpha Dropout“ yra „Dropout“ tipas, kuris palaiko savaime normalizuojančią savybę.
12. Reti sluoksniai
1) deglas.nn.Įdėjimas Jis naudojamas žodžių įterpimui saugoti ir juos gauti naudojant indeksus. Modulio įvestis yra indeksų sąrašas, o išvestis yra atitinkamo žodžio įterpimas.
2) žibintuvėlis.nn.EmbbeddingBag Jis naudojamas apskaičiuojant įterpimo „maišelių“ sumas arba vidurkį, neatkuriant tarpinio įdėjimo.
13. Atstumo funkcija
1) deglas.nn.KosinusasPanašumas Jis grąžins kosinuso panašumą tarp x1 ir x2, apskaičiuotą pagal dim.
torch.nn programoje PyTorch
2) degiklis.nn.PairwiseDistance Jis apskaičiuoja paketinį atstumą tarp vektorių v1, v2 naudojant p normą:
torch.nn programoje PyTorch
14. Praradimo funkcija
1) deglas.nn.L1Praradimas Jis naudojamas pagal kriterijų, kuris matuoja vidutinę absoliučią paklaidą tarp kiekvieno įvesties x elemento ir tikslinio y. Nesumažėjusį nuostolį galima apibūdinti taip:
l(x,y)=L={l1,...,ln}, ln=|xn- irn|,
Kur N yra partijos dydis.
2) deglas.nn.MSELoss Jis naudojamas kriterijui, kuris matuoja vidutinę kvadratinę paklaidą tarp kiekvieno įvesties elemento x ir tikslinio y. Nesumažėjusį nuostolį galima apibūdinti taip:
l(x,y)=L={l1,...,ln}, ln=(xn- irn)2,
Kur N yra partijos dydis.
3) torch.nn.CrossEntropyLoss Šis kriterijus sujungia nn.LogSoftmax() ir nn.NLLLoss() vienoje klasėje. Tai naudinga, kai mokome klasifikavimo problemą su C klasėmis.
4) degiklis.nn.CTCLoss Connectionist Temporal Classification loss apskaičiuoja nuostolius tarp ištisinės laiko eilutės ir tikslinės sekos.
5) žibintuvėlis.nn.NLLloss Neigiamas log-tikimybės praradimas naudojamas klasifikavimo problemai lavinti naudojant C klases.
6) deglas.nn.PoissonNLLLoss Neigiamas log-tikimybės praradimas su Puasono skirstiniu t
taikinys~Poisson(input)loss(input,target)=input-target*log(target!)he target.
7) žibintuvėlis.nn.KLDivLoss Tai naudingas atstumo matas nuolatiniam paskirstymui, taip pat naudingas, kai atliekame tiesioginę regresiją nuolatinio išvesties paskirstymo erdvėje.
8) deglas.nn.BCELoss Jis naudojamas sukurti kriterijų, kuris matuoja dvejetainę kryžminę entropiją tarp tikslo ir išvesties. Nesumažėjusį nuostolį galima apibūdinti taip:
l(x,y)=L={l1,...,ln}, ln=-vn[irn*logxn+ (1 mn)*log(1-xn)],
Kur N yra partijos dydis.
9) torch.nn.BCEWithLogitsLoss Jis sujungia sigmoidinį sluoksnį ir BCELoss vienoje klasėje. Sujungdami operaciją į vieną sluoksnį, galime pasinaudoti log-sum-exp gudrybe siekiant skaitmeninio stabilumo.
10) torch.nn.MarginRankingLoss Tai sukuria kriterijų, kuris matuoja nurodytų įvesčių x1, x2, dviejų 1D mini paketų tenzorių praradimą ir etiketę 1D mini-batch tensor y, kurioje yra 1 arba -1. Kiekvieno mažos partijos mėginio praradimo funkcija yra tokia:
nuostoliai(x,y)=maks.(0,-y*(x1-x2)+marža
11) torch.nn.HingeEmbeddingLoss HingeEmbeddingLoss matuoja duoto įvesties tenzoriaus x ir etikečių tenzoriaus y, kuriuose yra 1 arba -1, praradimą. Jis naudojamas matuojant, ar dvi įvestys yra panašios, ar nepanašios. Praradimo funkcija apibrėžiama taip:
torch.nn programoje PyTorch
12) torch.nn.MultiLabelMarginLoss Jis naudojamas siekiant sukurti kriterijų, kuris optimizuoja kelių klasių kelių klasifikacijų vyrių nuostolius tarp įvesties x ir išvesties y.
torch.nn programoje PyTorch
13) degiklis.nn.SmoothL1Loss Jis naudojamas norint sukurti kriterijų, kuris naudoja kvadratą, jei absoliuti elemento paklaida yra mažesnė nei 1, o L1 terminas kitu atveju. Jis taip pat žinomas kaip Huberio praradimas:
torch.nn programoje PyTorch
14) torch.nn.SoftMarginLoss Jis naudojamas siekiant sukurti kriterijų, kuris optimizuoja dviejų klasių klasifikavimo logistinius nuostolius tarp įvesties tenzoriaus x ir tikslinio tenzoriaus y, kuriame yra 1 arba -1.
torch.nn programoje PyTorch
15) torch.nn.MultiLabelSoftMarginLoss Jis naudojamas siekiant sukurti kriterijų, kuris optimizuoja kelių etikečių „vieno prieš visus“ nuostolius, remiantis maksimalia entropija tarp įvesties x ir tikslinės y dydžio (N, C).
torch.nn programoje PyTorch
16) torch.nn.CosineEmbeddingLoss Jis naudojamas norint sukurti kriterijų, kuris matuoja nurodytų įvesties tenzorių x1, x2 praradimą ir tenzoriaus etiketę y su reikšmėmis 1 arba -1. Jis naudojamas matuojant, ar du įėjimai yra panašūs, ar nepanašūs, naudojant kosinuso atstumą.
torch.nn programoje PyTorch
17) torch.nn.MultiMarginLoss Jis naudojamas siekiant sukurti kriterijų, kuris optimizuoja kelių klasių klasifikavimo vyrių nuostolius tarp įvesties x ir išvesties y.
torch.nn programoje PyTorch
18) torch.nn.TripletMarginLoss Jis naudojamas sukurti kriterijų, kuris matuoja duotų įvesties tenzorių x1, x2, x3 ir paraštės, kurios reikšmė didesnė nei 0, tripleto nuostolius. Jis naudojamas santykiniam mėginių panašumui matuoti. Trigubas susideda iš inkaro, teigiamo pavyzdžio ir neigiamo pavyzdžio.
L(a,p,n)=maks{d(ai, pi)-d(ai,ni)+marža,0}
penkiolika. Regėjimo sluoksniai
1) torch.nn.PixelShuffle Jis naudojamas elementams perstatyti į formos tenzorį (*, C × r2,H,W) iki formos tenzorio (*,C,H×r,W,r)
2) žibintuvėlis.nn.Pavyzdys Jis naudojamas tam tikrų kelių kanalų 1D, 2D arba 3D duomenims atrinkti.
3) torch.nn.upsamplingNearest2d Jis naudojamas taikyti 2D artimiausio kaimyno atranką įvesties signalui, sudarytam iš kelių įvesties kanalų.
4) torch.nn.UpsamplingBilinear2d Jis naudojamas taikyti 2D bilinijinį atranką įvesties signalui, sudarytam iš kelių įvesties kanalų.
16. DataParallel sluoksniai (keli GPU, paskirstyti)
1) torch.nn.DataParallel Jis naudojamas duomenų lygiagretumui įgyvendinti modulio lygiu.
2) torch.nn.DistributedDataParallel Jis naudojamas paskirstytų duomenų lygiagretumui įgyvendinti, kuris yra pagrįstas paketu torch.distributed modulio lygiu.
3) torch.nn.DistributedDataParallelCPU Jis naudojamas paskirstytų duomenų lygiagretumui įgyvendinti CPU modulio lygiu.
17. Komunalinės paslaugos
1) torch.nn.clip_grad_norm_ Jis naudojamas kartojant parametrų gradiento normą.
2) torch.nn.clip_grad_value_ Jis naudojamas norint iškirpti parametrų kartojimo gradiento normą, esant nurodytai vertei.
3) torch.nn.parameters_to_vector Jis naudojamas parametrams konvertuoti į vieną vektorių.
4) torch.nn.vector_to_parameters Jis naudojamas vienam vektoriui konvertuoti į parametrus.
5) deglas.nn.svorio_norma Jis naudojamas svorio normalizavimui pritaikyti tam tikro modulio parametrui.
6) torch.nn.remove_weight_norm Jis naudojamas svorio normalizavimui ir pakartotiniam parametrų nustatymui pašalinti iš modulio.
7) torch.nn.spectral_norm Jis naudojamas spektriniam normalizavimui tam tikro modulio parametrui taikyti.
8) torch.nn.PackedSequence Jis bus naudojamas supakuotos sekos duomenims ir paketų_dydžių sąrašui laikyti.
9) torch.nn.pack_padded_sequence Jis naudojamas supakuoti Tensor, kuriame yra kintamo ilgio paminkštintos sekos.
10) torch.nn.pad_packed_sequence Jis naudojamas supakuotai kintamo ilgio sekų partijai užpildyti.
11) torch.nn.pad_sequence Jis naudojamas kintamo ilgio tenzorių sąrašui užpildyti su užpildymo verte.
12) torch.nn.pack_sequence Jis naudojamas kintamo ilgio tenzorų sąrašui supakuoti
13) torch.nn.remove_spectral_norm Jis naudojamas spektriniam normalizavimui ir pakartotiniam parametravimui pašalinti iš modulio.

Nuoroda:

https://pytorch.org/docs/stable/nn.html