Apprendimento profondo: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
→‎Diagnostica: prima veniva riportato che AlphaGo Zero era un software per il riconoscimento del occhio umano, quando è un software che sfruttando il deep learning , è stato in grado di battere il campione mondiale di Go
Riga 15: Riga 15:


== Storia dell'apprendimento profondo ==
== Storia dell'apprendimento profondo ==
I primi studi sulle reti neurali multistrato sono stati prodotti dallo scienziato giapponese Kunihiko Fukushima che, con il modello del [[cognitrone]] prima, e del neo-cognitrone<ref>{{Cita pubblicazione|nome=Kunihiko|cognome=Fukushima|data=1980-04-01|titolo=Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position|rivista=Biological Cybernetics|volume=36|numero=4|pp=193–202|lingua=en|accesso=2020-06-07|doi=10.1007/BF00344251|url=https://doi.org/10.1007/BF00344251}}</ref> poi, ha introdotto l'idea di area di connessione per i neuroni che si è sviluppata nelle reti neurali convoluzionali.

Lo studio delle reti neurali artificiali multistrato si è sviluppato già negli '''anni Ottanta''', ma solo nell'ultimo decennio si sta dimostrando la loro utilità in un'ampia gamma di settori e applicazioni. Più nel dettaglio, il recente successo dell'apprendimento profondo è dovuto al superamento di alcuni ostacoli che in passato hanno impedito il raggiungimento dei risultati attesi, come la mancanza di dati o di un'adeguata capacità computazionale. Infatti, oggi sono incrementati i dati a disposizione (v. [[Big data|Big Data]]), sono stati sviluppati sistemi di calcolo parallelo basati su [[Graphics processing unit|GPU]] e, soprattutto, sono stati ottimizzati i metodi di addestramento delle reti neurali, che oggi possono trovare soluzioni a problemi che in passato hanno impedito ai ricercatori di ottenere risultati soddisfacenti.
Lo studio delle reti neurali artificiali multistrato si è sviluppato già negli '''anni Ottanta''', ma solo nell'ultimo decennio si sta dimostrando la loro utilità in un'ampia gamma di settori e applicazioni. Più nel dettaglio, il recente successo dell'apprendimento profondo è dovuto al superamento di alcuni ostacoli che in passato hanno impedito il raggiungimento dei risultati attesi, come la mancanza di dati o di un'adeguata capacità computazionale. Infatti, oggi sono incrementati i dati a disposizione (v. [[Big data|Big Data]]), sono stati sviluppati sistemi di calcolo parallelo basati su [[Graphics processing unit|GPU]] e, soprattutto, sono stati ottimizzati i metodi di addestramento delle reti neurali, che oggi possono trovare soluzioni a problemi che in passato hanno impedito ai ricercatori di ottenere risultati soddisfacenti.



Versione delle 09:44, 7 giu 2020

L'apprendimento profondo (in inglese deep learning) è quel campo di ricerca dell'apprendimento automatico (in inglese machine learning) e dell'intelligenza artificiale che si basa su diversi livelli di rappresentazione, corrispondenti a gerarchie di caratteristiche di fattori o concetti, dove i concetti di alto livello sono definiti sulla base di quelli di basso. In altre parole, secondo la definizione dell'Osservatorio Artificial Intelligence del Politecnico di Milano, per apprendimento profondo si intende un insieme di tecniche basate su reti neurali artificiali organizzate in diversi strati, dove ogni strato calcola i valori per quello successivo affinché l'informazione venga elaborata in maniera sempre più completa[1].

Tra le architetture di apprendimento profondo si annoverano le reti neurali profonde, la convoluzione di reti neurali profonde, le Deep belief network, e reti neurali ricorsive, che sono state applicate nella visione artificiale, nel riconoscimento automatico del discorso, nell'elaborazione del linguaggio naturale, nel riconoscimento audio e nella bioinformatica. "Apprendimento profondo" è un'espressione oggi famosa che ridà lustro al concetto di rete neurale.

Introduzione

Definizioni

L'apprendimento profondo è definito come una classe di algoritmi di apprendimento automatico che[2]:

  • usano vari livelli di unità non lineari a cascata per svolgere compiti di estrazione di caratteristiche e di trasformazione. Ciascun livello successivo utilizza l'uscita del livello precedente come input. Gli algoritmi possono essere sia di tipo supervisionato sia non supervisionato e le applicazioni includono l'analisi di pattern (apprendimento non supervisionato) e classificazione (apprendimento supervisionato).
  • sono basati sull'apprendimento non supervisionato di livelli gerarchici multipli di caratteristiche (e di rappresentazioni) dei dati. Le caratteristiche di più alto livello vengono derivate da quelle di livello più basso per creare una rappresentazione gerarchica.
  • fanno parte della più ampia classe di algoritmi di apprendimento della rappresentazione dei dati all'interno dell'apprendimento automatico.
  • apprendono multipli livelli di rappresentazione che corrispondono a differenti livelli di astrazione; questi livelli formano una gerarchia di concetti.

Ciò che queste definizioni hanno in comune sono (1) i livelli multipli di unità non lineari e (2) l'apprendimento (supervisionato o non supervisionato) in ogni livello della rappresentazione di caratteristiche, in cui i livelli formano una gerarchia delle caratteristiche stesse[2]. La composizione di ciascun livello di unità non lineari usata in un algoritmo di apprendimento profondo dipende dal problema che deve essere risolto. Nell'apprendimento profondo possono venire usati livelli nascosti di una rete neurale artificiale e insiemi di formule proposizionali[3].

Storia dell'apprendimento profondo

I primi studi sulle reti neurali multistrato sono stati prodotti dallo scienziato giapponese Kunihiko Fukushima che, con il modello del cognitrone prima, e del neo-cognitrone[4] poi, ha introdotto l'idea di area di connessione per i neuroni che si è sviluppata nelle reti neurali convoluzionali.

Lo studio delle reti neurali artificiali multistrato si è sviluppato già negli anni Ottanta, ma solo nell'ultimo decennio si sta dimostrando la loro utilità in un'ampia gamma di settori e applicazioni. Più nel dettaglio, il recente successo dell'apprendimento profondo è dovuto al superamento di alcuni ostacoli che in passato hanno impedito il raggiungimento dei risultati attesi, come la mancanza di dati o di un'adeguata capacità computazionale. Infatti, oggi sono incrementati i dati a disposizione (v. Big Data), sono stati sviluppati sistemi di calcolo parallelo basati su GPU e, soprattutto, sono stati ottimizzati i metodi di addestramento delle reti neurali, che oggi possono trovare soluzioni a problemi che in passato hanno impedito ai ricercatori di ottenere risultati soddisfacenti.

Oggi i sistemi di apprendimento profondo, fra altre utilità, permettono di:

  • identificare oggetti nelle immagini e nei video;
  • trascrivere il parlato in testo;
  • individuare e interpretare gli interessi degli utenti online, mostrando i risultati più pertinenti per la loro ricerca.

Grazie a queste e altre soluzioni, l'apprendimento profondo sta vivendo anni di rapido progresso, arrivando anche, in molti casi, a superare le prestazioni degli esseri umani. Basta pensare all'applicazione degli algoritmi di apprendimento profondo nell’ambito dei problemi decisionali sequenziali, all’interno dell'apprendimento per rinforzo: un caso esemplare è stato lo sviluppo di AlphaGo, un software che nel 2016 ha battuto il campione mondiale di Go, diversi anni di anticipo rispetto alle previsioni degli esperti.[1]

Architetture

Reti neurali profonde

Reti neurali convoluzionali

La rete neurale convoluzionale (Convolution Neural Network, CNN) è un metodo di scelta per elaborare dati visuali e dati di tipo 2D. Una CNN è composta da uno più strati convoluzionali con strati completamente connessi verso l'alto. Usa anche pesi e strati comuni (pooling layers). In particolare il "max-pooling" è spesso usato nell'architettura convoluzionale di Fukushima. Quest'architettura permette alle CNN di avere dei vantaggi dalle strutture 2D di ingresso. Sono particolarmente efficaci nell'area delle immagini e di riconoscimento del discorso. Possono essere allenate anche con la backpropagation standard. Sono inoltre facili da allenare rispetto ad altre reti neurali profonde o feed-forward ed hanno molti meno parametri da stimare. Un programma di CNN è il DeepDream di Google[5].

Reti neurali ricorsive

Una rete neurale ricorsiva è una rete neurale in cui alcuni elementi ricorsive ossia si basano su loro stessi.

Compressore di storia neurale

Reti deep belief

Autoencoder impilato

Rete di impilamento profondo

Rete di impilamento profondo di tensore

Spike-and-slab RBM

Macchine di Boltzmann profonde

Macchine kernel multilivello

Strutture di memoria differenziabile LSTM correlata

Reti deep-q

Questa è una classe di modelli d'apprendimento profondi usando il Q-learning, una forma di apprendimento per rinforzo, del Google DeepMind. Risultati preliminari sono stati presentati nel 2014 con un articolo pubblicato su Nature nel febbraio 2015. L'applicazione a cui si fa riferimento è un gioco dell'Atari 2600.

Hashing semantico

Diagnostica

Nel 2018, l'azienda britannica DeepMind, l'Ospedale Oculistico di Moorfield e l'University College di Londra hanno lanciato un software che promette di riconoscere l'anatomia dell'occhio, la patologia e suggerire ai medici un trattamento sanitario adeguato.[6]
L'occhio del paziente viene esaminato mediante una tomografia a coerenza ottica che acquisisce immagini a colori in alta definizione, a loro volta elaborate da un algoritmo che le confronta con la base di conoscenza clinica, in modo tale da identificare la diagnosi e la soluzione terapeutica ottimale per il caso specifico.

Applicazioni

  • Riconoscimento automatico del discorso;
  • Riconoscimento di immagini;
  • Elaborazione del linguaggio naturale;
  • Scoperta di farmaci e tossicologia;
  • Gestione delle relazioni con i clienti;
  • Sistema di raccomandazione;
  • Bioinformatica;
  • Guida autonoma;
  • Identificazione delle frodi;
  • Diagnosi mediche.

Librerie software

Note

  1. ^ a b Osservatori Digital Innovation, Alla scoperta del Deep Learning: significato, esempi e applicazioni, su blog.osservatori.net. URL consultato il 30 maggio 2019.
  2. ^ a b (EN) L. Deng e D. Yu, Deep Learning: Methods and Applications (PDF), in Foundations and Trends in Signal Processing, vol. 7, n. 3-4, 2014, pp. 1-199, DOI:10.1561/2000000039.
  3. ^ (EN) Yoshua Bengio, Learning Deep Architectures for AI (PDF), in Foundations and Trends in Machine Learning, vol. 2, n. 1, 2009, pp. 1-127, DOI:10.1561/2200000006 (archiviato dall'url originale il 4 marzo 2016).
  4. ^ (EN) Kunihiko Fukushima, Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position, in Biological Cybernetics, vol. 36, n. 4, 1º aprile 1980, pp. 193–202, DOI:10.1007/BF00344251. URL consultato il 7 giugno 2020.
  5. ^ Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke e Andrew Rabinovich, Going Deeper with Convolutions, in Computing Research Repository, 2014, arXiv:1409.4842.
  6. ^ Marco Tonelli, L'intelligenza artificiale di DeepMind riconosce più di 50 malattie oculari, su lastampa.it, La Stampa, 3 settembre 2018. URL consultato il 26 settembre 2019 (archiviato il 26 settembre 2019). Ospitato su archive.is.
  7. ^ deeplearning4j
  8. ^ B. C. Ooi, K.-L. Tan, S. Wang, W. Wang, G. Chen, J. Gao, Z. Luo, A.K.H. Tung, Y. Wang, Z. Xie, M. Zhang, K. Zheng. "SINGA: A Distributed Deep Learning Platform," ACM Multimedia (Open Source Software Competition). 2015.
  9. ^ W. Wang, G. Chen, T. T. A. Dinh, J. Gao, B. C. Ooi, K.-L.Tan, S. Wang. "SINGA: Putting Deep Learning in the Hands of Multimedia Users," ACM Multimedia. 2015.
  10. ^ Jeff Dean e Rajat Monga, TensorFlow: Large-scale machine learning on heterogeneous systems (PDF), su TensorFlow.org, Google Research, 9 novembre 2015. URL consultato il 10 novembre 2015.

Collegamenti esterni

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica