Hogyan működik a „véletlenszerű törlés” módszer a PyTorchban?

Hogyan Mukodik A Veletlenszeru Torles Modszer A Pytorchban



A PyTorch keretrendszer komplex és legkorszerűbb gépi tanulási modellek fejlesztésére szolgáló hatékonysága a bővítő funkciók széles skálájának és a „ Véletlenszerű törlés ” módszer egyike ezeknek. Ahogy a neve is sugallja, véletlenszerűen választ ki egy képet, és eltávolítja az adatok egy részét, hogy utánozzon egy valós helyzetet, ahol hiányos adatok jelennek meg. Ez javítja a modell azon képességét, hogy alkalmazkodjon és jól teljesítsen új és kihívásokkal teli helyzetekben.

Ez a blog arról lesz szó, hogyan Véletlenszerű törlés ” metódus működik PyTorchban.

Miért használja a „véletlenszerű törlés” módszert a PyTorch?

Az adatok véletlenszerű eltávolítása a képekről problémát jelent a képelemzési modellek képzésében, mert kénytelenek alkalmazkodni az elégtelen adatokhoz. Ez modellt készít a valós feladatokhoz, ahol nem mindig állnak rendelkezésre teljes adatok. A modell sokkal jobb lesz abban, hogy mindenféle adatból következtetéseket tud levonni, és képes az eredmények megjelenítésére. Az eltávolítandó pixelek kiválasztása véletlenszerűen történik, így nincs torzítás, és az eredményül kapott képet a rendszer bemeneti adatként használja a képzés során.







Hogyan működik a „véletlenszerű törlés” módszer a PyTorch-ban?

A Random Erasing módszert arra használják, hogy egy mély tanulási modellt jobban felszereljenek a valós alkalmazások kezelésére. Kövesse az alábbi lépéseket, hogy megtudja, hogyan használhatja PyTorch-projektjeiben az adatkezelés javítása és a következtetési képességek javítása érdekében:



1. lépés: Állítsa be a Colaboratory IDE-t

A Google Colab ideális választás a PyTorch keretrendszert használó mesterséges intelligencia modellek fejlesztéséhez. Navigáljon a Colaboratóriumhoz weboldal és indíts el egy ' Új Notebook ”:







2. lépés: Importálja a szükséges könyvtárakat

Használja a ' !csipog ' csomagtelepítő, amelyet a Python biztosít a könyvtárak telepítéséhez és a ' import ” paranccsal importálhatja őket a projektbe:

import fáklya

import fáklyalátás. átalakítja mint ts

tól től PIL import Kép

import matplotlib. pyplot mint plt

Az adott kód leírása a következő:



  • Importálja a ' fáklya ' könyvtár a ' import ” parancsot.
  • A ' fáklyalátás.átalakul ” csomag tartalmazza a Véletlenszerű törlés átalakításait.
  • ' PIL ” a python képtár, amely tartalmazza a képek feldolgozásának funkcióit.
  • A ' matplotlib.pyplot ” könyvtár az eredeti és az átalakított képek megjelenítésére szolgál:

3. lépés: Töltse fel a bemeneti képet

Töltse fel a képet a Fájlok szakaszban:

Ezután töltse be a bemeneti képet a „ nyisd ki() ” az „Image” modul metódusa:

kép = Kép. nyisd ki ( 'a2.jpeg' )

4. lépés: Adja meg az átalakítást az átalakítások végrehajtásához

Most határozzon meg egy „ Véletlenszerű törlés ” transzformátor, amely úgy alakítja át a képet, hogy kiválasztja annak véletlenszerű téglalap alakú részét, és törli a képpontjait. Ezenkívül konvertálja a bemeneti képet a pisztolyérzékelőre a „ ToTensor() ” módszerrel, ha ez egy PIL kép, majd konvertálja vissza PIL képpé a „ ToPILImage() ”:

átalakítani = ts. Összeállít ( [ ts. ToTensor ( ) , ts. Véletlenszerű törlés ( p = 0.5 , skála = ( 0,02 , 0,33 ) , hányados = ( 0.3 , 3.3 ) , érték = 0 , a helyén = Hamis ) , ts. ToPILIkép ( ) ] )

A fentiekben használt paraméterek Véletlenszerű törlés ” transzformátor leírása alább olvasható:

  • p: Azt a valószínűséget jelenti, hogy a véletlenszerű emelési művelet megvalósul.
  • skála: A bemeneti kép törölt területének tartományát jelzi.
  • hányados: A törölt terület képarányát jelöli.
  • érték: Megadja a törlési értéket, amely alapértelmezés szerint „0”. Ha egyetlen egész szám, akkor az összes képpontot eltávolítja, ha pedig egy három egész számot tartalmazó sor, akkor eltávolítja az R, G és B csatornákat.
  • a helyén: Ez egy „boolean” érték, amely az adott véletlenszerű törlő transzformátort a helyére teszi. Alapértelmezés szerint „hamis”.

5. lépés: Használja a szótár megértését kimeneti képek készítéséhez

Használja a szótár megértési koncepcióját a négy kimeneti kép elkészítéséhez:

képeket = [ átalakítani ( kép ) számára _ ban ben hatótávolság ( 4 ) ]

6. lépés: Mutassa be a négy kimeneti képet

Végül jelenítse meg a négy kimeneti képet az alábbi kódblokk segítségével:

ábra = plt. ábra ( fügeméret = ( 7 , 4 ) )

sorokat , cols = 2 , 2

számára j ban ben hatótávolság ( 0 , csak ( képeket ) ) :

ábra. add_subplot ( sorokat , cols , j+ 1 )

plt. imshow ( képeket [ j ] )

plt. xticks ( [ ] )

plt. yticks ( [ ] )

plt. előadás ( )

A fenti kód leírása a következő:

  • Alkalmazza a „ plt.figure() ” módszer a négy meghatározott szélességű és magasságú kép ábrázolására.
  • Ezután adjon meg konkrét sorokat és oszlopokat a négy kép beállításához.
  • Ezután inicializáljon egy „for” ciklust, amely alkalmazza a „ mellékcselekmény() ” metódus a részterület meghatározásához, a „show()” metódus a képek megjelenítéséhez, és a „ plt.xticks() ' szintén ' plt.yticks() ” gombbal beállíthatja az x és az y tengely aktuális jelölési helyét és címkéit.
  • Végül használja a „ plt.show() ” módszer a képek kinyomtatására:

jegyzet : A felhasználók hozzáférhetnek Colab-jegyzetfüzetünkhöz a mellékelt eszközök használatával link .

Profi tipp

A „ Véletlenszerű törlés ” módszer a PyTorch projektekben a biztonság. Használható pixelek eltávolítására olyan érzékeny képekről, mint például az üzleti titkokat vagy más értéket tartalmazó képekről. A törlés konkrét véletlenszerű funkcióját csak az eredeti felhasználó ismerné, és csak a felhasználó tudná visszaállítani a törölt képeket az eredeti verziójukra.

Siker! Megmutattuk, hogyan működik a véletlenszerű törlési módszer a PyTorch-ban.

Következtetés

A ' Véletlenszerű törlés ” módszer a PyTorchban úgy működik, hogy eltávolítja a véletlenszerű képpontokat a képről, és egy valós forgatókönyvet utánoz a modell jobb betanítása érdekében. Ez ügyesebbé teszi a modellt a különböző típusú adatok kezelésében, hogy minőségi következtetéseket vonjon le a hiányos adatokból. Megmutattuk, hogyan kell használni a „ Véletlenszerű törlés ” metódus a PyTorch-ban.