Il futuro dei computer a scheda singola e dell'intelligenza artificiale

I computer a scheda singola (SBC, Single-board Computer) sono cambiati molto negli ultimi vent'anni. Le vecchie CPU a 8 bit con RAM limitata si sono trasformate in machine quad-core per l'elaborazione dei dati che possono avere le dimensioni di un pacchetto di chewing gum. Ora che l'edge computing è sempre più diffuso, quali possono essere i vantaggi per gli SBC? In questo articolo, scopriremo perché l'intelligenza artificiale (IA) si sta spostando fuori dai data center e in che modo i computer a scheda singola stanno diventando compatibili con l'intelligenza artificiale.

Vantaggi e svantaggi dell'IA

L'utilizzo dell'intelligenza artificiale nei prodotti è in costante crescita per i molti vantaggi che offre. Questa moderna soluzione contribuisce a creare prodotti personalizzati per i clienti e contemporaneamente è in grado di migliorare il prodotto per tutti i clienti.

Ad esempio, la diffusa piattaforma Google Assistant è in grado di apprendere e personalizzare le proprie risposte per i singoli individui, per poi sviluppare risposte personalizzate per un intero gruppo di individui. Questa procedura, a sua volta, aiuta a migliorare l'esperienza per tutti i clienti.

L'inserimento dell'IA in un prodotto può risultare piuttosto complicato. Il metodo più diffuso di implementazione dell'intelligenza artificiale è l'IA basata su cloud (o cloud-based). Questo approccio è impegnativo perché i sistemi di IA cloud-based hanno in esecuzione il proprio algoritmo principale di IA presso un data center. Il continuo trasferimento di informazioni tra i dispositivi dei clienti e i data center è un metodo che funziona, ma comporta intrinsecamente alcuni problemi per l'integrazione di un solido sistema di intelligenza artificiale.

Le questioni legate alla privacy sono diventate un problema delicato e importante con l'avvento dell'IA. Informazioni sensibili vengono inviate in un luogo sconosciuto che potrebbe essere potenzialmente accessibile a persone non autorizzate. Prendiamo in considerazione, ad esempio, i prodotti basati su Alexa di Amazon, molto diffusi tra i clienti. Alexa è una soluzione dotata di capacità IA a cui gli utenti possono fare domande e ottenere risposte. Se ci si pensa un attimo, ci si rende conto che Alexa è un po' come un telefono, nel senso che le domande dell'utente vengono inviate a un data center per l'elaborazione tramite IA, invece di essere elaborate localmente sul dispositivo. Le preoccupazioni in merito alla privacy nascono dal fatto che Alexa potrebbe potenzialmente registrare delle conversazioni e archiviarle senza che il cliente lo sappia o abbia dato il suo consenso alla procedura, rendendole così accessibili ai molti dipendenti Amazon che hanno accesso ai dati o ai sistemi IA.

La latenza è il problema successivo. I prodotti che utilizzano un data center remoto devono inviare i dati e attendere la loro elaborazione per poi ricevere i risultati. Dato che nessun collegamento Internet è immediato, ci sarà sempre un minimo ritardo e questa latenza potrà variare in base al traffico. Inoltre, poiché il numero di utenti della Rete aumenta, crescerà anche la latenza del sistema. Questo problema può potenzialmente fare in modo che i prodotti non rispondano come dovrebbero.

Un altro problema associato alla latenza è l'accesso stesso a Internet. Un dispositivo sempre acceso che dipende da un data center remoto necessita di un collegamento Internet continuo e non è infrequente che i provider di siti Web e i server DNS abbiano problemi che provocano l'inaccessibilità dei siti. Se si verifica una tale eventualità, qualsiasi prodotto che dipende da un data center non potrà essere completamente affidabile. Inoltre, qualsiasi luogo dotato di connessione dati inaffidabile o limitata non sarà adatto ai dispositivi che dipendono da Internet.

Introduzione dell'edge computing

L'edge computing è un concetto che offre il meglio di entrambi i mondi. È una soluzione in grado di ridurre le preoccupazioni in merito alla privacy, diminuire la dipendenza dall'accesso a Internet e fornire algoritmi IA sul dispositivo senza dover dipendere da un data center. Per dirla in modo semplice, l'edge computing funziona elaborando i dati localmente, ai margini della rete, dove per "margine" si intende il dispositivo finale, senza dispositivi Internet al di sotto di esso. Questo approccio risolve molti problemi che sono tipici dei sistemi IA basati su cloud.

