Modele i platformy AI
DiffSeg: Zaawansowana Metoda Segmentacji Zero-Shot z Użyciem Stabilnej Dyfuzji
Jednym z podstawowych wyzwań w modelach opartych na widzeniu komputerowym jest generowanie wysokiej jakości masek segmentacyjnych. Ostatnie postępy w dużych, nadzorowanych treningach umożliwiły segmentację zero-shot na różnych stylach obrazów. Dodatkowo, trening nienadzorowany uprościł segmentację bez potrzeby obszernych adnotacji. Mimo tych rozwojów, budowa ramy widzenia komputerowego zdolnej do segmentacji dowolnego obiektu w ustawieniu zero-shot bez adnotacji pozostaje złożonym zadaniem. Segmentacja semantyczna, podstawowa koncepcja w modelach widzenia komputerowego, polega na podzieleniu obrazu na mniejsze regiony o jednolitych semantykach. Technika ta stanowi podstawę dla wielu zadań downstream, takich jak obrazowanie medyczne, edycja obrazu, jazda autonomiczna i wiele innych.
Aby przyspieszyć rozwój modeli widzenia komputerowego, niezwykle ważne jest, aby segmentacja obrazu nie była ograniczona do ustalonego zestawu danych z ograniczoną liczbą kategorii. Zamiast tego, powinna służyć jako wszechstronna zadanie podstawowe dla różnych innych zastosowań. Niemniej jednak, wysoki koszt zbierania etykiet na poziomie pikseli stanowi znaczące wyzwanie, ograniczające postępy metod segmentacji zero-shot i nadzorowanej, które wymagają braku adnotacji i nie mają wcześniejszego dostępu do celu. Artykuł ten omówi, jak warstwy self-attention w stabilnych modelach dyfuzji mogą ułatwić stworzenie modelu zdolnego do segmentacji dowolnego wejścia w ustawieniu zero-shot, nawet bez odpowiednich adnotacji. Te warstwy self-attention rozumieją pojęcia obiektów, które są uczone przez wstępnie wyuczony stabilny model dyfuzji.
DiffSeg: Zaawansowana Metoda Segmentacji Zero-Shot
Segmentacja semantyczna jest procesem, który dzieli obraz na różne sekcje, z których każda ma podobne semantyki. Technika ta stanowi podstawę dla wielu zadań downstream. Tradycyjnie, zadania widzenia komputerowego zero-shot opierały się na nadzorowanej segmentacji semantycznej, wykorzystującej duże zestawy danych z adnotowanymi i oznaczonymi kategoriami. Niemniej jednak, wdrożenie nienadzorowanej segmentacji semantycznej w ustawieniu zero-shot pozostaje wyzwaniem. Chociaż tradycyjne metody nadzorowane są skuteczne, ich koszt etykietowania na poziomie pikseli jest często zabroniony, co podkreśla potrzebę opracowania metod segmentacji nienadzorowanej w mniej restrykcyjnym ustawieniu zero-shot, w którym model nie wymaga adnotowanych danych ani wcześniejszej wiedzy o danych.
Aby rozwiązać ten problem, DiffSeg wprowadza nową strategię post-processingową, wykorzystując możliwości ramy Stabilnej Dyfuzji do budowy ogólnego modelu segmentacji, który może wykonywać transfer zero-shot na dowolnym obrazie. Ramy Stabilnej Dyfuzji wykazały swoją skuteczność w generowaniu obrazów o wysokiej rozdzielczości na podstawie warunków promptu. Dla wygenerowanych obrazów, te ramy mogą tworzyć maski segmentacyjne przy użyciu odpowiednich tekstowych promptów, zwykle zawierających tylko dominujące obiekty pierwszego planu.
W przeciwieństwie do tego, DiffSeg jest innowacyjną metodą post-processingową, która tworzy maski segmentacyjne, wykorzystując tensory uwagi z warstw self-attention w modelu dyfuzji. Algorytm DiffSeg składa się z trzech kluczowych składników: iteracyjnego łączenia uwagi, agregacji uwagi i tłumienia nie-maksymalnego, jak pokazano na poniższym obrazie.

