Słowniczek systemów uczących się: modele graficzne

Ta strona zawiera terminy z glosariusza modeli obrazów. Aby zobaczyć wszystkie terminy ze glosariusza, kliknij tutaj.

O

rzeczywistość rozszerzona

#image

Technologia, która nakłada obraz wygenerowany komputerowo na widok użytkownika w świecie rzeczywistym, co pozwala uzyskać widok złożony.

autokoder

#language
#image

System, który uczy się wyodrębniać najważniejsze informacje z danych wejściowych. Autokodery to połączenie kodera i dekodera. Autokodery bazują na tym 2-etapowym procesie:

  1. Koder mapuje dane wejściowe na (zwykle) stratny format mniejwymiarowy (średniozaawansowany).
  2. Dekoder buduje stratną wersję pierwotnych danych wejściowych, mapując niższy format na bardziej standardowy.

Autokodery są w pełni trenowane przez dekoder próbujący jak najdokładniej odtworzyć pierwotne dane wejściowe z formatu pośredniego kodera. Format pośredni jest mniejszy (niższe wymiary) niż format oryginalny, więc autokoder musi nauczyć się, jakie informacje wejściowe są niezbędne, a wyniki nie będą idealnie identyczne z danymi wejściowymi.

Na przykład:

  • Jeśli dane wejściowe mają charakter graficzny, to niedokładna kopia jest podobna do oryginalnej grafiki, ale zmodyfikowana. Być może kopia niedokładna usunie szum z oryginalnej grafiki lub uzupełni brakujące piksele.
  • Jeśli dane wejściowe to tekst, autokoder wygeneruje nowy tekst, który naśladuje (ale nie jest taki sam) tekst oryginalny.

Zobacz też różne autokodery.

model autoregresywny

#language
#image
#generatywna AI

model, który ustala prognozę na podstawie własnych wcześniejszych prognoz. Na przykład automatycznie regresywne modele językowe prognozują następny token na podstawie wcześniej prognozowanych tokenów. Wszystkie duże modele językowe, które opierają się na Transformerze, są autoregresywne.

W przeciwieństwie do tego modele graficzne oparte na GAN zwykle nie podlegają automatycznej regresji, ponieważ generują obraz w ramach pojedynczego przejścia do przodu, a nie iteracyjnie. Jednak niektóre modele generowania obrazów autoregresywne, ponieważ generują obrazy krok po kroku.

B

ramka ograniczająca

#image

Na zdjęciu współrzędne (x, y) prostokąta wokół wybranego obszaru, np. psa na zdjęciu poniżej.

Zdjęcie psa siedzącego na sofie. Ciało psa można znaleźć w zielonej ramce ze współrzędnymi w lewym górnym rogu (275, 1271) i w prawym dolnym rogu (2954, 2761).

C

splot

#image

W matematyce, mówiąc nieformalnie, jest to kombinacja 2 funkcji. W systemach uczących się splot łączy filtr splotowy z macierzyą wejściową w celu trenowania wag.

Termin „splot” w systemach uczących się odnosi się często do operacji konwolucyjnych lub warstwy splotowej.

Bez splotów algorytm systemów uczących się musiałby nauczyć się oddzielnej wagi dla każdej komórki w dużym tenisorze. Na przykład algorytm systemów uczących się trenowany na obrazach o wymiarach 2K × 2K byłby wymuszony do znalezienia osobnych wag o rozmiarze 4 mln. Dzięki konwolucjom algorytm systemów uczących się musi znaleźć wagi tylko dla każdej komórki w filtrze konwolucyjnym, co znacznie zmniejsza ilość pamięci potrzebnej do wytrenowania modelu. Po zastosowaniu filtra splotowego jest on po prostu replikowany w komórkach w taki sposób, że każda z nich jest mnożona przez filtr.

filtr splotowy

#image

Jeden z 2 uczestników operacji konwolucyjnej. (Drugi aktor to wycinek macierzy wejściowej). Filtr splotowy to macierz, która ma taką samą ranking jak macierz wejściową, ale mniejszy kształt. Na przykład na podstawie macierzy wejściowej 28 x 28 filtr może być dowolną macierz 2D mniejszą niż 28 x 28.

Podczas manipulacji fotograficznych wszystkie komórki w filtrze splotowym mają zwykle stały wzorzec zerowania i jedynki. W systemach uczących się filtry splotowe są zwykle przeprowadzane za pomocą liczb losowych, a następnie trenuje idealne wartości.

warstwa splotowa

#image

Warstwa głębokiej sieci neuronowej, w której filtr splotowy przechodzi wzdłuż matrycy wejściowej. Przyjrzyj się np. temu filtrowi splotowemu 3 x 3:

macierz 3 x 3 z tymi wartościami: [[0,1,0], [1,0,1], [0,1,0]];

Animacja poniżej przedstawia warstwę splotową składającą się z 9 operacji splotowych obejmujących macierz wejściową 5 x 5. Zwróć uwagę, że każda operacja splotowa działa na innym wycinku macierzy wejściowej 3 x 3. Otrzymana macierz 3 x 3 (po prawej) składa się z wyników 9 operacji konwolucyjnych:

Animacja pokazująca 2 matryce. Pierwsza macierz 5 x 5: [[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179],
          Druga macierz 3 x 3: [[181 303 618], [115 338 605], [169 351 560]].
          Drugą macierz jest obliczana przez zastosowanie filtra splotowego [[0, 1, 0], [1, 0, 1], [0, 1, 0]] w różnych podzbiorach 3 x 3 macierzy 5 x 5.

splotowa sieć neuronowa

#image

Sieć neuronowa, w której co najmniej 1 warstwa jest warstwą splotową. Typowa splotowa sieć neuronowa składa się z kilku warstw:

Splotowe sieci neuronowe z powodzeniem sprawdzają się w różnych rodzajach problemów, np. w rozpoznawaniu obrazów.

operacja splotowa

#image

Oto dwuetapowe działanie matematyczne:

  1. Mnożenie filtra splotowego i wycinek macierzy wejściowej według elementów. (Wycinek macierzy wejściowej ma tę samą pozycję i rozmiar co filtr splotowy).
  2. Suma wszystkich wartości w wynikowej macierzy iloczynów.

Weźmy na przykład taką macierz wejściową 5 x 5:

Macierz 5 x 5: [[128,97,53,201,198], [35,22,25,200,195],
          [37,24,28,197,182], [33,28,92,195,179], [31,4]

Teraz wyobraźmy sobie taki filtr splotowy 2 x 2:

Macierz 2 x 2: [[1, 0], [0, 1]]

Każda operacja splotowa obejmuje pojedynczy wycinek macierzy wejściowej 2 x 2. Załóżmy np., że używamy wycinka 2 x 2 w lewym górnym rogu macierzy wejściowej. Operacja splotu na tym wycinku wygląda więc tak:

Stosuję filtr splotkowy [[1, 0], [0, 1]] w lewym górnym rogu macierzy danych wejściowych, czyli [[128,97], [35,22]].
          Filtr splotowy pozostawia wartości 128 i 22 bez zmian, ale wyzeruje liczby 97 i 35. W związku z tym operacja konwolucyjna otrzymuje wartość 150 (128+22).

Warstwa splotowa składa się z serii operacji splotowych, z których każda działa na innym wycinku macierzy wejściowej.

D

rozszerzanie danych

#image

Sztuczne zwiększanie zakresu i liczby przykładów trenowania przez przekształcanie dotychczasowych przykładów w dodatkowe przykłady. Załóżmy na przykład, że obrazy są jedną z funkcji, ale zbiór danych nie zawiera wystarczającej liczby przykładów obrazów, aby model mógł poznać przydatne powiązania. Najlepiej dodać do zbioru danych wystarczającą liczbę obrazów oznaczonych etykietami, aby umożliwić prawidłowe trenowanie modelu. Jeśli to niemożliwe, rozszerzanie danych może obracać, rozciągać i odzwierciedlać każdy obraz, co pozwala uzyskać wiele wariantów oryginalnego zdjęcia, co może zapewnić wystarczającą ilość danych oznaczonych etykietami, aby umożliwić świetne trenowanie.

rozproszona splotowa sieć neuronowa (sepCNN)

#image

Architektura konwolucyjnej sieci neuronowej oparta na modelu Inception, w której moduły Incepcji są zastępowane głęboko rozdzielanymi splotami. Inna nazwa to Xception.

Splot rozdzielający się w głąb (w skrócie do rozdzielania splotu) standardowy splot 3D na 2 oddzielne operacje splotowe, które są bardziej wydajne pod względem obliczeniowym: pierwszy splot głębinowy – o głębokości 1 (n × n × 1), a potem 2 x 1 × długość i szerokości 1 × szeroki kąt.

Więcej informacji znajdziesz w artykule Xception: Deep Learning with Depthwise Separables Convolutions.

Downsampling

#image

Termin przeciążony, który może oznaczać:

  • Zmniejszenie ilości informacji w funkcji, aby umożliwić efektywniejsze trenowanie modelu. Przykładem może być użycie przed wytrenowaniem modelu rozpoznawania obrazów i spróbkowanie obrazów w wysokiej rozdzielczości do formatu o niższej rozdzielczości.
  • Szkolenie na nieproporcjonalnie niskim odsetku przykładów nadmiernie reprezentowanych klas w celu ulepszenia modelu trenowania modeli w klasach niedostatecznie reprezentowanych. Na przykład w zbiorze danych o niezrównoważonym klasie modele często uczą się dużo o klasie większości, a za mało na temat klasy mniejszości. Redukcja pozwala zrównoważyć intensywność szkoleń dotyczących klas większości i mniejszości.

F

dostrajanie

#language
#image
#generatywna AI

Drugie karnet treningowy, który jest wykonywany na podstawie wstępnie wytrenowanego modelu, aby doprecyzować jego parametry pod kątem konkretnego przypadku użycia. Na przykład pełna sekwencja trenowania w przypadku niektórych dużych modeli językowych wygląda tak:

  1. Wstępne szkolenie: wytrenuj duży model językowy na dużym ogólnym zbiorze danych, takim jak wszystkie anglojęzyczne strony w Wikipedii.
  2. Dostrajanie: wytrenuj już wytrenowany model tak, aby wykonał określone zadanie, np. odpowiadał na zapytania medyczne. Dostrajanie obejmuje zwykle setki lub tysiące przykładów dotyczących konkretnego zadania.

Kolejny przykład to pełna sekwencja trenowania w przypadku dużego modelu obrazu:

  1. Przedtrenowanie: wytrenuj duży model obrazów na dużym, ogólnym zbiorze danych obrazów, takim jak wszystkie obrazy w Wikimedia Commons.
  2. Dostrajanie: wytrenuj już wytrenowany model tak, aby wykonał określone zadanie, takie jak generowanie obrazów orek.

Dostrajanie może obejmować dowolną kombinację tych strategii:

  • Modyfikowanie wszystkich parametrów wytrenowanego modelu. Czasami nazywa się to pełnym dostrajeniem.
  • Modyfikowanie tylko niektórych dotychczasowych parametrów wytrenowanego modelu (zwykle warstw najbliżej warstwy wyjściowej), pozostawiając niezmienione pozostałe parametry (zwykle warstwy są najbliżej warstwy wejściowej). Zobacz dostrajanie z uwzględnieniem parametrów.
  • Dodanie większej liczby warstw, zwykle nad istniejącymi warstwami najbliżej warstwy wyjściowej.

Dostrajanie to forma nauki transferowej. W związku z tym dostrajanie może korzystać z innej funkcji straty lub innego typu modelu niż te używane do trenowania już wytrenowanego modelu. Możesz na przykład dostroić wytrenowany model dużego obrazu, aby uzyskać model regresji, który zwraca liczbę ptaków na obrazie wejściowym.

Porównaj dostrajanie z tymi terminami:

G

generatywna AI

#language
#image
#generatywna AI

Rozwijające się pole, które nie jest formalne. Mimo to większość ekspertów zgadza się, że modele generatywnej AI mogą tworzyć („generować”) treści, które:

  • złożone
  • spójne
  • oryginał

Na przykład generatywny model AI może tworzyć zaawansowane wypracowania lub obrazy.

Niektóre wcześniejsze technologie, w tym LSTM i RNN, również mogą generować oryginalne i spójne treści. Niektórzy eksperci postrzegają te wcześniejsze technologie jako generatywną AI, a inni uważają, że prawdziwa generatywna AI wymaga bardziej złożonych wyników niż te, które można uzyskać dzięki nim.

Porównaj to z systemami uczącymi się prognozowanymi.

I

rozpoznawanie obrazów

#image

Proces, który klasyfikuje obiekty, wzorce lub koncepcje na obrazie. Rozpoznawanie obrazów jest też nazywane klasyfikacją obrazów.

Więcej informacji znajdziesz w artykule ML Practicum: Klasyfikacja obrazów.

przecięcie ponad sumą (IoU)

#image

Miejsce przecięcia dwóch zbiorów podzielone przez ich sumę. W zadaniach wykrywania obrazów przez systemy uczące się współczynnik IoU służy do pomiaru dokładności prognozowanej ramki ograniczającej modelu w odniesieniu do ramki ograniczającej ground truth. W tym przypadku współczynnik podobieństwa danych dla 2 ramek to stosunek między pokrywającym się obszarem a powierzchnią całkowitą, przy czym jego wartości mieszczą się w zakresie od 0 (brak nakładania się przewidywanej ramki ograniczającej dane podstawowe) do 1 (przewidywana ramka ograniczająca i ramka ograniczająca dane podstawowe mają dokładnie takie same współrzędne).

Na przykład na tej ilustracji:

  • Prognozowana ramka ograniczająca (współrzędne określające miejsce, w którym model przewiduje, gdzie na obrazie znajduje się nocna stolik) jest obrysowana kolorem fioletowym.
  • Ramka ograniczająca dane podstawowe (współrzędne określające miejsce, w którym znajduje się noc na obrazie) jest zaznaczona na zielono.

Van Gogh maluje sypialnię Vincenta w Arles z 2 różnymi ramkami ograniczającymi wokół nocnego stołu obok łóżka. Ramka ograniczająca dane podstawowych (ground truth) (na zielono) idealnie otacza tabelę nocną. Prognozowana ramka ograniczająca (kolor fioletowy) jest odsunięta o 50% w dół i na prawo od ramki ograniczającej dane podstawowe (ground truth). Obejmuje ona prawą dolną ćwiartkę nocnej tabeli, ale pomija resztę tabeli.

W tym przypadku przecięcie ramek ograniczających na potrzeby prognozowania i danych podstawowych (ground truth) (poniżej po lewej) wynosi 1, a suma ramek ograniczających na potrzeby prognozowania i danych podstawowych (ground truth) (poniżej po prawej) wynosi 7, więc wartość IoU wynosi \(\frac{1}{7}\).

Ten sam obraz jak powyżej, ale z każdą ramką ograniczającą podzieloną na 4 ćwiartki. Łącznie jest 7 ćwiartek, ponieważ kwadrant w prawym dolnym rogu ramki ograniczającej dane podstawowe i lewy górny kwadrant przewidywanej ramki ograniczającej nakładają się na siebie. Pokrywający się fragment (wyróżniony na zielono) reprezentuje skrzyżowanie i ma obszar 1. Ten sam obraz jak powyżej, ale z każdą ramką ograniczającą podzieloną na 4 ćwiartki. Łącznie jest 7 ćwiartek, ponieważ kwadrant w prawym dolnym rogu ramki ograniczającej dane podstawowe i lewy górny kwadrant przewidywanej ramki ograniczającej nakładają się na siebie.
          Całe wnętrze otoczone oboma ramkami ograniczającymi (wyróżnionymi na zielono) stanowi całość i ma pole powierzchni 7.

K

najważniejsze punkty

#image

Współrzędne określonych cech na obrazie. Na przykład w przypadku modelu rozpoznawania obrazów, który odróżnia gatunki kwiatów, kluczowe punkty mogą być środkiem płatka, łodygą, prążkiem itd.

L

punkty orientacyjne

#image

Synonim terminu kluczowe punkty.

P

MNIST,

#image

Zbiór danych należący do domeny publicznej skompilowany przez LeCun, Cortesa i Burgesa zawierający 60 tys. obrazów, z których każdy pokazuje, jak człowiek ręcznie napisał określoną cyfrę w okresie 0–9. Każdy obraz jest przechowywany w postaci tablicy liczb całkowitych 28 x 28, gdzie każda liczba całkowita to wartość w skali szarości z zakresu od 0 do 255 włącznie.

MNIST to kanoniczny zbiór danych na potrzeby systemów uczących się, często używany do testowania nowych metod działania systemów uczących się. Więcej informacji znajdziesz na stronie baza danych MNIST cyfr odręcznych.

P

łączenie

#image

Zmniejszenie matrycy (lub matrycy) utworzonej przez wcześniejszą warstwę splotową do jej mniejszej. Zbieranie danych obejmuje zwykle wartość maksymalną lub średnią w obrębie basenu. Załóżmy np., że mamy taką macierz 3 x 3:

macierz 3 x 3 [[5,3,1], [8,2,5], [9,4,3]].

Operacja łączenia, podobnie jak operacja splotowa, dzieli macierz na wycinki, a następnie przesuwa operację splotową według kroków. Załóżmy np., że operacja łączenia dzieli macierz splotową na wycinki o wymiarach 2 x 2 z krokiem 1 x 1. Jak widać na poniższym diagramie, wykonywane są 4 operacje łączenia. Załóżmy, że każda operacja łączenia wybiera maksymalną wartość z 4 w tym wycinku:

Macierz wejściowa to 3 x 3 z wartościami: [[5,3,1], [8,2,5], [9,4,3]].
          Macierz podrzędna 2 x 2 w lewym górnym rogu macierzy wejściowej to [[5,3], [8,2]], więc operacja łączenia w lewym górnym rogu generuje wartość 8 (czyli maksymalną wartość 5, 3, 8 i 2). Macierz podrzędna 2 x 2 w prawym górnym rogu macierzy wejściowej to [[3,1], [2,5]], więc operacja łączenia w prawym górnym rogu generuje wartość 5. Macierz podrzędna 2 x 2 w lewym dolnym rogu macierzy wejściowej to [[8,2], [9,4]], więc operacja łączenia w lewym dolnym rogu zwraca wartość 9. Macierz podrzędna 2 x 2 w prawym dolnym rogu macierzy wejściowej to [[2,5], [4,3]], więc operacja łączenia w prawym dolnym rogu zwraca wartość 5. Podsumowując, operacja łączenia powoduje wygenerowanie macierzy 2 x 2 [[8,5], [9,5]].

Łączenie pomaga wyegzekwować niezmienność translacji w macierzy danych wejściowych.

Łączenie aplikacji związanych z widocznością jest bardziej znane jako łączenie przestrzenne. W przypadku aplikacji ciągów czasowych łączenie danych jest zwykle określane jako tymczasowe pulowanie. Ogólnie rzecz biorąc, łączenie danych jest często nazywane podpróbkowaniem lub podpróbkowaniem.

wytrenowany model

#language
#image
#generatywna AI

Modele lub komponenty modelu (np. wektor do umieszczania), które zostały już wytrenowane. Czasami umieszczasz wytrenowane wektory dystrybucyjne do sieci neuronowej. Innym razem model będzie trenować same wektory dystrybucyjne i nie korzystać z wytrenowanych wcześniej wektorów dystrybucyjnych.

Termin wstępnie wytrenowany model językowy odnosi się do dużego modelu językowego, który został poddany wstępnym trenowaniu.

przedtrenowanie

#language
#image
#generatywna AI

Wstępne trenowanie modelu na dużym zbiorze danych. Niektóre wytrenowane modele to niezdarne giganty, które trzeba zwykle dopracować przez dodatkowe szkolenie. Eksperci ds. systemów uczących się mogą na przykład wstępnie wytrenować duży model językowy na ogromnym zbiorze danych tekstowych, takim jak wszystkie strony w języku angielskim w Wikipedii. Po wstępnym trenowaniu model można następnie doprecyzować za pomocą jednej z tych metod:

R

niewariancja rotacji

#image

W przypadku problemu z klasyfikacją obrazów algorytm musi umieć klasyfikować obrazy nawet wtedy, gdy zmieni się ich orientacja. Na przykład algorytm może nadal rozpoznawać rakietę tenisową, niezależnie od tego, czy jest skierowana w górę, w bok czy w dół. Pamiętaj, że niezgodność w rotacji nie zawsze jest pożądana. Na przykład cyfra 9 nie powinna być sklasyfikowana jako 9.

Zobacz też niezmienność translacji i niezgodność rozmiaru.

S

niewariacja rozmiaru

#image

W przypadku problemu z klasyfikacją obrazów algorytm musi skutecznie klasyfikować obrazy nawet wtedy, gdy zmieni się ich rozmiar. Na przykład algorytm nadal może zidentyfikować kota niezależnie od tego, czy wykorzysta 2 mln pikseli, czy 200 tys. pikseli. Pamiętaj, że nawet najlepsze algorytmy klasyfikacji obrazów mają praktyczne ograniczenia dotyczące niezmienności rozmiaru. Na przykład algorytm (lub człowiek) raczej nie sklasyfikuje poprawnie zdjęcia kota zajmującego zaledwie 20 pikseli.

Patrz też niewariancja translacyjna i niewariancja rotacji.

pulowanie przestrzenne

#image

Patrz: pulacja.

stride

#image

W operacji splotowej lub w grupie splotowej delta każdego wymiaru kolejnej serii wycinków wejściowych. Na przykład ta animacja przedstawia krok (1:1) podczas operacji splotowej. Dlatego następny wycinek danych wejściowych rozpoczyna się o jedną pozycję na prawo od poprzedniego wycinka danych wejściowych. Gdy operacja dotrze do prawej krawędzi, kolejny wycinek zostanie przesunięty w lewą stronę, ale tylko w jednym miejscu.

Matryca wejściowej 5 x 5 i filtr splotowy 3 x 3. Ponieważ krok ma wartość (1:1), filtr splotowy zostanie zastosowany 9 razy. Pierwszy wycinek splotowy ocenia macierz podrzędną 3 x 3 w lewym górnym rogu macierzy wejściowej. Drugi wycinek ocenia środkową macierz podrzędną 3 x 3. Trzeci wycinek splotowy ocenia macierz podrzędną 3 x 3 w prawym górnym rogu.  Czwarty wycinek ocenia macierz podrzędną 3 x 3 środkową.
     Piąty wycinek ocenia środkową macierz podrzędną 3 x 3. Szósty wycinek ocenia macierz podrzędną 3 x 3 pośrodku prawego rogu. Siódmy wycinek ocenia macierz podrzędną 3 x 3 w lewym dolnym rogu.  Ósmy wycinek ocenia dolną, środkową macierz podrzędną 3 x 3. Dziewiąty wycinek ocenia macierz podrzędną 3 x 3 w prawym dolnym rogu.

Poprzedni przykład przedstawia dwuwymiarowy krok. Jeśli macierz wejściowa jest trójwymiarowa, krok będzie również trójwymiarowy.

podpróbkowanie

#image

Patrz: pulacja.

T

temperatura

#language
#image
#generatywna AI

Hiperparametr, który kontroluje stopień losowości danych wyjściowych modelu. Wyższe temperatury oznaczają więcej losowych danych wyjściowych, a niższe – mniej losowych danych wyjściowych.

Wybór najlepszej temperatury zależy od konkretnej aplikacji i preferowanych właściwości danych wyjściowych modelu. Na przykład podnosisz temperaturę przy tworzeniu aplikacji, która generuje dane wyjściowe kreacji. I na odwrót, należałoby obniżyć temperaturę podczas tworzenia modelu, który klasyfikuje obrazy lub tekst, aby zwiększyć dokładność i spójność modelu.

Funkcja softmax jest często używana do określania temperatury.

niewariancja translacyjna

#image

W przypadku problemu z klasyfikacją obrazów algorytm musi skutecznie klasyfikować obrazy nawet wtedy, gdy zmieni się pozycja obiektów na obrazie. Na przykład algorytm nadal może zidentyfikować psa, niezależnie od tego, czy znajdzie się on w środkowej części kadru, czy po jego lewej stronie.

Patrz też niezmienność rozmiaru i niewariancja rotacji.