Modele i platformy AI
TinySAM: Efektywny Model Segmentacji Obiektów
Segmentacja obiektów jest podstawowym i krytycznie ważnym polem w nowoczesnej wizji komputerowej. Odgrywa istotną rolę w aplikacjach wymagających rozległych składników wizualnych, takich jak lokalizacja i identyfikacja obiektów, oraz wymaga szybkiej i dokładnej segmentacji w czasie rzeczywistym. To znaczenie sprawiło, że segmentacja obiektów stała się niezmiennie gorącym tematem badań, z istotną pracą wykonaną w obszarach takich jak segmentacja instancji, segmentacja semantyczna i segmentacja panoptyczna.
Z ewolucją segmentacji obiektów, Model Segmentacji Obiektów (SAM) wyłonił się jako godny uwagi narzędzie, prezentując wybitne umiejętności segmentacji i szybko przyjęty w różnych aplikacjach wizji komputerowej. Ramy korzystające z pre-trenowanego architektury SAM osiągnęły imponujące wyniki w zadaniach wizji dolnoopracowanych. Niemniej jednak, pomimo swoich zdolności i wysokiej dokładności w zadaniach segmentacji, złożona i ciężka architektura SAM wymaga znacznej mocy obliczeniowej, utrudniając jej wdrożenie na urządzeniach z ograniczonymi zasobami.
Rozwiązując wyzwania obliczeniowe SAM, badacze opracowali Tiny Segment Anything Model (TinySAM), który zachowuje wyniki zero-shot oryginalnej ramy, będąc jednocześnie bardziej lekkim. TinySAM wykorzystuje pełnoetapową destylację wiedzy z punktami trudnymi online, aby stworzyć bardziej wydajny model ucznia. Kwantyzacja po treningu dostosowana do zadań segmentacji z promptami dalej redukuje potrzeby obliczeniowe. Dodatkowo, projekt TinySAM ma na celu hierarchiczną segmentację, która prawie podwaja szybkość inferencji bez uszczerbku dla wyników.
Ten artykuł zagłębia się w ramę TinySAM, eksplorując jego podstawowe zasady, architekturę i wyniki w porównaniu z innymi ramami segmentacji stanu sztuki. Zobaczmy te aspekty w większych szczegółach.
TinySAM: Efektywny Model Segmentacji Obiektów
Model Segmentacji Obiektów przyczynił się do szybkiego postępu kilku aplikacji wizji komputerowej dzięki swoim godnymi uwagi zdolnościom segmentacji, połączonym z ogromnym zestawem danych segmentacji, który zawiera ponad 11 milionów obrazów i ponad miliard maski obrazu. Dzięki swoim wybitnym wynikom w zadaniach segmentacji obiektów o dowolnych kategoriach i kształtach, służy jako podstawa dla ram wykonujących zadania dolnoopracowane, takie jak wypełnianie obrazu, śledzenie obiektów, wizja 3D i więcej. Ponadto, Model Segmentacji Obiektów oferuje również godne uwagi wyniki segmentacji zero-shot, które przyniosły korzyści wrażliwym branżom, które pracują z ograniczoną ilością danych, w tym badania medyczne i obrazowanie medyczne.
Chociaż nie można kwestionować godnych uwagi zdolności segmentacji oferowanych przez Model Segmentacji Obiektów w szerokim zakresie zadań wizji dolnoopracowanych, ma on swoje wady w postaci złożonej architektury, wysokich wymagań obliczeniowych i znacznych kosztów operacyjnych. Dla systemu działającego na nowoczesnej karcie graficznej, czas inferencji modelu SAM może wynieść nawet do 2 sekund dla obrazu 1024×1024. W rezultacie jest to bardzo trudne zadanie, aby wdrożyć aplikacje SAM na urządzeniach z ograniczonymi zasobami. Aby pokonać tę przeszkodę, ostatnie prace, takie jak MobileSAM i FastSAM, próbowały opracować model SAM o większej wydajności obliczeniowej. Ramy MobileSAM próbują zastąpić ciężki komponent w kodercie obrazu architekturą ramy TinyViT, natomiast model FastSAM przenosi zadanie segmentacji do zadania segmentacji instancji z tylko jedną kategorią z modelem YoloV8. Chociaż te metody osiągnęły pewien poziom sukcesu w zakresie redukcji wymagań obliczeniowych, nie mogły utrzymać wyników, szczególnie w zadaniach zero-shot dolnoopracowanych.
TinySAM lub Tiny Segment Anything Model jest próbą redukcji wymagań obliczeniowych bieżącego modelu SAM bez uszczerbku dla wyników w zadaniach zero-shot dolnoopracowanych. Ponadto, ramy TinySAM proponują wdrożenie pełnoetapowej destylacji wiedzy w swojej architekturze, aby poprawić zdolność zwartej sieci ucznia. Ramy TinySAM destylują sieć ucznia w sposób końcowy pod nadzorem sieci nauczyciela z różnych etapów. Aby dalej poprawić wyniki, ramy pozwalają na proces destylacji, aby zwrócić większą uwagę na trudne przykłady, wdrażając dodatkową strategię próbkowania punktów trudnych online. Ponadto, aby dalej zmniejszyć koszty obliczeniowe, ramy TinySAM narażają zadania segmentacji z promptami na komponenty kwantyzacji po treningu.
Główna część wymagań obliczeniowych Modelu Segmentacji Obiektów wynika z faktu, że model generuje ogromne maski z punktów siatki, aby wysegmentować wszystko w obrazie. Aby pokonać wymagania obliczeniowe tej strategii segmentacji, ramy TinySAM wykorzystują hierarchiczną strategię segmentacji wszystkiego, która prawie podwaja szybkość inferencji bez uszczerbku dla wyników.
TinySAM: Architektura i Metodologia
Przed omówieniem architektury i metodologii ram TinySAM, ważne jest, aby najpierw przyjrzeć się jego poprzednikowi, ramie SAM. Odkąd został wprowadzony, Model Segmentacji Obiektów wykazał się wybitnymi wynikami, wszechstronnością i zdolnościami generalizacji w szerokim zakresie zadań wizji dolnoopracowanych i segmentacji obiektów.
W swojej istocie, model SAM składa się z trzech podsieci: kodera punktów, kodera obrazu i dekodera maski. Głównym celem kodera punktów jest zakodowanie maski o dowolnym kształcie, punktów wejściowych i pudeł, a także tekstu o charakterze swobodnym z informacjami położeniowymi. Koder obrazu jest ciężką siecią transformatora wizji, która wyodrębnia obraz wejściowy w postaci osadzeń. Model wykorzystuje różne sieci do przetwarzania punktów geometrycznych i tekstowych. Wreszcie, dekoder maski zawiera dwukierunkowy transformator, który otrzymuje dane wyjściowe z kodera punktów i kodera obrazu, aby wygenerować ostateczną prognozę maski. Z zestawem danych, ramy SAM wykazują się wybitnymi, wysokiej jakości zdolnościami segmentacji dla obiektów niezależnie od ich kształtu i kategorii. Ponadto, Model Segmentacji Obiektów wykazuje się wybitnymi wynikami i efektywnością w zadaniach zero-shot dolnoopracowanych, w tym proponowaniu obiektów, wykrywaniu krawędzi, przewidywaniu maski z tekstu i segmentacji instancji. Dzięki swoim wysokiej jakości zdolnościom segmentacji i elastycznym ofertom punktów, ramy SAM tworzą podstawę dla aplikacji wizji.
Destylacja Wiedzy
Destylacja wiedzy jest ważnym podejściem do poprawy wyników sieci kompaktowych podczas fazy treningu. Metoda destylacji wiedzy, która wykorzystuje dane wyjściowe sieci nauczyciela do nadzorowania treningu sieci ucznia. Metoda destylacji wiedzy może być podzielona na dwie subkategorie: destylacja dla cech pośrednich i destylacja dla danych wyjściowych sieci, przy czym większość badań nad destylacją wiedzy koncentruje się na zadaniach klasyfikacji obrazów.
Poniższy rysunek przedstawia ogólną architekturę ram TinySAM wraz z przeglądem wyników na zadaniach segmentacji instancji zero-shot.