Algorytm DiffSeg zachowuje informacje wizualne na różnych rozdzielczościach, agregując 4-wymiarowe tensory uwagi ze spójnością przestrzenną i wykorzystując proces łączenia iteracyjnego przez pobieranie punktów kotwiczących. Te punkty kotwiczące służą jako punkt startowy dla łączenia masek uwagi z kotwicami o tym samym obiekcie, które są ostatecznie wchłaniane. Rama DiffSeg kontroluje proces łączenia z pomocą metody rozbieżności KL do pomiaru podobieństwa między dwiema mapami uwagi.
W porównaniu z metodami segmentacji nienadzorowanej opartymi na klastryzacji, deweloperzy nie muszą określać liczby klastrów z wyprzedzeniem w algorytmie DiffSeg, a nawet bez wcześniejszej wiedzy, algorytm DiffSeg może generować segmentację bez użycia dodatkowych zasobów. Ogólnie, algorytm DiffSeg to nowa metoda segmentacji nienadzorowanej i zero-shot, która wykorzystuje wstępnie wyuczony model Stabilnej Dyfuzji i może segmentować obrazy bez dodatkowych zasobów lub wcześniejszej wiedzy.
DiffSeg: Podstawowe Pojęcia
DiffSeg to nowy algorytm, który opiera się na wiedzy modeli dyfuzji, segmentacji nienadzorowanej i segmentacji zero-shot.
Modele Dyfuzji
Algorytm DiffSeg opiera się na wiedzy z modeli dyfuzji. Modele dyfuzji są jednym z najpopularniejszych ram generatywnych dla modeli widzenia komputerowego i uczą procesu dyfuzji do przodu i do tyłu od obrazu zaszumionego izotropowo na obraz. Stabilna Dyfuzja jest najpopularniejszą odmianą modeli dyfuzji i jest wykorzystywana do wykonywania szerokiego zakresu zadań, w tym segmentacji nadzorowanej, klasyfikacji zero-shot, dopasowania semantycznego, segmentacji wydajnej pod względem etykiet i segmentacji otwartej. Niemniej jednak, jedynym problemem z modelami dyfuzji jest to, że polegają one na wysokowymiarowych cechach wizualnych do wykonywania tych zadań i często wymagają dodatkowego treningu, aby w pełni wykorzystać te cechy.
Segmentacja Nienadzorowana
Algorytm DiffSeg jest ściśle związany z segmentacją nienadzorowaną, nowoczesną praktyką AI, która ma na celu generowanie gęstych masek segmentacyjnych bez użycia adnotacji. Niemniej jednak, aby osiągnąć dobre wyniki, modele segmentacji nienadzorowanej wymagają pewnego wcześniejszego treningu nienadzorowanego na zestawie danych docelowych. Modele segmentacji nienadzorowanej oparte na AI można sklasyfikować na dwie kategorie: klastryzacja przy użyciu wstępnie wyuczonych modeli i klastryzacja oparta na niezmiennictwie. W pierwszej kategorii, ramy wykorzystują dyskryminacyjne cechy nauczone przez wstępnie wyuczony model do generowania masek segmentacyjnych, podczas gdy ramy należące do drugiej kategorii wykorzystują ogólny algorytm klastryzacji, który optymalizuje wzajemną informację między dwoma obrazami w celu segmentacji obrazów w klastry semantyczne i uniknięcia zdegenerowanej segmentacji.
Segmentacja Zero-Shot
Algorytm DiffSeg jest ściśle związany z ramami segmentacji zero-shot, metodą, która ma zdolność segmentacji dowolnego obiektu bez wcześniejszego treningu lub wiedzy o danych. Modele segmentacji zero-shot wykazały wyjątkowe zdolności transferu zero-shot w ostatnich czasach, chociaż wymagają pewnego tekstu wejściowego i promptów. W przeciwieństwie do tego, algorytm DiffSeg wykorzystuje model dyfuzji do generowania segmentacji bez zapytań i syntezy wielu obrazów oraz bez znajomości zawartości obiektu.
DiffSeg: Metoda i Architektura
Algorytm DiffSeg wykorzystuje warstwy self-attention w wstępnie wyuczonej stabilnej ramie dyfuzji do generowania wysokiej jakości zadań segmentacyjnych.
Model Stabilnej Dyfuzji
Stabilna Dyfuzja jest jednym z podstawowych pojęć w ramie DiffSeg. Stabilna Dyfuzja jest ramą generatywną AI i jednym z najpopularniejszych modeli dyfuzji. Jedną z głównych cech modelu dyfuzji jest przekaz do przodu i do tyłu. W przekazie do przodu, niewielka ilość szumu Gaussa jest dodawana do obrazu iteracyjnie na każdym kroku czasowym, aż obraz staje się izotropowym obrazem szumu Gaussa. Z drugiej strony, w przekazie do tyłu, model dyfuzji iteracyjnie usuwa szum w izotropowym obrazie szumu Gaussa, aby odzyskać oryginalny obraz bez szumu Gaussa.
Rama Stabilnej Dyfuzji wykorzystuje kodujący-dekodujący i architekturę U-Net z warstwą uwagi, w której wykorzystuje kodujący do kompresji obrazu do przestrzeni latentnej o mniejszych wymiarach przestrzennych i dekodujący do dekompresji obrazu. Architektura U-Net składa się ze stosu modułowych bloków, z których każdy składa się z jednego z dwóch składników: warstwy Transformer lub warstwy ResNet.
Składniki i Architektura
Warstwy self-attention w modelach dyfuzji grupują informacje o obiektach w postaci map uwagi przestrzennej, a DiffSeg jest nową metodą post-processingową do łączenia tensorów uwagi w ważną maskę segmentacyjną, z potokiem składającym się z trzech głównych składników: agregacji uwagi, tłumienia nie-maksymalnego i iteracyjnego łączenia uwagi.
Agregacja Uwagi
Dla obrazu wejściowego, który przechodzi przez warstwy U-Net i kodujący, model Stabilnej Dyfuzji generuje łącznie 16 tensorów uwagi, z 5 tensorami dla każdej z wymiarów. Głównym celem generowania 16 tensorów jest agregacja tych tensorów uwagi z różnymi rozdzielczościami w tensor o możliwie najwyższej rozdzielczości. Aby to osiągnąć, algorytm DiffSeg traktuje 4 wymiary inaczej niż jeden od drugiego.
Spośród czterech wymiarów, ostatnie 2 wymiary w tensorach uwagi mają różne rozdzielczości, ale są spójne przestrzennie, ponieważ 2-wymiarowa mapa przestrzenna ramy DiffSeg odpowiada korelacji między lokalizacjami a lokalizacjami przestrzennymi. W związku z tym, rama DiffSeg pobiera te dwa wymiary wszystkich map uwagi do najwyższej rozdzielczości, czyli 64 x 64. Z drugiej strony, pierwsze 2 wymiary wskazują odniesienie lokalizacyjne map uwagi, jak pokazano na poniższym obrazie.

