Hvordan fungerer metoden 'Tilfeldig sletting' i PyTorch?

Hvordan Fungerer Metoden Tilfeldig Sletting I Pytorch



Effektiviteten til PyTorch-rammeverket for utvikling av komplekse og toppmoderne maskinlæringsmodeller skyldes dets brede spekter av utvidende funksjoner og ' Tilfeldig sletting ”-metoden er en av dem. Som navnet antyder, velger den tilfeldig et bilde og fjerner deler av dataene for å etterligne en virkelig situasjon der ufullstendige data presenteres. Dette forbedrer modellens evne til å tilpasse seg og prestere godt i nye og utfordrende situasjoner.

Denne bloggen vil diskutere hvordan ' Tilfeldig sletting ”-metoden fungerer i PyTorch.

Hvorfor brukes metoden 'Tilfeldig sletting' i PyTorch?

Tilfeldig fjerning av data fra bildene utgjør et problem for opplæringen av bildeanalysemodeller fordi de er tvunget til å tilpasse seg utilstrekkelig data. Dette forbereder en modell for oppgaver i den virkelige verden der fullstendige data ikke alltid er tilstede. Modellen blir langt bedre til å kunne trekke slutninger fra alle slags data og klare å vise resultater. Valget av piksler for fjerning er tilfeldig, så det er ingen introduksjon av skjevhet og det resulterende bildet brukes som inngangsdata under trening.







Hvordan fungerer metoden 'Tilfeldig sletting' i PyTorch?

Random Erasing-metoden brukes for å gjøre en dyp læringsmodell bedre rustet til å håndtere reelle applikasjoner. Følg trinnene nedenfor for å lære hvordan du bruker den i PyTorch-prosjektene dine for å øke databehandlingen og forbedre slutningsevnene:



Trinn 1: Sett opp Collaboratory IDE

Google Colab er et ideelt valg for utvikling av AI-modeller som bruker PyTorch-rammeverket. Naviger til Collaboratory nettsted og lanser en ' Ny notatbok ':







Trinn 2: Importer de nødvendige bibliotekene

Bruke ' !pip '-pakkeinstallasjonsprogram levert av Python for å installere biblioteker og bruke ' import kommando for å importere dem til prosjektet:

import lommelykt

import fakkelsyn. transformerer som ts

fra PIL import Bilde

import matplotlib. pyplot som plt

Beskrivelsen av gitt kode er som følger:



  • Importer ' lommelykt ' biblioteket ved å bruke ' import ' kommando.
  • « torchvision.transformers ”-pakken inneholder transformasjonene for tilfeldig sletting.
  • ' PIL ” er python-bildebiblioteket og det inneholder funksjonaliteten for å behandle bilder.
  • « matplotlib.pyplot ”-biblioteket brukes til å visualisere de originale og transformerte bildene:

Trinn 3: Last opp inndatabildet

Last opp bildet i Filer-delen:

Deretter laster du inn bildet ved å bruke ' åpen() '-metoden til 'Bilde'-modulen:

bilde = Bilde. åpen ( 'a2.jpeg' )

Trinn 4: Spesifiser transformasjon for å utføre transformasjoner

Definer nå en ' Tilfeldig sletting ” transformator som vil transformere bildet ved å velge det tilfeldige rektangulære området og slette pikslene. Konverter i tillegg inngangsbildet til fakkelsensoren ved å bruke ' ToTensor() '-metoden hvis det er et PIL-bilde og deretter konvertere det tilbake til PIL-bildet via ' ToPILImage() ':

forvandle = ts. Skriv ( [ ts. TilTensor ( ) , ts. Tilfeldig sletting ( s = 0,5 , skala = ( 0,02 , 0,33 ) , forhold = ( 0,3 , 3.3 ) , verdi = 0 , på plass = Falsk ) , ts. TOPILIbilde ( ) ] )

Parametrene som brukes i ovenstående ' Tilfeldig sletting ' transformator er forklart nedenfor:

  • p: Det representerer sannsynligheten for at den tilfeldige heveoperasjonen vil bli oppnådd.
  • skala: Den angir rekkevidden til det slettede området til et inndatabilde.
  • forhold: Det angir sideforholdet til det slettede området.
  • verdi: Den spesifiserer sletteverdien som er '0' som standard. Hvis det er et enkelt heltall, fjerner den alle piksler, og hvis det er en tuppel som har tre heltall, fjerner den henholdsvis R-, G- og B-kanalene.
  • på plass: Det er en 'boolsk' verdi som gjør den gitte tilfeldige slettetransformatoren på plass. Som standard er det 'false'.

Trinn 5: Bruk ordbokforståelse for å ta utdatabilder

Bruk ordbokforståelseskonseptet for å ta de fire utdatabildene:

Bilder = [ forvandle ( bilde ) til _ i område ( 4 ) ]

Trinn 6: Vis frem de fire utdatabildene

Til slutt, vis de fire utgangsbildene ved hjelp av kodeblokken nedenfor:

Fig = plt. figur ( fikenstørrelse = ( 7 , 4 ) )

rader , cols = 2 , 2

til j i område ( 0 , bare ( Bilder ) ) :

Fig. add_subplot ( rader , cols , j+ 1 )

plt. imshow ( Bilder [ j ] )

plt. xticks ( [ ] )

plt. yticks ( [ ] )

plt. forestilling ( )

Kodebeskrivelsen ovenfor er som følger:

  • Bruk ' plt.figure() ” metode for å plotte de fire bildene med spesifisert bredde og høyde.
  • Deretter spesifiser spesifikke rader og kolonner for å justere de fire bildene.
  • Etter det initialiseres en 'for'-løkke som bruker ' delplott() '-metoden for å definere delplotten, 'show()'-metoden for å vise bildene, og ' plt.xticks() ' i tillegg til ' plt.yticks() ” for å angi gjeldende hakeplassering og etiketter for x- og y-aksen.
  • Til slutt bruker du ' plt.show() ' metode for å skrive ut bildene til utdata:

Merk : Brukere kan få tilgang til vår Colab Notebook ved å bruke den medfølgende link .

Pro-Tips

En nøkkelbruk av ' Tilfeldig sletting ”-metoden i PyTorch-prosjekter er sikkerhet. Den kan brukes til å fjerne piksler fra sensitive bilder som de som inneholder noen forretningshemmeligheter eller noe annet av verdi. Den spesifikke tilfeldige funksjonen for denne slettingen vil bare være kjent for den opprinnelige brukeren, og bare brukeren vil kunne gjenopprette de slettede bildene tilbake til originalversjonen.

Suksess! Vi har vist hvordan metoden for tilfeldig sletting fungerer i PyTorch.

Konklusjon

« Tilfeldig sletting ”-metoden i PyTorch fungerer ved å fjerne tilfeldige piksler fra et bilde og etterligne et virkelighetsscenario for å trene modellen bedre. Dette vil gjøre modellen mer dyktig til å håndtere ulike typer data for å trekke kvalitetsslutninger fra ufullstendige data. Vi har illustrert hvordan du bruker ' Tilfeldig sletting ”-metoden i PyTorch.