reklama
reklama
reklama
reklama
reklama
reklama
reklama
reklama
© Farnell
Analizy |

Sprzęty stają się coraz mądrzejrze dzięki odpowiednim rozwiązaniom

W ciągu nieco ponad dekady głębokie uczenie całkowicie odmieniło oblicze sztucznej inteligencji, kończąc okres długiej stagnacji tej technologii i stawiając ją na czele innowacyjności. Głębokie uczenie, czyli wykorzystanie sieci neuronowej z wieloma warstwami, może być stosowane w wielu formach sztucznej inteligencji w zależności od docelowego zastosowania. Po opracowaniu metody tworzenia modeli sztuczna inteligencja została wdrożona w wielu różnych systemach ze zdumiewającą szybkością. Na przykład struktura transformerów stojąca za dzisiejszymi modelami generatywnej sztucznej inteligencji, choć pojawiła się zaledwie pięć lat temu, jest teraz w stanie odmienić charakter wielu branż.

Autor: Ankur Tomar, Regional Solutions Marketing Manager, Farnell

Obecnie duży nacisk kładzie się na generatywną sztuczną inteligencję – w szczególności na duże modele językowe (LLM) i generowanie obrazów – co jest możliwe dzięki rozwojowi przetwarzania w chmurze. Bez szybkiej łączności i dostępu do sprzętu do masowego przetwarzania równoległego, znajdującego się w jednym lub kilku centrach danych, korzystanie z przełomowych modeli sztucznej inteligencji, takich jak GPT-4, przy jednoczesnym opracowywaniu rentownych modeli biznesowych, byłoby znacznie trudniejsze. Wpływ sztucznej inteligencji wykracza jednak daleko poza komputery stacjonarne. Dostęp do mocy obliczeniowej na tym poziomie umożliwił wykorzystanie tych platform w systemach wbudowanych do świadczenia usług, takich jak rozpoznawanie głosu, dźwięku i twarzy w czasie rzeczywistym, a także stosowanie określonych modeli, takich jak te używane do analizy drgań w celu wykrywania potencjalnych awarii w układach mechanicznych.

Wielu dostawców oferuje kompletne rozwiązania z zakresu sztucznej inteligencji, które pomagają inżynierom skrócić czas wprowadzania produktów na rynek. Przykładem może być platforma programowo-sprzętowa NXP klasy produkcyjnej, która została zaprojektowana w celu umożliwienia szybkiego opracowywania przyszłościowych produktów z dziedziny Internetu rzeczy (IoT) oferujących funkcje takie jak sterowanie głosem lub rozpoznawanie twarzy. Innym przykładem jest mikrokontroler MAX78000 firmy ADI, energooszczędny akcelerator sieci neuronowej, który umożliwia zasilanym akumulatorami aplikacjom dedukowanie za pomocą sztucznej inteligencji.

Choć urządzenia podłączone do Internetu mogą wykorzystać moc sztucznej inteligencji dostępnej w chmurze, istnieje wiele sytuacji, w których nie jest to opłacalne rozwiązanie. Aplikacje działające w czasie rzeczywistym nie tolerują opóźnień nieodłącznie związanych z komunikacją ze zdalnym serwerem, a co gorsza utraty połączenia z chmurą lub nagłej awarii usługi.

Kolejnym przykładem ograniczeń przetwarzania w chmurze są drony wysyłane do inspekcji dróg, torów kolejowych, rur czy słupów wysokiego napięcia, często pracujące z dala od cywilizacji w miejscach bez dostępu do Internetu. Nawet jeśli dostępna jest sieć komórkowa, posiadacze wielu systemów nie mogą sobie pozwolić na wysokie koszty lub dodatkowe zużycie energii związane z korzystaniem z dwukierunkowych szerokopasmowych usług transmisji danych potrzebnych do przesyłania wideo w czasie rzeczywistym na chmurę.

W środowisku przemysłowym komunikacja z serwerem może stanowić prawdziwy problem i to właśnie w tym obszarze przełomowe okazuje się przetwarzanie brzegowe z wykorzystaniem sztucznej inteligencji. Choć nie jest możliwe stworzenie rozwiązania o liczbie parametrów i wymagań obliczeniowych dorównujących GPT-4, dostępne jest potężne wsparcie ze strony sztucznej inteligencji dla urządzeń brzegowych, które umożliwiają lokalną obsługę – częściowo, a nawet w całości. Możliwe jest nawet podzielenie obciążenia w celu utrzymania wydajności w czasie rzeczywistym i niskich kosztów przy jednoczesnym wykorzystaniu wyższej przepustowości obliczeniowej chmurowej sztucznej inteligencji. Podział obciążenia pozwala również zoptymalizować żywotność akumulatorów w systemach takich jak drony.

W typowym scenariuszu algorytmy uczenia maszynowego działają na stosunkowo tanich urządzeniach, analizując wszystkie przychodzące dane z czujników w celu ustalenia, czy dane wejściowe wymagają dalszej analizy. Weźmy na przykład aparaturę obrabiarki wykrywającą zmęczenie materiału. Wykrywanie oznak zużycia może wymagać użycia bardziej złożonych modeli chmurowych, które przetwarzają dodatkowe dane wejściowe w celu ustalenia, czy należy uruchomić alarm.