Ponieważ te wymiary odnoszą się do lokalizacji map uwagi, mapy uwagi muszą być agregowane odpowiednio. Dodatkowo, aby upewnić się, że zagródka uwagi ma ważną dystrybucję, rama normalizuje dystrybucję po agregacji, z każdą mapą uwagi przypisaną wagą proporcjonalną do jej rozdzielczości.
Iteracyjne Łączenie Uwagi
Podczas gdy głównym celem agregacji uwagi było obliczenie tensora uwagi, głównym celem jest łączenie map uwagi w tensorze w stos propozycji obiektów, z których każdy zawiera kategorię “rzeczy” lub aktywację pojedynczego obiektu. Proponowanym rozwiązaniem jest wdrożenie algorytmu K-Means na ważnej dystrybucji tensorów w celu znalezienia klastrów obiektów. Niemniej jednak, użycie algorytmu K-Means nie jest optymalnym rozwiązaniem, ponieważ wymaga określenia liczby klastrów z wyprzedzeniem. Dodatkowo, wdrożenie algorytmu K-Means może skutkować różnymi wynikami dla tego samego obrazu, ponieważ jest to zależne od inicjacji. Aby pokonać to przeszkodę, rama DiffSeg proponuje wygenerowanie siatki próbkowania w celu utworzenia propozycji przez łączenie map uwagi iteracyjnie.
Tłumienie Nie-Maksymalne
Poprzedni krok iteracyjnego łączenia uwagi daje listę propozycji obiektów w postaci mapy prawdopodobieństwa lub mapy uwagi, z których każda zawiera aktywację obiektu. Rama wykorzystuje tłumienie nie-maksymalne, aby przekształcić listę propozycji obiektów w ważną maskę segmentacyjną, a proces ten jest skutecznym podejściem, ponieważ każdy element na liście jest już mapą dystrybucji prawdopodobieństwa. Dla każdej lokalizacji przestrzennej we wszystkich mapach, algorytm bierze indeks największego prawdopodobieństwa i przypisuje przynależność na podstawie indeksu odpowiadającej mapy.
DiffSeg: Eksperymenty i Wyniki
Ramki pracujące nad segmentacją nienadzorowaną wykorzystują dwa benchmarki segmentacji, a mianowicie Cityscapes i COCO-stuff-27. Benchmark Cityscapes jest zestawem danych samochodów autonomicznych z 27 kategorii pośrednimi, podczas gdy benchmark COCO-stuff-27 jest zcurated wersją oryginalnego zestawu danych COCO-stuff, który łączy 80 “rzeczy” i 91 kategorii w 27 kategorii. Dodatkowo, aby przeanalizować wyniki segmentacji, rama DiffSeg wykorzystuje średnią intersekcję nad unią lub mIoU i dokładność pikseli lub ACC, a ponieważ algorytm DiffSeg nie jest w stanie dostarczyć etykiety semantycznej, wykorzystuje algorytm dopasowania węgierskiego, aby przypisać maskę podstawową do każdej przewidzianej maski. W przypadku, gdy liczba przewidzianych masek przekracza liczbę masek podstawowych, rama DiffSeg będzie brać pod uwagę niesparowane zadania przewidziane jako fałszywe negatywy.
Dodatkowo, rama DiffSeg kładzie nacisk na następujące trzy prace, aby prowadzić inference: Zależność językowa lub LD, adaptacja nienadzorowana lub UA i obraz pomocniczy lub AX. Zależność językowa oznacza, że metoda wymaga opisowych wejść tekstowych, aby ułatwić segmentację dla obrazu, adaptacja nienadzorowana odnosi się do wymogu, aby metoda wykorzystywała trening nienadzorowany na zestawie danych docelowych, podczas gdy obraz pomocniczy odnosi się do tego, że metoda wymaga dodatkowych wejść, albo jako obrazy syntetyczne, albo jako pulę odniesień obrazów.
Wyniki
Na benchmarku COCO, rama DiffSeg obejmuje dwa benchmarki K-Means, K-Means-S i K-Means-C. Benchmark K-Means-C obejmuje 6 klastrów, które są obliczane przez uśrednienie liczby obiektów w obrazach, które ocenia, podczas gdy benchmark K-Means-S wykorzystuje określoną liczbę klastrów dla każdego obrazu na podstawie liczby obiektów w masce podstawowej obrazu, a wyniki na obu tych benchmarkach są pokazane na poniższym obrazie.

