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áklyaimport 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.