L'edge computing sposta l'esecuzione dell'IA dal data center a un dispositivo. Mentre l'apprendimento automatico non viene in genere eseguito localmente (poiché si tratta di un'attività complessa e dispendiosa), le reti neurali prodotte come risultato del processo di apprendimento automatico possono essere eseguite localmente. Alcune delle attività che richiedono solo l'utilizzo delle reti neurali includono la scrittura manuale, il riconoscimento di gesti e di oggetti.

Un altro problema che l'edge computing è in grado di risolvere è la latenza. Le reti neurali IA vengono elaborate non appena i dati sono disponibili e ciò può diminuire significativamente il tempo di esecuzione. Invece di dover attendere che il dispositivo stabilisca una connessione Internet, invii i dati, ne aspetti l'elaborazione da parte del data center e restituisca i risultati al dispositivo per la risposta, l'edge computing esegue l'intero processo localmente, riducendo la necessità della connessione Internet e, di conseguenza, la latenza. L'utilizzo dell'edge computing inoltre, mantiene sul dispositivo locale le informazioni potenzialmente private, poiché non viene utilizzato un data center per elaborare le informazioni, spesso archiviando anche dei dati per effettuare l'apprendimento in un secondo tempo.

Tuttavia, sebbene l'edge computing possa sembrare una soluzione straordinaria, ha almeno un importante svantaggio: le reti neurali IA possono risultare estremamente complesse e difficili da eseguire. Benché i microcontrollers come Arduino possano essere utilizzati per eseguire le reti neurali, la velocità a cui sono in grado di far funzionare delle reti reali sarebbe incredibilmente limitata, tanto da far sembrare l'uso dei sistemi IA basati su cloud quasi immediato a confronto.

Fortunatamente per i progettisti, alcune aziende di informatica ed elettronica hanno iniziato a produrre coprocessori IA progettati per eseguire in modo efficiente le reti neurali e gli algoritmi di intelligenza artificiale. Dato che questi dispositivi sono dei coprocessori, il processore principale resta disponibile per l'esecuzione di altre attività.

Soluzione 1: gamma Google Coral

La gamma di prodotti Google Coral risulta una soluzione ideale per l'edge computing grazie all'integrazione del coprocessore TensorFlow. Questo coprocessore è progettato appositamente per applicazioni mobili e integrate. Esso consente l'esecuzione degli algoritmi IA TensorFlow Lite, che sono una versione ridotta di TensorFlow e offrono un compromesso più che accettabile per l'esecuzione dell'intelligenza artificiale sui dispositivi più piccoli.

La scheda di sviluppo è un SBC Arm A-53 quad-core che integra il coprocessore TensorFlow, oltre a un'unità GPU GC7000 Lite Graphics, 1 GB di RAM LPDDR4, 8 GB di memoria flash eMMC e un SoC Wi-Fi per il collegamento Internet. Con uscite HDMI, ingressi USB e GPIO, questa scheda rappresenta una soluzione eccellente per l'edge computing negli ambienti IA, anche per il riconoscimento di oggetti e il riconoscimento vocale, in particolare in luoghi in cui l'accesso a Internet è limitato.

In alcuni casi, la sostituzione dell'hardware fondamentale non è possibile. In tali circostanze, è più facile aggiungere un coprocessore come espansione ed è qui che entra in gioco l'acceleratore USB. L'acceleratore USB Coral è un dispositivo slave USB che fornisce a qualsiasi computer collegato un coprocessore TensorFlow, senza bisogno di una riprogettazione del PCB. Il vantaggio di questi due prodotti Coral è la loro semplice scalabilità, poiché l'unità processore della scheda di sviluppo può essere rimossa dalla scheda madre e inserita in un prodotto finito, mentre l'acceleratore USB è dotato di fori di montaggio e ha dimensioni incredibilmente ridotte (65×30 mm).

Soluzione 2: Nvidia Jetson Nano

In tutte le situazioni in cui sia necessario eseguire più reti neurali in parallelo, limitando al contempo il consumo di energia, si potrà sfruttare al meglio il dispositivo Nvidia Jetson Nano. Questo computer a scheda singola può eseguire reti neurali simultanee per applicazioni come il rilevamento di oggetti e l'elaborazione del linguaggio consumando appena 5 W.

Questo SBC basato su Arm A57 include 4 GB di RAM LPDDR4, archiviazione su scheda microSD, codificazione video 4K, decodificazione video 4K a 60 fps, varie porte USB 3.0, GPIO e altre porte per periferiche. Il nucleo IA di Nvidia Jetson Nano è in grado di eseguire 472 GFLOPS e i prodotti Jetson sono disponibili sia come kit per sviluppatori che come modulo (i kit per sviluppatori vengono utilizzati per le fasi di sviluppo, mentre i moduli sono impiegati nelle applicazioni finali dei prodotti).

Le dimensioni ridotte del kit di sviluppo (100×80×29 mm) lo rendono ideale per le location a basso profilo, mentre il basso consumo di energia di Nvidia Jetson Nano fa di questo dispositivo la soluzione perfetta per i luoghi più remoti che richiedono capacità IA, senza mettere a disposizione connessione Internet e alimentazione.

Soluzione 3: Intel Compute Stick

Intel Compute Stick è probabilmente uno dei computer a scheda singola più piccoli tra quelli disponibili oggi. Il suo vantaggio principale? È in grado di trasformare qualsiasi display HDMI in un computer.

A livello concreto, Intel Compute Stick non è più grande di un normale pacchetto di chewing gum (non arriva a 11,5 cm), tuttavia, al suo interno trovano spazio un processore Intel Atom o Intel Core M, fino a 4 GB di RAM e 64 GB di spazio di archiviazione.

Nonostante le dimensioni ridotte, Intel Compute Stick integra anche vari metodi di connettività, inclusi Wi-Fi, Bluetooth e tre porte USB. Intel Compute Stick non include un coprocessore IA, ma il suo potente nucleo lo rende un potenziale candidato per l'esecuzione di edge computing, che potrebbe virtualmente integrare le attività IA in qualsiasi display HDMI. Queste caratteristiche fanno di Intel Compute Stick la soluzione ideale per i terminali interattivi e i dispositivi per uso domestico che devono essere installati in spazi ristretti.

Soluzione 4: Raspberry Pi 4

Il modello più recente del computer Raspberry Pi, Raspberry Pi 4, è un altro potenziale candidato all'esecuzione di applicazioni di edge computing per svariati motivi. Innanzi tutto, il nucleo di Raspberry Pi 4 si basa su un processore quad-core A72 ARMv8-A, in grado di operare a ben 1,5 GHz, significativamente più veloce di tutti i suoi predecessori. In secondo luogo, Raspberry Pi 4 include 4 GB di RAM e una vasta gamma di metodi di connettività, tra cui Wi-Fi, Bluetooth e GPIO, che lo rendono in grado di interagire con vari dispositivi hardware. L'unità GPU Broadcom Video Core VI permette a Raspberry Pi di controllare più schemi fino a 4K e le dimensioni relativamente ridotte del dispositivo (88×58 mm) consentono di installarlo anche in spazi limitati.

Sebbene tutte queste caratteristiche rendano Raspberry Pi 4 un potenziale candidato per l'edge-computing, questo dispositivo non include un coprocessore IA, quindi tutti gli algoritmi IA devono essere eseguiti sulla CPU. Raspberry Pi 4 può essere associato all'acceleratore USB Coral per mettergli a disposizione un coprocessore TensorFlow. Il risultato di questa combinazione potrebbe dare vita a una piattaforma molto potente per la creazione di applicazioni IA con capacità di doppio schermo, porta per la fotocamera per il riconoscimento di oggetti e GPIO per l'interfaccia hardware.

Visualizza prodotti correlati

RASPBERRYPI4 4GB | 4 Model B

Raspberry Pi Foundation Sistema integrato, schede e kit di sviluppo Visualizza

Prospettive

Sebbene non tutti i computer a scheda singola contengano un coprocessore IA, l'integrazione di una di queste soluzioni nel proprio progetto (soprattutto nei sistemi integrati) può comportare dei vantaggi significativi. Inoltre, anche gli SBC che non includono un coprocessore IA possono comunque contare su un processore esterno come l'acceleratore USB Coral. In ogni caso, l'intelligenza artificiale nei dispositivi integrati diventerà una caratteristica normale nel prossimo decennio e, a quel punto, anche i dispositivi più semplici avranno un livello minimo di intelligenza.


ArrowPerks-Loyalty-Program-Signup-banner-IT


Ultime notizie

Sorry, your filter selection returned no results.

Non perderti le ultime novità sull'elettronica

Abbiamo aggiornato la nostra politica sulla privacy. Si prega di prendere un momento per rivedere questi cambiamenti. Cliccando su Accetto, l'utente accetta la Politica sulla privacy e Condizioni di utilizzo di Arrow Electronics.

Il nostro sito web mette i cookies sul vostro dispositivo per migliorare la vostra esperienza e il nostro sito. Leggete altre informazioni sui cookies che usiamo e su come disabilitarli qui. I cookies e le tecnologie di tracking possono essere usati per scopi commerciali.

Con un click su “Accept”, voi consentite l'inserimento dei cookies sul vostro dispositivo e l'uso da parte nostra di tecnologie di tracking. Per avere altre informazioni e istruzioni su come disabilitare i cookies e le tecnologie di tracking, clickate su “Read More” qui sotto. Mentre l'accettazione dei cookies e delle tecnologie di tracking è volontaria, una loro disabilitazione potrebbe determinare un funzionamento non corretto del sito web, ed alcuni messaggi di allarme potrebbero essere per voi meno importanti.

Noi rispettiamo la vostra privacy. Leggete qui la nostra politica relativa alla privacy