Jak widać, benchmark K-Means przewyższa istniejące metody, co dowodzi korzyści z wykorzystania tensorów uwagi self-attention. Co ciekawe, benchmark K-Means-S przewyższa benchmark K-Means-C, co wskazuje, że liczba klastrów jest fundamentalnym hiperparametrem, a jej dostosowanie jest ważne dla każdego obrazu. Dodatkowo, nawet przy wykorzystaniu tych samych tensorów uwagi, rama DiffSeg przewyższa benchmarki K-Means, co dowodzi zdolności ramy DiffSeg do dostarczania nie tylko lepszej segmentacji, ale także uniknięcia wad związanych z użyciem benchmarków K-Means.
Na zestawie danych Cityscapes, rama DiffSeg dostarcza wyniki podobne do ram, które wykorzystują wejście o niższej rozdzielczości 320, a przewyższa ramy, które wykorzystują wejście o wyższej rozdzielczości 512, zarówno pod względem dokładności, jak i mIoU.

Jak wcześniej wspomniano, rama DiffSeg wykorzystuje kilka hiperparametrów, jak pokazano na poniższym obrazie.

Agregacja uwagi jest jednym z podstawowych pojęć wykorzystywanych w ramie DiffSeg, a efekty wykorzystania różnych wag agregacji są pokazane na poniższym obrazie z rozdzielczością obrazu będącą stałą.

Jak można zobaczyć, mapy o wysokiej rozdzielczości w Fig (b) z mapami 64 x 64 dają najbardziej szczegółowe segmentacje, chociaż segmentacje te mają pewne widoczne pęknięcia, podczas gdy mapy o niższej rozdzielczości 32 x 32 mają tendencję do przeszacowania szczegółów, chociaż dają lepsze spójne segmentacje. W Fig (d), mapy o niskiej rozdzielczości nie są w stanie wygenerować segmentacji, ponieważ cały obraz jest scalony w jeden obiekt z istniejącymi ustawieniami hiperparametrów. Wreszcie, Fig (a), która wykorzystuje strategię agregacji proporcjonalnej, daje lepsze szczegóły i zrównoważoną spójność.
Podsumowanie
Segmentacja zero-shot nienadzorowana jest nadal jednym z największych wyzwań dla ram widzenia komputerowego, a istniejące modele albo polegają na adaptacji nienadzorowanej zero-shot, albo na zasobach zewnętrznych. Aby pokonać to wyzwanie, omówiliśmy, jak warstwy self-attention w modelach stabilnej dyfuzji mogą umożliwić budowę modelu, który może segmentować dowolne wejście w ustawieniu zero-shot bez odpowiednich adnotacji, ponieważ te warstwy self-attention posiadają wiedzę o pojęciach obiektów, które są uczone przez wstępnie wyuczony stabilny model dyfuzji. Omówiliśmy również DiffSeg, nową strategię post-processingową, która ma na celu wykorzystanie potencjału ramy Stabilnej Dyfuzji do budowy ogólnego modelu segmentacji, który może wykonywać transfer zero-shot na dowolnym obrazie. Algorytm DiffSeg opiera się na podobieństwie międzyuwagi i podobieństwie wewnątrz-uwagi do łączenia map uwagi iteracyjnie w ważne maski segmentacyjne, aby osiągnąć wyniki na poziomie stanu sztuki na popularnych benchmarkach.












