Trace Id is missing
Passa al contenuto principale

Che cos'è Deep Learning?

Deep Learning è un tipo di apprendimento automatico che usa le reti neurali artificiali per abilitare sistemi digitali per apprendere e prendere decisioni in base a dati non strutturati e non etichettati.

 

L'apprendimento automatico esegue in genere il training di sistemi di intelligenza artificiale per l'apprendimento da esperienze acquisite con i dati, il riconoscimento di criteri, la formulazione di raccomandazioni e l'adattamento. Grazie a Deep Learning, in particolare, invece di rispondere semplicemente a un set di regole, i sistemi digitali creano conoscenza dagli esempi e quindi usano tale conoscenza per reagire, comportarsi e agire come gli esseri umani.

Importanza del Deep Learning

I data scientist e gli sviluppatori usano software per Deep Learning per eseguire il training di computer in modo da analizzare set di dati complessi e di grandi dimensioni, completare attività complicate e non lineari e rispondere a testo, voce o immagini, spesso in modo più rapido e più accurato rispetto agli esseri umani. Queste funzionalità hanno molte applicazioni pratiche e hanno consentito molte innovazioni moderne. Deep Learning, ad esempio, viene usato dalle automobili senza conducente per elaborare le immagini e distinguere i pedoni da altri oggetti sulla strada o viene usato dai dispositivi per abitazioni intelligenti per comprendere i comandi vocali.

Deep Learning è importante perché i volumi di dati sono in continua crescita e la capacità di elaborazione è sempre più elevata e le società nei settori di vendita al dettaglio, sanitario, trasporti, produzione, tecnologia e di altro tipi stanno quindi investendo in Deep Learning per favorire l'innovazione, sbloccare opportunità e rimanere rilevanti.

Funzionamento di Deep Learning

Deep Learning si basa sulle architetture di rete neurale in più livelli, su unità di elaborazione di elementi grafici a prestazioni elevate distribuite sul cloud o in cluster e su volumi elevati di dati etichettati per ottenere livelli elevatissimi di accuratezza per il riconoscimento di testo, voce e immagini. Tutta questa potenza può aiutare gli sviluppatori a creare sistemi digitali con intelligenza quasi umana e semplificare il time-to-value accelerando il training dei modelli da qualche settimana a qualche ora.

Il training di un modello di automobile senza conducente, ad esempio, potrebbe richiedere migliaia di ore di video e milioni di immagini. Senza Deep Learning, questo livello di training non potrebbe essere eseguito su larga scala.

Che cos'è un framework di Deep Learning?

Per semplificare l'implementazione di modelli complessi di apprendimento automatico, gli sviluppatori si affidano a framework di Deep Learning come TensorFlow o PyTorch. Questi framework contribuiscono alla semplificazione del processo di raccolta dei dati, che possono essere quindi usati per eseguire il training delle reti neurali. È inoltre possibile usare acceleratori come ONNX Runtime con questi framework per accelerare il training e l'inferenza dei modelli.

Training di modelli di Deep Learning

Esistono diverse strategie e diversi metodi per il training dei modelli di Deep Learning. Di seguito verranno esaminati alcune strategie e alcuni metodi.

Apprendimento supervisionato

Grazie all'apprendimento supervisionato, viene eseguito il training di un algoritmo su set di dati con etichette. Quando l'algoritmo effettua una determinazione su una parte delle informazioni, può usare quindi le etichette incluse nei dati per controllare se la determinazione è corretta. Con l'apprendimento supervisionato è necessario che i dati su cui viene eseguito il training dei modelli vengano forniti da esseri umani, che etichettano i dati prima di usarli per il training dell'algoritmo.

Apprendimento non supervisionato

Grazie all'apprendimento non supervisionato, il training degli algoritmi viene eseguito su dati che non contengono etichette o informazioni che l'algoritmo può usare per verificare le determinazioni. Il sistema ordina e classifica invece i dati in base ai criteri riconosciuti in modo autonomo.

Apprendimento per rinforzo

Grazie all'apprendimento per rinforzo, un sistema risolve le attività usando diversi tentativi per prendere una serie di decisioni in sequenza e ottenere un risultato previsto anche in un ambiente non semplice. Con l'apprendimento per rinforzo l'algoritmo non usa i set di dati per effettuare determinazioni, ma usa invece le informazioni raccolte da un ambiente.

Deep Learning per rinforzo

