Kako deluje metoda »naključnega brisanja« v PyTorchu?

Kako Deluje Metoda Nakljucnega Brisanja V Pytorchu



Učinkovitost ogrodja PyTorch za razvoj kompleksnih in najsodobnejših modelov strojnega učenja je posledica širokega nabora funkcij za izboljšanje in » Naključno brisanje ” metoda je ena izmed njih. Kot že ime pove, naključno izbere sliko in odstrani del njenih podatkov, da posnema situacijo v resničnem svetu, kjer so predstavljeni nepopolni podatki. To izboljša sposobnost modela, da se prilagodi in dobro deluje v novih in zahtevnih situacijah.

Ta blog bo razpravljal o tem, kako ' Naključno brisanje ” deluje v PyTorchu.

Zakaj se v PyTorchu uporablja metoda »naključnega brisanja«?

Naključno odstranjevanje podatkov s slik predstavlja težavo pri šolanju modelov za slikovno analizo, saj so se prisiljeni prilagajati nezadostnim podatkom. To pripravi model za naloge v resničnem svetu, kjer popolni podatki niso vedno prisotni. Model postane veliko boljši pri sklepanju iz vseh vrst podatkov in upravljanju prikaza rezultatov. Izbira slikovnih pik za odstranitev je naključna, tako da ni vnosa pristranskosti, nastala slika pa se med usposabljanjem uporablja kot vhodni podatek.







Kako deluje metoda »naključnega brisanja« v PyTorchu?

Metoda naključnega brisanja se uporablja za izdelavo modela globokega učenja, ki je bolje opremljen za obravnavo resničnih aplikacij. Sledite spodnjim korakom, da se naučite, kako ga uporabljati v svojih projektih PyTorch, da povečate njihovo upravljanje podatkov in izboljšate zmožnosti sklepanja:



1. korak: Nastavite Collaboratory IDE

Google Colab je idealna izbira za razvoj modelov AI z uporabo ogrodja PyTorch. Pomaknite se do Sodelovanja Spletna stran in zaženi ' Nov zvezek ”:







2. korak: uvozite potrebne knjižnice

Uporabi ' !pip ' namestitveni program za pakete, ki ga ponuja Python za namestitev knjižnic in uporabo ' uvoz «, da jih uvozite v projekt:

uvoz svetilka

uvoz torchvision. preoblikuje kot ts

od PIL uvoz Slika

uvoz matplotlib. pyplot kot plt

Opis dane kode je naslednji:



  • Uvozi » svetilka ' knjižnica z uporabo ' uvoz ” ukaz.
  • ' torchvision.preoblikuje ” vsebuje transformacije za naključno brisanje.
  • PIL ” je knjižnica slik python in vsebuje funkcionalnost za obdelavo slik.
  • ' matplotlib.pyplot ” Knjižnica se uporablja za vizualizacijo izvirnih in preoblikovanih slik:

3. korak: naložite vhodno sliko

Naložite sliko v razdelek Datoteke:

Nato naložite vhodno sliko s pomočjo » odprto() ” modula “Slika”:

slika = Slika. odprto ( 'a2.jpeg' )

4. korak: Določite transformacijo za izvedbo transformacij

Zdaj definirajte ' Naključno brisanje ” transformator, ki bo preoblikoval sliko tako, da bo izbral njeno naključno pravokotno območje in izbrisal njene slikovne pike. Poleg tega pretvorite vhodno sliko v senzor svetilke z uporabo ' ToTensor() ', če je slika PIL in jo nato pretvorite nazaj v sliko PIL prek ' ToPILIimage() ”:

transformirati = ts. Sestavi ( [ ts. ToTensor ( ) , ts. Naključno brisanje ( str = 0,5 , lestvica = ( 0,02 , 0,33 ) , razmerje = ( 0,3 , 3.3 ) , vrednost = 0 , na mestu = False ) , ts. ToPILImage ( ) ] )

Parametri, uporabljeni v zgornjem ' Naključno brisanje ” transformatorja so razloženi spodaj:

  • p: Predstavlja verjetnost, da bo dosežena operacija naključnega dviga.
  • lestvica: Označuje obseg izbrisanega območja vhodne slike.
  • razmerje: Označuje razmerje stranic izbrisanega območja.
  • vrednost: Določa vrednost brisanja, ki je privzeto »0«. Če gre za eno samo celo število, odstrani vse slikovne pike, če pa ima torko s tremi celimi števili, odstrani kanale R, G in B.
  • na mestu: To je 'logična' vrednost, zaradi katere je dani transformator za naključno brisanje nameščen. Privzeto je »false«.

5. korak: Uporabite slovarsko razumevanje za zajemanje izhodnih slik

Uporabite koncept razumevanja slovarja, da posnamete štiri izhodne slike:

slike = [ transformirati ( slika ) za _ v obseg ( 4 ) ]

6. korak: Predstavite štiri izhodne slike

Na koncu prikažite štiri izhodne slike s pomočjo spodaj navedenega kodnega bloka:

fig = plt. slika ( velikost fige = ( 7 , 4 ) )

vrstice , cols = 2 , 2

za j v obseg ( 0 , samo ( slike ) ) :

fig. add_subplot ( vrstice , cols , j+ 1 )

plt. imshow ( slike [ j ] )

plt. xticks ( [ ] )

plt. yticks ( [ ] )

plt. pokazati ( )

Zgornji opis kode je naslednji:

  • Uporabite ' plt.figure() ” metoda za risanje štirih slik določene širine in višine.
  • Nato določite določene vrstice in stolpce, da prilagodite štiri slike.
  • Po tem inicializirajte zanko »za«, ki uporabi » podzaplet() ' za definiranje podrisa, metoda 'show()' za prikaz slik in ' plt.xticks() ' tako dobro, kot ' plt.yticks() ”, da nastavite trenutno lokacijo kljukice in oznake osi x in y.
  • Na koncu uporabite » plt.show() ” za tiskanje slik za izpis:

Opomba : Uporabniki lahko dostopajo do našega zvezka Colab s priloženim povezava .

Pro-Nasvet

Ena ključna uporaba ' Naključno brisanje ” v projektih PyTorch je varnost. Uporablja se lahko za odstranjevanje slikovnih pik z občutljivih slik, kot so tiste, ki vsebujejo poslovne skrivnosti ali kaj drugega vrednega. Posebna naključna funkcija za to brisanje bi bila znana samo prvotnemu uporabniku in le ta bi lahko obnovil izbrisane slike nazaj v prvotno različico.

uspeh! Pokazali smo, kako deluje metoda naključnega brisanja v PyTorchu.

Zaključek

' Naključno brisanje ” metoda v PyTorchu deluje tako, da odstrani naključne slikovne pike s slike in posnema scenarij iz resničnega sveta, da se bolje usposobi model. Tako bo model bolj spreten pri ravnanju z različnimi vrstami podatkov, da bi iz nepopolnih podatkov lahko sklepal o kakovosti. Ponazorili smo, kako uporabljati ' Naključno brisanje ” v PyTorchu.