Jak działa metoda „losowego kasowania” w PyTorch?

Jak Dziala Metoda Losowego Kasowania W Pytorch



Skuteczność platformy PyTorch w opracowywaniu złożonych i najnowocześniejszych modeli uczenia maszynowego wynika z szerokiej gamy funkcji rozszerzających oraz „ Losowe usuwanie Metoda jest jedną z nich. Jak sama nazwa wskazuje, losowo wybiera obraz i usuwa część jego danych, aby naśladować rzeczywistą sytuację, w której prezentowane są niekompletne dane. Poprawia to zdolność modelu do adaptacji i dobrego działania w nowych i trudnych sytuacjach.

Na tym blogu omówimy, w jaki sposób „ Losowe usuwanie ” działa w PyTorch.

Dlaczego w PyTorch stosowana jest metoda „losowego kasowania”?

Losowe usuwanie danych z obrazów stanowi problem w uczeniu modeli analizy obrazu, ponieważ są one zmuszone do dostosowywania się do niewystarczających danych. Przygotowuje to model dla zadań w świecie rzeczywistym, w których nie zawsze są dostępne pełne dane. Model staje się znacznie lepszy w zakresie wyciągania wniosków z wszelkiego rodzaju danych i wyświetlania wyników. Wybór pikseli do usunięcia jest losowy, więc nie następuje wprowadzenie odchylenia, a powstały obraz jest używany jako dane wejściowe podczas uczenia.







Jak działa metoda „losowego kasowania” w PyTorch?

Metoda Random Erasing służy do lepszego przygotowania modelu głębokiego uczenia się do obsługi rzeczywistych aplikacji. Wykonaj kroki podane poniżej, aby dowiedzieć się, jak używać go w swoich projektach PyTorch w celu usprawnienia zarządzania danymi i poprawy możliwości wnioskowania:



Krok 1: Skonfiguruj wspólne środowisko IDE

Google Colab to idealny wybór do tworzenia modeli AI z wykorzystaniem frameworka PyTorch. Przejdź do Współpracy strona internetowa i uruchom „ Nowy notatnik ”:







Krok 2: Zaimportuj niezbędne biblioteki

Użyj ' !pypeć ” instalator pakietów dostarczony przez Pythona w celu zainstalowania bibliotek i użycia „ import ”, aby zaimportować je do projektu:

import latarka

import widzenie pochodni. przekształca Jak ts

z PIL import Obraz

import matplotlib. pyplot Jak plt

Opis danego kodu wygląda następująco:



  • Zaimportuj „ latarka ” biblioteka za pomocą „ import ' Komenda.
  • Torchvision.transformuje ” zawiera transformacje dla Random Erasing.
  • PIL ” to biblioteka obrazów Pythona zawierająca funkcje przetwarzania obrazów.
  • matplotlib.pyplot ” służy do wizualizacji obrazów oryginalnych i przekształconych:

Krok 3: Prześlij obraz wejściowy

Prześlij obraz do sekcji Pliki:

Następnie załaduj obraz wejściowy za pomocą „ otwarty() ” metoda modułu „Obraz”:

obraz = Obraz. otwarty ( „a2.jpeg” )

Krok 4: Określ transformację, aby wykonać transformacje

Teraz zdefiniuj „ Losowe kasowanie ” transformator, który przekształci obraz, wybierając jego losowy prostokątny obszar i usuwając jego piksele. Ponadto przekonwertuj obraz wejściowy na czujnik palnika za pomocą „ DoTensora() ”, jeśli jest to obraz PIL, a następnie przekonwertuj go z powrotem na obraz PIL za pomocą metody „ DoPILImage() ”:

przekształcać = ts. Komponować ( [ ts. DoTensora ( ) , ts. Losowe kasowanie ( P = 0,5 , skala = ( 0,02 , 0,33 ) , stosunek = ( 0,3 , 3.3 ) , wartość = 0 , w miejscu = FAŁSZ ) , ts. Do PILImage ( ) ] )

Parametry użyte w powyższym „ Losowe kasowanie transformatora wyjaśniono poniżej:

  • P: Reprezentuje prawdopodobieństwo, że zostanie osiągnięta operacja losowego podnoszenia.
  • skala: Wskazuje zakres wymazanego obszaru obrazu wejściowego.
  • stosunek: Oznacza współczynnik proporcji wymazanego obszaru.
  • wartość: Określa wartość kasowania, która domyślnie wynosi „0”. Jeśli jest to pojedyncza liczba całkowita, usuwa wszystkie piksele, a jeśli jest to krotka posiadająca trzy liczby całkowite, usuwa odpowiednio kanały R, G i B.
  • w miejscu: Jest to wartość „logiczna”, która powoduje, że dany transformator losowego kasowania pozostaje na swoim miejscu. Domyślnie jest to „fałsz”.

Krok 5: Użyj zrozumienia słownika, aby wykonać obrazy wyjściowe

Użyj koncepcji rozumienia słownika, aby wykonać cztery obrazy wyjściowe:

obrazy = [ przekształcać ( obraz ) Do _ W zakres ( 4 ) ]

Krok 6: Zaprezentuj cztery obrazy wyjściowe

Na koniec wyświetl cztery obrazy wyjściowe za pomocą poniższego bloku kodu:

Figa = plt. postać ( rozmiar fig = ( 7 , 4 ) )

wydziwianie , kol = 2 , 2

Do J W zakres ( 0 , tylko ( obrazy ) ) :

Figa. dodaj_podwątek ( wydziwianie , kol , j+ 1 )

plt. pokażę ( obrazy [ J ] )

plt. xtyks ( [ ] )

plt. tyka ( [ ] )

plt. pokazywać ( )

Powyższy opis kodu wygląda następująco:

  • Aplikować ' plt.figura() ” metoda kreślenia czterech obrazów o określonej szerokości i wysokości.
  • Następnie określ określone wiersze i kolumny, aby dostosować cztery obrazy.
  • Następnie zainicjuj pętlę „for”, która zastosuje „ wątek poboczny() ” do zdefiniowania wątku cząstkowego, metoda „show()” do pokazania obrazów oraz metoda „ plt.xticks() ' jak również ' plt.yticks() ”, aby ustawić bieżącą lokalizację znacznika oraz etykiety osi X i Y.
  • Na koniec użyj opcji „ plt.show() ” metoda drukowania obrazów do wydruku:

Notatka : użytkownicy mogą uzyskać dostęp do naszego Notatnika Colab za pomocą dostarczonego narzędzia połączyć .

Wskazówka profesjonalna

Jednym z kluczowych zastosowań „ Losowe usuwanie ” metodą w projektach PyTorch jest bezpieczeństwo. Można go używać do usuwania pikseli z wrażliwych obrazów, na przykład zawierających tajemnice handlowe lub inne wartościowe treści. Specyficzna losowa funkcja tego usuwania będzie znana tylko oryginalnemu użytkownikowi i tylko on będzie mógł przywrócić usunięte obrazy do ich oryginalnej wersji.

Powodzenie! Pokazaliśmy, jak działa metoda losowego wymazywania w PyTorch.

Wniosek

Losowe usuwanie ” w PyTorch polega na usuwaniu losowych pikseli z obrazu i naśladowaniu rzeczywistego scenariusza, aby lepiej wytrenować model. Dzięki temu model będzie lepiej radził sobie z różnymi typami danych w celu wyciągania wniosków dotyczących jakości z niekompletnych danych. Pokazaliśmy, jak używać „ Losowe usuwanie ” w PyTorch.