Quando le tecniche di Deep Learning e di apprendimento automatico vengono combinate, creano un tipo di apprendimento automatico definito Deep Learning per rinforzo. Deep Learning per rinforzo usa lo stesso processo decisionale basato su tentativi e lo stesso raggiungimento di obiettivi complessi usati dall'apprendimento per rinforzo, ma si basa anche sulle funzionalità di Deep Learning per elaborare e comprendere quantità elevate di dati non strutturati.

Per cosa viene usato Deep Learning?

Deep Learning viene usato nei business in diversi settori e per una vasta gamma di casi d'uso. Ecco alcuni esempi degli usi comuni di Deep Learning:

Riconoscimento di immagini, voce ed emozioni

Il software di Deep Learning viene usato per incrementare l'accuratezza del riconoscimento di immagini, voce ed emozioni e per abilitare ricerche di foto, assistenti digitali personali, veicoli senza conducente, sicurezza pubblica, sicurezza digitale e altre tecnologie intelligenti.

Esperienze personalizzate

I servizi di streaming, i rivenditori di e-commerce e altri business usano i modelli di Deep Learning per favorire raccomandazioni automatizzate per prodotti, film, musica o altri servizi e per perfezionare le esperienze dei clienti in base a cronologie di acquisto, comportamento passato e altri dati.

Chatbot

I business all'avanguardia usano Deep Learning come base per chatbot online attivati tramite testo o voce per domande frequenti, transazioni di routine e in particolare per l'assistenza clienti. Questi business sostituiscono team di responsabili dell'assistenza clienti e le code di clienti in attesa con risposte automatiche, contestualmente appropriate e utili.

Assistenti digitali personali

Gli assistenti vocali personali attivati dalla voce usano Deep Learning per comprendere il parlato, rispondere in modo appropriato alle domande e ai comandi in linguaggio naturale e anche essere occasionalmente spiritosi.

Veicoli senza conducente

Le automobili senza conducente, rappresentanti non ufficiali per intelligenza artificiale e Deep Learning, usano gli algoritmi di Deep Learning per elaborare più feed di dati dinamici in pochi secondi, non chiedere mai indicazioni e reagire agli imprevisti, in modo più veloce rispetto a un conducente umano.

Molti business usano software di apprendimento automatico open source per offrire soluzioni di Deep Learning nelle organizzazioni.

Che cosa sono le reti neurali?

Una rete neurale artificiale è un'architettura digitale che simula i processi cognitivi umani per modellare criteri complessi, sviluppare previsioni e reagire in modo appropriato agli stimoli esterni. I dati strutturati sono necessari per molti tipi di apprendimento automatico, ma le reti neurali sono invece in grado di interpretare gli eventi nel mondo circostante come dati che possono essere elaborati.

Quando leggi un report, guardi un film, guidi un'auto o annusi un fiore, miliardi di neuroni nel tuo cervello elaborano le informazioni tramite minuscoli segnali elettrici. Ogni neurone elabora gli input e i risultati vengono restituiti al neurone successivo per l'elaborazione aggiuntiva, in modo da produrre infine in modo immediato un'informazione dettagliata aziendale, un sorriso, una pressione del piede sul freno o un po' di gioia. Nell'apprendimento automatico le reti neurali consentono ai sistemi digitali di interpretare e reagire alle situazioni in modo analogo.

Una rete neurale artificiale è analoga a un cervello pieno di neuroni digitali e, benché la maggior parte delle reti neurali artificiali sia un'imitazione approssimativa di un cervello reale, queste reti possono comunque elaborare volumi elevati di dati non lineari per risolvere problemi complessi che potrebbero altrimenti richiedere un intervento umano. Gli analisti bancari possono ad esempio usare una rete neurale artificiale per elaborare le richieste di prestiti e prevedere la probabilità di insolvenza di un richiedente.

Cosa è possibile fare con le reti neurali

Nell'apprendimento automatico le reti neurali vengono usate per l'apprendimento e la modellazione di input e output complessi e precari, l'inferenza di relazioni nascoste e la creazione di previsioni senza limitazioni relative alla distribuzione dei dati. I modelli di rete neurale sono la base per molte applicazioni di Deep Learning, tra cui visione artificiale ed elaborazione del linguaggio naturale, che possono contribuire al supporto di protezione da illeciti, riconoscimento di visi o veicoli autonomi.