W pierwszym etapie, ramy TinySAM wdrażają destylację wiedzy zaprojektowaną specjalnie dla ram SAM, a aby aktywować proces destylacji, model wykorzystuje dodatkową strategię próbkowania punktów trudnych online, aby wydobyć wiedzę trudną do sieci ucznia z sieci nauczyciela. W drugim etapie, ramy TinySAM dostosowują metodę kwantyzacji po treningu do zadań segmentacji z promptami i wdrażają ją w sieci ucznia o mniejszej wadze. Wreszcie, model wdraża tryb inferencji hierarchicznej do zadań segmentacji, co skutkuje podwojeniem szybkości inferencji z minimalną utratą dokładności.
Pełnoetapowa Destylacja Wiedzy
Jak wcześniej wspomniano, Model Segmentacji Obiektów składa się z trzech podsieci: kodera punktów, kodera obrazu i dekodera maski, przy czym koder obrazu jest oparty na transformatorze wizji i ma wysokie wymagania obliczeniowe. Aby rozwiązać ten problem, ramy MobileSAM zastąpiły transformator wizji z TinyViT, chociaż substytucja nie była skuteczna ze względu na znaczny spadek wyników. Aby uniknąć spadku wyników, ramy TinySAM wdrażają pełnoetapową destylację wiedzy, która prowadzi lekką sieć koderów obrazu od poziomu uczenia do wielu poziomów wiedzy.

