Modele i platformy AI

Nowy System Może Przynieść Sztuczną Inteligencję Do Urządzeń Noszonych I Domowych Urządzeń

mm
Dodaj Unite.AI do preferowanych źródeł w Google

Zespół badaczy z MIT pracuje nad wprowadzeniem głębokich sieci neuronowych do mikrokontrolerów. Postęp ten oznacza, że sztuczna inteligencja (AI) może być wdrożona w małe układy scalone w noszonych urządzeniach medycznych, domowych urządzeniach i innych 250 miliardach obiektów, które tworzą “internet rzeczy” (IoT). IoT to sieć fizycznych obiektów wyposażonych w czujniki, oprogramowanie i inne technologie, które pomagają łączyć i wymieniać dane z innymi urządzeniami i systemami.

Badanie jest zaplanowane do przedstawienia na Konferencji o Przetwarzaniu Informacji Neuronowej w grudniu. Głównym autorem badania jest Ji Lin, student doktorancki w laboratorium Song Han’a w Wydziale Inżynierii Elektrycznej i Nauk Komputerowych MIT. Współautorami są Han i Yujun Lin z MIT, Wei-Ming Chen z MIT i Narodowego Uniwersytetu w Tajwanie, oraz John Cohn i Chuan Gan z laboratorium MIT-IBM Watson.

System MCUNet

System nazywa się MCUNet, a projektuje on kompaktowe sieci neuronowe, które mogą działać z ekstremalną szybkością i dokładnością na urządzeniach IoT, nawet z ograniczoną pamięcią i mocą obliczeniową. Ten system może być bardziej efektywny energetycznie i poprawiać bezpieczeństwo danych.

Zespół opracował “małą głęboką sieć neuronową” łącząc dwa komponenty – działanie sieci neuronowych i mikrokontrolerów. Pierwszym komponentem jest TinyEngine, silnik interfejsu działający jak system operacyjny, kierujący zarządzaniem zasobami. TinyEngine jest zoptymalizowany do uruchamiania określonej struktury sieci neuronowej wybranej przez TinyNAS, który jest drugim komponentem. TinyNAS to algorytm wyszukiwania architektury sieci neuronowej.

Lin opracował TinyNAS z powodu trudności w stosowaniu istniejących technik wyszukiwania architektury sieci neuronowej do małych mikrokontrolerów. Te istniejące techniki ostatecznie znajdują najbardziej dokładną i efektywną strukturę sieci po rozpoczęciu od wielu możliwych struktur na podstawie określonego szablonu.

“Może to działać całkiem dobrze dla GPU lub smartfonów”, mówi Lin. “Ale okazało się, że trudno jest bezpośrednio zastosować te techniki do małych mikrokontrolerów, ponieważ są one zbyt małe”.

TinyNAS może tworzyć sieci o dowolnym rozmiarze.

“Mamy wiele mikrokontrolerów, które mają różne pojemności mocy i różne rozmiary pamięci”, mówi Lin. “Więc opracowaliśmy algorytm [TinyNAS], aby zoptymalizować przestrzeń wyszukiwania dla różnych mikrokontrolerów”.

Ponieważ TinyNAS może być dostosowany, może generować najlepsze możliwe kompaktowe sieci neuronowe dla mikrokontrolerów.

“Następnie dostarczamy ostateczny, wydajny model do mikrokontrolera”, kontynuuje Lin.

Czysty i schludny interfejs jest wymagany, aby mikrokontroler mógł uruchomić małą sieć neuronową. Wiele interfejsów ma instrukcje dla rzadko wykonywanych zadań, co mogłoby utrudnić mikrokontrolerowi.

“Nie ma pamięci zewnętrznej, nie ma dysku”, mówi Han. “Wszystko razem to tylko jeden megabajt flash, więc musimy bardzo starannie zarządzać takimi małymi zasobami”.

TinyEngine generuje kod potrzebny do uruchomienia dostosowanej sieci neuronowej opracowanej przez TinyNAS. Czas kompilacji jest skracany przez odrzucenie niepotrzebnego kodu.

“Zachowujemy tylko to, co potrzebne”, mówi Han. “A ponieważ zaprojektowaliśmy sieć neuronową, wiemy dokładnie, co potrzebne. To jest zaleta system-algorytmicznego projektowania”.

Testy wykazały, że skompilowany kod binarny TinyEngine był 1,9 do pięciokrotnie mniejszy niż podobne silniki mikrokontrolerów, w tym te od Google (GOOGL ) i ARM. Użycie pamięci szczytowej zostało również znacznie zmniejszone.

Możliwości MCUNet

Pierwsze testy MCUNet dotyczyły klasyfikacji obrazów. Baza danych ImageNet została użyta do szkolenia systemu z oznaczonymi obrazami, a następnie jego możliwości zostały przetestowane na nowych obrazach.

Podczas testowania MCUNet na komercyjnym mikrokontrolerze, pomyślnie sklasyfikował 70,7 procent nowych obrazów. Jest to znacznie lepsze niż poprzedni najlepszy wynik sieci neuronowej i silnika interferencyjnego, który wyniósł 54 procent.

“Nawet 1 procent poprawy jest uważany za znaczący”, mówi Lin. “Więc to jest ogromny krok dla ustawień mikrokontrolera”.

Według Kurta Keutzera, komputera naukowego z Uniwersytetu Kalifornijskiego w Berkeley, to “rozszerza granice projektowania głębokich sieci neuronowych jeszcze dalej w dziedzinie małych, efektywnych energetycznie mikrokontrolerów”. MCUNet mógł “przynieść inteligentne możliwości komputerowego widzenia do nawet najprostszych urządzeń kuchennych lub umożliwić bardziej inteligentne czujniki ruchu”.

MCUNet również poprawia bezpieczeństwo danych.

“Kluczową zaletą jest zachowanie prywatności”, mówi Han. “Nie musisz przesyłać danych do chmury”.

Przez analizowanie danych lokalnie, istnieje mniejsze ryzyko naruszenia poufności informacji.

Ponadto, MCUNet mógł analizować i zapewniać wgląd w informacje, takie jak odczyty tętna, ciśnienia krwi i poziomu tlenu, wprowadzić głębokie uczenie do urządzeń IoT w pojazdach i innych miejscach z ograniczonym dostępem do internetu, oraz zmniejszyć ślad węglowy, używając tylko małej frakcji energii wymaganej dla dużych sieci neuronowych.

Alex kieruje operacjami informacyjnymi Unite.AI opartymi na sztucznej inteligencji, łącząc dziennikarstwo, badania i automatyzację, aby wspierać terminowe i skalowalne relacjonowanie sztucznej inteligencji. Jego praca pomaga zapewnić, że nowe osiągnięcia w dziedzinie AI są prezentowane efektywnie, przy jednoczesnym zachowaniu standardów redakcyjnych publikacji.