La maggior parte dei business si basa sulle previsioni per definire decisioni aziendali, strategie di vendita, criteri finanziari e utilizzo delle risorse. Le limitazioni delle previsioni tradizionali rendono tuttavia spesso difficile prevedere processi complessi e dinamici con più fattori sottostanti spesso nascosti, ad esempio i prezzi del mercato azionario. I modelli di rete neurale di Deep Learning contribuiscono all'esposizione di relazioni non lineari complesse e alla modellazione di fattori nascosti, in modo da consentire ai business di sviluppare previsioni accurate per la maggior parte delle attività aziendali.

Reti neurali comuni

Sono disponibili dozzine di tipi diversi di reti neurali di intelligenza artificiale e ogni tipo è ottimale per diverse applicazioni di Deep Learning. Usa una rete neurale artificiale ottimale per il tuo business e i tuoi requisiti tecnologici. Ecco alcuni esempi di reti neurali artificiali comuni:

Rete neurale convoluzionale (CNN, Convolutional Neural Network)

Gli sviluppatori usano una rete neurale convoluzionale per aiutare i sistemi di intelligenza artificiale a convertire immagini in matrici digitali. Le reti neurali convoluzionali, usate principalmente per la classificazione immagini e il riconoscimento di oggetti, sono ottimali per riconoscimento viso, rilevamento di argomenti e analisi della valutazione.

Rete neurale deconvoluzionale (DNN, Deconvolutional Neural Network)

Se segnali di rete complessi o con volumi elevati vanno persi o risultano convoluti con altri segnali, una rete neurale deconvoluzionale ne semplificherà l'individuazione. Le reti neurali deconvoluzionali risultano utili per l'elaborazione di immagini a risoluzione elevata e stime di flussi ottici.

Rete generativa avversaria (GAN; Generative Adversarial Network)

I tecnici usano una rete generativa avversaria per eseguire il training dei modelli sul modo in cui generare nuove informazioni o materiali che simulano le proprietà specifiche dei dati di training. Le reti generative avversarie aiutano i modelli a distinguere differenze minime tra gli originali e le copie per creare copie più autentiche. Le applicazioni di una rete generativa avversaria includono generazione di immagini e video ad alta fedeltà, riconoscimento avanzato del viso e super risoluzione.

Rete neurale ricorrente (RNN, Recurrent Neural Network)

Una rete neurale ricorrente esegue l'input di dati in livelli nascosti con ritardi specifici. Il network computing comprende le informazioni cronologiche negli stati correnti e gli input più elevati non modificano le dimensioni dei modelli. Le reti neurali ricorrenti sono ottimali per riconoscimento vocale, previsioni avanzate, robotica e altri carichi di lavoro complessi di Deep Learning.

Convertitori

I convertitori sono stati progettati per gestire dati di input sequenziali. Non sono tuttavia limitati all'elaborazione di tali dati in ordine sequenziale. I convertitori usano invece l'attenzione, ovvero una tecnica che consente ai modelli di assegnare livelli diversi di influenza a diversi parti di dati di input e di identificare il contesto per le singole parti di dati in una sequenza di input. Questo approccio consente un livello incrementato di parallelizzazione, che può ridurre il tempo necessario per il training dei modelli.

Confronto tra apprendimento automatico e reti neurali

Anche se le reti neurali vengono considerate un sottoinsieme dell'apprendimento automatico, esistono alcune differenze significative tra reti neurali e modelli di apprendimento automatico normali.

Le reti neurali, prima di tutto, sono in genere più complesse e possono operare in modo più indipendente rispetto ai modelli di apprendimento automatico normali. Una rete neurale, ad esempio, è in grado di determinare autonomamente se le rispettive previsioni e i rispettivi risultati sono accurati, mentre un modello di apprendimento automatico richiederebbe l'input di un tecnico umano per eseguire questa operazione.

Le reti neurali sono inoltre strutturate in modo che la rete neurale possa continuare ad apprendere e prendere decisioni intelligenti in modo autonomo. I modelli di apprendimento automatico, invece, sono limitati al processo decisionale basato solo sugli elementi per cui ne è stato eseguito in modo specifico il training.

Inizia a usare Deep Learning in Azure

Supporta il riconoscimento delle immagini con le reti neurali oppure ottimizza l'elaborazione del linguaggio naturale con modelli BERT veloci, semplici e accurati per l'elaborazione del linguaggio naturale. Esplora i modi in cui creare, eseguire il training e distribuire tutti i tipi di modelli di Deep Learning con Azure Machine Learning.

Esplora l'apprendimento automatico per i data scientist

Scopri come creare soluzioni di apprendimento automatico su scala cloud in Azure ed esplora gli strumenti di apprendimento automatico per data scientist e tecnici di apprendimento automatico.