Kwantyzacja
Kwantyzacja modelu jest popularnym podejściem w ramach wizji komputerowej i jest używana do kompresji modelu przez kwantyzację wag lub aktywacji z wyższej do niższej przepustowości w celu zmniejszenia złożoności obliczeniowej i wymagań magazynowych bez znacznego pogorszenia jakości wyjściowej.
Głównym celem kwantyzacji w TinySAM jest rzutowanie tensora zmiennoprzecinkowego na tensor całkowitoliczbowy przy użyciu współczynnika skalowania, przy czym miara odległości między mnożeniem macierzy a macierzą kwantyzowaną odgrywa kluczową rolę w optymalizacji współczynnika skalowania.
Hierarchiczna Segmentacja Obiektów
Model Segmentacji Obiektów proponuje wykorzystanie automatycznego generatora masek, który próbkuję punkty jako siatkę, aby wysegmentować wszystko w obrazie. Jednakże, stwierdzono, że użycie gęstej siatki punktów skutkuje zbyt szczegółowymi wynikami segmentacji i proces ten wymaga ogromnych wymagań obliczeniowych i generuje wysokie koszty operacyjne. Ponadto, z jednej strony, zbyt wiele punktów próbkowania dla pełnego obiektu może skutkować niepoprawnymi segmentacjami różnych części obiektu jako oddzielnych masek, natomiast z drugiej strony, czas inferencji trybu wszystkiego jest głównie spowodowany tym, że koder obrazu został znacznie zredukowany.

Inaczej niż podejście wdrożone w oryginalnych ramach SAM, model TinySAM wykorzystuje tylko 25% punktów na każdej stronie, wykorzystując tym samym tylko 1/16 dostępnych punktów w oryginalnym ustawieniu. Model inferuje dekoder maski i koder punktów z tymi punktami i otrzymuje dane wyjściowe. Model filtrowuje niektóre maski z ufnością przekraczającą pewien próg, a maski odpowiadające lokalizacje jako obszary potencjalnych ostatecznych prognoz. Ponieważ model traktuje te obszary jako wynik segmentacji instancji o wysokiej ufności, nie ma potrzeby generowania punktów próbkowania. Strategia nie tylko pomaga w uniknięciu zbyt szczegółowej segmentacji obiektu, ale także pomaga w znacznym zmniejszeniu kosztów operacyjnych i wymagań obliczeniowych.
TinySAM: Eksperymenty i Wyniki
Aby przyspieszyć proces destylacji, ramy TinySAM obliczają i przechowują osadzenia obrazu z sieci nauczyciela z wyprzedzeniem, dzięki czemu nie jest konieczne, aby model obliczał ciężki koder obrazu sieci nauczyciela wielokrotnie podczas fazy treningu. W przypadku kwantyzacji po treningu, ramy TinySAM kwantyzują wszystkie warstwy mnożenia macierzy, warstwy konwolucyjne, warstwy dekonwolucyjne i warstwy liniowe, przy czym model wykorzystuje współczynniki skalowania kanałowe dla warstw konwolucyjnych i dekonwolucyjnych. Dla warstw mnożenia macierzy, model wdraża współczynniki skalowania głowic, natomiast dla warstw liniowych, model wdraża współczynniki skalowania liniowe. Model również prowadzi ocenę na zadaniach dolnoopracowanych zero-shot.
Dla zadań segmentacji instancji w ustawieniu zero-shot, ramy TinySAM stosują ustawienia eksperymentalne swojego poprzednika, Modelu Segmentacji Obiektów, i wykorzystują wyniki wykrywania obiektów ramy Vision Transformer Det-H lub VitDet-H do segmentacji instancji. Jak pokazano na poniższym rysunku, ramy TinySAM przewyższają istniejące metody pod względem dokładności segmentacji instancji i wyniku FLOPs.

Ponadto, jakościowe wyniki modelu TinySAM są przedstawione na poniższym rysunku dla segmentacji instancji zero-shot, przy czym zielona ramka reprezentuje punkty próbkowania.

W zakresie oceny ważnych masek punktów zero-shot, model TinySAM znacznie przewyższa ramy MobileSAM na różnych zestawach danych i dostarcza znacznie lepsze wyniki, gdy ramy wykorzystują mniejszą liczbę punktów jako punkty próbkowania.

Ponadto, poniższa tabela podsumowuje wyniki przyspieszenia i zmniejszenia wymagań obliczeniowych osiągnięte dzięki strategii hierarchicznej segmentacji wszystkiego. Model stosuje ten sam współczynnik stabilności i próg wartości z różnymi strategiami dla uczciwej oceny, a wyniki są podsumowane poniżej.

Końcowe Myśli
W tym artykule omówiliśmy TinySAM, proponowaną ramę, która posuwa granice segmentacji dowolnych zadań i uzyskuje efektywną architekturę modelu z mniejszymi wymaganiami obliczeniowymi i dokładnością porównywalną z oryginalną ramą SAM. TinySAM lub Tiny Segment Anything Model zachowuje i dostarcza wyniki zero-shot oryginalnej ramy. Ramy TinySAM najpierw wdrażają pełnoetapową destylację wiedzy, która wykorzystuje punkty trudne online, aby destylować lekką sieć ucznia. Ramy TinySAM następnie dostosowują kwantyzację po treningu do zadań segmentacji z promptami, co dalej pomaga w zmniejszeniu wymagań obliczeniowych. Ponadto, ramy również mają na celu segmentację hierarchiczną, która prawie podwaja szybkość inferencji bez uszczerbku dla wyników.












