Pamięć semantyczna dla analizy obrazu z obsługą AI

Anonim

Dostępność niedrogich czujników o wysokiej rozdzielczości zwiększyła wykładniczo ilość produkowanych danych, co może przytłoczyć istniejący Internet. Doprowadziło to do potrzeby zdolności przetwarzania danych do przetwarzania danych w pobliżu miejsca ich wygenerowania, na krawędziach sieci, zamiast wysyłania ich do centrów danych w chmurze. Edge computing, jak wiadomo, nie tylko zmniejsza obciążenie przepustowości, ale także zmniejsza opóźnienie w uzyskaniu informacji wywiadowczych z nieprzetworzonych danych. Jednak dostępność zasobów na krawędzi jest ograniczona z powodu braku korzyści skali, które sprawiają, że infrastruktura chmury jest opłacalna w zarządzaniu i oferowaniu.

Potencjał obliczeń brzegowych jest nigdzie bardziej oczywisty niż w przypadku analityki wideo. Kamery wideo wysokiej rozdzielczości (1080p) stają się powszechne w domenach takich jak nadzór i, w zależności od szybkości klatek i kompresji danych, mogą wytwarzać 4-12 megabitów danych na sekundę. Nowsze kamery o rozdzielczości 4K produkują nieprzetworzone dane rzędu gigabitów na sekundę. Wymóg wglądu w takie strumienie wideo w czasie rzeczywistym napędza stosowanie technik sztucznej inteligencji, takich jak głębokie sieci neuronowe do zadań obejmujących klasyfikację, wykrywanie i usuwanie obiektów oraz wykrywanie anomalii.

W naszym dokumencie konferencyjnym Hot Edge 2018 "Shadow Puppets: Dokładne wnioskowanie AI na poziomie chmury przy szybkości i ekonomii Edge'a", nasz zespół w IBM Research - Ireland eksperymentalnie ocenił wydajność jednego z takich obciążeń AI, klasyfikacji obiektów, używając dostępnej w handlu chmury -hosted usługi. Najlepszy wynik, jaki mogliśmy uzyskać, to wynik klasyfikacji wynoszący 2 klatki na sekundę, który jest znacznie niższy od standardowej szybkości produkcji wideo wynoszącej 24 klatki na sekundę. Wykonywanie podobnego eksperymentu na urządzeniu reprezentacyjnym (NVIDIA Jetson TK1) osiągnęło wymagania dotyczące opóźnień, ale zużyło większość zasobów dostępnych w urządzeniu w tym procesie.

Łamiemy tę dwoistość, proponując Semantic Cache, podejście, które łączy w sobie niskie opóźnienie wdrażania krawędzi z niemal nieskończonymi zasobami dostępnymi w chmurze. Korzystamy z dobrze znanej techniki buforowania, aby ukryć opóźnienie, wykonując wnioskowanie AI dla określonego wejścia (np. Klatki wideo) w chmurze i przechowując wyniki na krawędzi względem "odcisku palca" lub kodu skrótu, w oparciu o wyodrębnione cechy z wejścia.

Schemat ten jest zaprojektowany tak, że dane wejściowe są semantycznie podobne (np. Należące do tej samej klasy) będą miały odciski palców, które są "blisko" względem siebie, zgodnie z pewną miarą odległości. Rysunek 1 pokazuje projekt pamięci podręcznej. Koder tworzy odcisk palca wejściowej klatki wideo i przeszukuje pamięć podręczną pod kątem odcisków palców w określonej odległości. Jeśli istnieje dopasowanie, wyniki wnioskowania są dostarczane z pamięci podręcznej, co pozwala uniknąć zapytania do usługi AI działającej w chmurze.

Uważamy, że odciski palców są analogiczne do cieniutkich lalek, dwuwymiarowych projekcji postaci na ekranie utworzonym przez światło w tle. Każdy, kto użył swoich palców do tworzenia cieniowanych marionetek, poświadczy, że brak szczegółów na tych figurach nie ogranicza ich zdolności do bycia podstawą do dobrego opowiadania historii. Odciski palców to projekcje rzeczywistych danych wejściowych, które można wykorzystać w przypadku bogatych aplikacji sztucznej inteligencji, nawet w przypadku braku oryginalnych szczegółów.

Opracowaliśmy pełną koncepcję implementacji semantycznej pamięci podręcznej, stosując podejście projektowe "jako usługa" i udostępniając usługę użytkownikom końcowym urządzenia / bramy za pośrednictwem interfejsu REST. Nasze oceny na szeregu różnych urządzeń krawędziowych (Raspberry Pi 3 / NVIDIA Jetson TK1 / TX1 / TX2) wykazały, że opóźnienie wnioskowania zostało zmniejszone o 3 razy, a wykorzystanie przepustowości o co najmniej 50 procent w porównaniu z chmurą tylko rozwiązanie.

Wczesna ocena pierwszego prototypowego wdrożenia naszego podejścia pokazuje jego potencjał. Kontynuujemy wstępne podejście, ustalając pierwszeństwo eksperymentowania z alternatywnymi technikami kodowania dla zwiększenia precyzji, a także rozszerzając ocenę na kolejne zestawy danych i zadania sztucznej inteligencji.

Przewidujemy, że ta technologia będzie miała zastosowanie w handlu detalicznym, konserwacji predykcyjnej dla obiektów przemysłowych i monitoringu wideo, między innymi. Na przykład pamięć podręczna semantyczna może być używana do przechowywania odcisków palców obrazów produktów w kasach. Może to służyć do zapobiegania stratom w sklepie z powodu kradzieży lub nieprawidłowego skanowania. Nasze podejście stanowi przykład płynnego przełączania się między usługami w chmurze i usługami krawędziowymi w celu dostarczania najlepszych na rynku rozwiązań sztucznej inteligencji.

menu
menu