Innym powszechnym podejściem jest wykorzystanie lokalnych modeli do kontroli w czasie rzeczywistym, o niższej rozdzielczości przy danych wysyłanych do długoterminowej analizy trendów, gdy dostępna jest moc lub przepustowość łączności. Bardziej złożone modele działające w chmurze mogą następnie śledzić bardziej subtelne zmiany w warunkach zakładu, które są następnie wykorzystywane do ustalania priorytetów inspekcji lub izolowania usterek w celu przekazywania konkretnych instrukcji dotyczących konserwacji lub naprawy inżynierowi odpowiedzialnemu za daną usługę.

Ten podział umożliwia dostęp do szerokiego i stale rosnącego wachlarza opcji wydajności dla wbudowanej sztucznej inteligencji. W przypadku rozwiązań o niskim poborze mocy lub działających w trybie ciągłym, wykorzystujących sztuczną inteligencję, dostawcy tacy jak Edge Impulse, którzy współpracują z dostawcami urządzeń wbudowanych, np. Silicon Labs, opracowali techniki umożliwiające uruchamianie głębokich sieci neuronowych nawet na rdzeniach mikrokontrolerów. Producenci półprzewodników stopniowo dodają akcelerację macierzową do swoich wbudowanych procesorów, co umożliwi kolejny wzrost wydajności.

Wielokanałowe przetwarzanie wideo i obrazu jest powszechnie stosowane w rozwiązaniach, począwszy od dronów inspekcyjnych po systemy przemysłowe, które wymagają płytek bezpośrednio obsługujących uczenie maszynowe o wyższej wydajności. Deweloperzy mogą wybierać spośród wielu produktów dostępnych na rynku. Począwszy od Raspberry Pi, które można wspomóc dodatkowymi płytkami, poprzez BeagleY®-AI, nowy komputer jednopłytkowy o otwartym kodzie źródłowym od BeagleBoard.org, który umożliwia programistom natychmiastowe rozpoczęcie tworzenia szerokiej gamy nowych aplikacji z zakresu sztucznej inteligencji, aż po dedykowaną ofertę sztucznej inteligencji firmy Nvidia oraz rozwiązania z platformy AMD Xilinx, które oferują programowalną akcelerację logiczną.

Choć każda z tych platform wymaga dedykowanego kodu, programiści pracujący nad aplikacjami do uczenia maszynowego mogą skorzystać z wieloplatformowych narzędzi programistycznych, które umożliwiają optymalizację kodu pod kątem docelowej architektury. Narzędzia te pomagają mapować modele trenowane w środowisku chmurowym do wersji, która działa z wymaganą prędkością na sprzęcie wbudowanym. Na przykład, przycinanie drzewa i sparsyfikacja wykorzystują nadmiarowość wag zwykle przypisywanych neuronom podczas treningu, eliminując operacje, które nie poprawiają znacząco wyniku.

Połączenie wsparcia sprzętowego dla akceleracji sztucznej inteligencji z obsługą optymalizacji oprogramowania umożliwia uruchamianie jeszcze bardziej zaawansowanych modeli na urządzeniach brzegowych. Dzisiejsze platformy zapewniają elastyczność potrzebną do wdrożenia struktur opartych na transformerach, które obecnie zasilają systemy generatywnej sztucznej inteligencji. Transformery wizyjne wymagają więcej pamięci niż konwencjonalne konwolucyjne sieci neuronowe, ale mogą zapewnić lepsze wyniki w aplikacjach do rozpoznawania obrazów. Obsługa sparsyfikacji na platformach takich jak procesor graficzny Nvidia Ampere w module Jetson Orin umożliwia uruchamianie tego typu modeli w środowisku wbudowanym. Elastyczność leżąca u podstaw architektury Versal w silniku AMD AI Engine zapewnia dodatkowe optymalizacje, które odpowiadają wymaganiom transformerów w zakresie manipulacji danymi.

W większości przypadków producenci akceleratorów dostarczają narzędzia, które ułatwiają te optymalizacje. Ponieważ narzędzia te są zwykle podłączane do powszechnie dostępnych platform programistycznych, takich jak PyTorch lub Tensorflow, projektanci mogą wybrać architekturę, która odpowiada potrzebom docelowej aplikacji w zakresie przepustowości i zastosować wymagane optymalizacje.

W miarę poprawy wydajności sprzętu w połączeniu z postępami w optymalizacji oprogramowania i architekturze modeli, systemy wbudowane na brzegu sieci będą wprowadzać sztuczną inteligencję do nowych klas aplikacji bez konieczności polegania na usługach chmurowych. Dzięki szerokiemu wyborowi dostępne są rozwiązania do każdego zastosowania, a dostawcy z doświadczeniem w dziedzinie sztucznej inteligencji, tacy jak Farnell, okazują się nieocenionymi partnerami, którzy pomagają programistom dokonywać właściwych wyborów dostosowanych do ich konkretnych potrzeb.


reklama
reklama
Załaduj więcej newsów
© 2024 Evertiq AB November 20 2024 12:51 V23.2.3-1