Sztuczna inteligencja brzegowa: rewolucja w automatyce i przetwarzaniu danych w czasie rzeczywistym
Sztuczna inteligencja wkracza do naszego życia. Jest implementowana w urządzeniach o rozmaitym przeznaczeniu, od asystentów domów inteligentnych (np. Alexa, Google i Siri), do zaawansowanych systemów wspomagania kierowcy (ADAS) powiadamiających go, gdy zjeżdża on ze swojego pasa ruchu. Opierają się one na sztucznej inteligencji brzegowej, która zapewnia przetwarzanie informacji w czasie rzeczywistym. Sztuczna inteligencja brzegowa wykorzystuje sztuczną inteligencję (AI) bezpośrednio w urządzeniu. W tym przypadku przetwarzane są dane dostępne w pobliżu ich źródła, a nie z zewnętrznego ośrodka przetwarzania danych lub chmury. Sztuczna inteligencja brzegowa oferuje mniejsze opóźnienia, szybsze przetwarzanie, mniejsze zapotrzebowanie na stałą łączność z Internetem i może zmniejszyć obawy dotyczące prywatności. Technologia ta wnosi znaczącą zmianę w sposobie przetwarzania danych, a wraz ze wzrostem zapotrzebowania na inteligencję w czasie rzeczywistym, sztuczna inteligencja brzegowa będzie zaznaczała swoją pozycję w wielu branżach.
Największą wartością sztucznej inteligencji brzegowej jest szybkość, jaką może zapewnić w zastosowaniach o znaczeniu krytycznym. W przeciwieństwie do sztucznej inteligencji w chmurze lub ośrodkach przetwarzania danych, sztuczna inteligencja brzegowa nie wysyła danych przez łącza sieciowe, licząc na rozsądny czas odpowiedzi. Wykonuje raczej obliczenia lokalnie (często w systemie operacyjnym czasu rzeczywistego), co zapewnia dużą szybkość odpowiedzi. Sztuczna inteligencja brzegowa potrafi na przykład, przy wykorzystaniu widzenia maszynowego na linii produkcyjnej, przekazać informacje o możliwości ewentualnego przekierowania produktu w ciągu sekundy. Podobnie jest, jeśli chodzi o nasze samochody – nie chcemy, aby przesyłanie sygnałów z nich było zależne od czasów odpowiedzi sieci lub serwerów w chmurze.
Sztuczna inteligencja brzegowa w aplikacjach czasu rzeczywistego
Zapotrzebowanie widać w wielu działaniach wykonywanych w czasie rzeczywistym. Do wymienionych wcześniej zastosowań warto jeszcze dodać takie, jak monitorowanie stanu pacjenta i konserwacja predykcyjna. Sztuczna inteligencja brzegowa zapewnia szybką odpowiedź przy minimalizacji obaw związanych z prywatnością – od sprawnej asysty w codziennych czynnościach domowych, przez powiadomienia o przypadkowym zjechaniu z pasa ruchu, po odczyty glukozy przesyłane do smartfona.
Od dłuższego czasu widzimy, że sztuczna inteligencja brzegowa dobrze sobie radzi w łańcuchach dostaw, zwłaszcza w magazynach i fabrykach. W ciągu ostatniej dekady nastąpił znaczny rozwój tej technologii w branży transportowej, na przykład w użyciu dronów dostawczych w warunkach zachmurzenia. Sztuczna inteligencja brzegowa staje się niezwykle użyteczna dla inżynierów, zwłaszcza w sektorze technologii medycznych, który jest krytycznym obszarem postępu. Inżynierowie, opracowujący rozruszniki serca i inne urządzenia kardiologiczne, mogą dać lekarzom narzędzia do wykrywania nieprawidłowych rytmów serca. Możliwe jest także aktywne programowanie w celu udzielania informacji o konieczności dodatkowej interwencji lekarza. Sektor technologii medycznych będzie w coraz większym stopniu stosować sztuczną inteligencję brzegową i poszerzać jej możliwości.
Generowanie modeli sztucznej inteligencji brzegowej
Ponieważ coraz więcej systemów w życiu codziennym ma obecnie pewien poziom interakcji z wykorzystaniem uczenia maszynowego (ML), zrozumienie tego świata staje się niezbędne dla inżynierów planujących przyszłe interakcje z użytkownikiem.
Największą szansą w przypadku sztucznej inteligencji brzegowej jest uczenie maszynowe, które dopasowuje wzorce w oparciu o algorytm statystyczny. Przykładem może być nierównomierna praca silnika, wykrycie obecności człowieka lub wypowiedzenie „słowa wybudzającego” (np. „Alexa” lub „Hej, Siri”) w celu uzyskania dostępu do asystenta domu inteligentnego. Słowa wybudzające działają na urządzeniach brzegowych bez konieczności wysyłania głosu do chmury informując, że wkrótce zostanie wydane właściwe polecenie.
Istnieje kilka ścieżek generowania modelu uczenia maszynowego: np. za pomocą zintegrowanego środowiska programistycznego (np. TensorFlow lub PyTorch), albo przy użyciu platformy SaaS (np. Edge Impulse). Większość „pracy” w budowaniu dobrego modelu uczenia maszynowego polega na stworzeniu reprezentatywnego zbioru danych i jego dobrym oznaczeniu.
Obecnie najpopularniejszym modelem uczenia maszynowego (ML) dla sztucznej inteligencji brzegowej jest model nadzorowany, który jest rodzajem trenowania, opartym na oznaczonych i otagowanych przykładowych danych. Wynikiem jest znana wartość, którą można sprawdzić pod kątem poprawności, na przykład zlecając sprawdzenie i skorygowanie przez osobę nadzorującą. Ten rodzaj trenowania jest zwykle używany w takich zastosowaniach jak klasyfikacja czy regresja danych. Trenowanie nadzorowane może być przydatne i bardzo dokładne, ale w dużej mierze zależy od otagowanego zbioru danych i może nie umożliwiać obsługi nowych danych wejściowych.
Sprzęt do uruchamiania procesów roboczych sztucznej inteligencji brzegowej
Firma DigiKey jest dobrze przygotowana do pomocy we wdrożeniach sztucznej inteligencji brzegowej, która zazwyczaj jest uruchamiana na mikrokontrolerach, układach FPGA i komputerach jednopłytkowych (SBC). DigiKey, współpracując z czołowymi dostawcami, oferuje kilka generacji sprzętu obsługującego modele uczenia maszynowego (ML) na urządzeniach brzegowych. W tym roku pojawiło się kilka nowych układów, jak na przykład seria MCX-N firmy NXP, a wkrótce będą wprowadzane do sprzedaży układy serii STM32MP25 firmy ST Microelectronics.
W ostatnich latach popularne były płytki rozwojowe wykorzystujące sztuczną inteligencję brzegową, takie jak brzegowa płytka rozwojowa Apollo3 Blue firmy SparkFun, EdgeBadge firmy AdaFruit, Nano 33 BLE Sense wer. 2 firmy Arduino oraz komputery jednopłytkowe Raspberry Pi 4 lub 5.
Na popularności w sztucznej inteligencji (AI) brzegowej zyskują jednostki przetwarzania neuronowego (NPU). Są to wyspecjalizowane układy scalone zaprojektowane w celu przyspieszenia przetwarzania w zastosowaniach uczenia maszynowego i sztucznej inteligencji. Bazują na sieciach neuronowych, czyli strukturach opartych na ludzkim mózgu z wieloma połączonymi ze sobą warstwami i węzłami zwanymi neuronami, które przetwarzają i przekazują informacje. Obecnie tworzona jest nowa generacja jednostek przetwarzania neuronowego ze specjalnym przetwarzaniem matematycznym, w tym układy serii MCX N firmy NXP oraz MAX78000 firmy ADI.
Widzimy również akceleratory sztucznej inteligencji (AI) dla urządzeń brzegowych, które stanowią przestrzeń jeszcze niezdefiniowaną, na przykład Google Coral i Hailo.
Znaczenie czujników wykorzystujących uczenie maszynowe
Szybkie kamery z modelami uczenia maszynowego (ML) funkcjonują w łańcuchach dostaw od dłuższego czasu. Są one używane na przykład przy podejmowaniu decyzji, gdzie skierować produkty w obrębie magazynu lub przy wykrywaniu wadliwych produktów na linii produkcyjnej. Widzimy, że dostawcy tworzą tanie moduły wizyjne sztucznej inteligencji, które mogą uruchamiać moduły uczenia maszynowego w celu rozpoznawania przedmiotów lub osób.
Chociaż uruchomienie modelu uczenia maszynowego będzie wymagało systemu wbudowanego, pojawi się więcej produktów, które nadal będą wprowadzane na rynek jako komponenty elektroniczne współpracujące ze sztuczną inteligencją. Mowa tutaj m.in. o czujnikach z funkcją uczenia maszynowego. Chociaż dodanie modelu uczenia maszynowego do większości czujników nie zwiększy ich wydajności w danym zastosowaniu, to istnieje kilka ich rodzajów, gdzie wykorzystanie uczenia maszynowego może znacznie usprawnić działanie:
- Czujniki kamer, w których modele uczenia maszynowego (ML) mogą posłużyć do śledzenia obiektów i osób w kadrze
- Inercyjne jednostki pomiarowe (IMU), przyspieszeniomierze i czujniki ruchu do wykrywania profili aktywności
Niektóre czujniki wykorzystujące sztuczną inteligencję (AI) mają fabrycznie wczytany model uczenia maszynowego (ML), który jest gotowy do działania. Na przykład płytka ewaluacyjna SparkFun do wykrywania ludzi jest wstępnie zaprogramowana do wykrywania twarzy i przekazywania informacji przez interfejs QWiiC I2C. Niektóre czujniki sztucznej inteligencji (AI), takie jak Nicla Vision firmy Arduino lub OpenMV Cam H7 firmy Seeed Technology, do wykrywania (wad, obiektów itp.) potrzebują wytrenowanego modelu uczenia maszynowego.
Wykorzystując sieci neuronowe do stworzenia algorytmów obliczeniowych, możliwe jest wykrywanie i śledzenie obiektów oraz osób, które poruszają się w polu widzenia czujnika kamery.
Przyszłość sztucznej inteligencji brzegowej
Należy oczekiwać, że sztuczna inteligencja brzegowa będzie stosowana coraz powszechniej. Wynika to z dynamicznej ewolucji wielu branż coraz bardziej uzależnionych od technologii przetwarzania danych. Dzięki umożliwieniu szybszego i bezpieczniejszego przetwarzania danych na poziomie urządzenia, innowacje w sztucznej inteligencji brzegowej będą olbrzymie. Oto kilka dziedzin, które według nas rozwiną się w niedalekiej przyszłości:
- Specjalna logika procesorowa do obliczeń arytmetycznych w sieciach neuronowych.
- Postęp w dziedzinie rozwiązań zastępczych niższej mocy w odpowiedzi na znaczne zużycie energii przez obliczenia chmurowe.
- Więcej zintegrowanych i modułowych opcji, takich jak wizyjna obsługa sztucznej inteligencji, które będą zawierać wbudowane czujniki i sprzęt.
W miarę ewolucji metod uczenia maszynowego, sprzętu i oprogramowania, sztuczna inteligencja brzegowa będzie lepiej przygotowana do gwałtownego rozwoju i obsługi wielu branż. Firma DigiKey stara się wyprzedzać trendy w dziedzinie sztucznej inteligencji i ma nadzieję wspierać innowacyjnych inżynierów, projektantów, konstruktorów i specjalistów ds. zaopatrzenia na całym świecie poprzez bogactwo rozwiązań, bezproblemowe interakcje, narzędzia i zasoby edukacyjne czyniące ich pracę bardziej wydajną.