AIAE » E-LEARNING » INTERVIEW 7
Apprendimento automatico
I frammenti di intervista che seguono sono stati rilasciati da Fabio Del Frate e riguardano la definizione di IA, gli aspetti più importanti dell’apprendimento automatico, le interpretazioni sul deep learning, i temi dell’apprendimento supervisionato e non supervisionato e la loro relazione con l’IA, nonché i diversi tipi di apprendimento automatico.
transcript
Fabio Del Frate ha conseguito presso l’Università di Roma “Tor Vergata” la laurea specialistica in Ingegneria Elettronica (1992) e il dottorato di ricerca in Informatica (1997). Nel 1995-1996 è stato Visiting Scientist presso il Massachusetts Institute of Technology e dal 1998 al 1999 ha lavorato presso l’Agenzia Spaziale Europea. Successivamente è entrato a far parte dell’Università di Roma “Tor Vergata”, dove attualmente è professore associato di Telerilevamento ed Elettromagnetismo Applicato in vari programmi di Master e Dottorato. Su questi temi è stato docente in diverse università europee, nonché principal investigator / project manager in diversi progetti finanziati dall’Agenzia Spaziale Europea (ESA) e dall’Agenzia Spaziale Italiana (ASI), conducendo attività di ricerca nel campo dell’Intelligenza Artificiale applicata ai dati satellitari per l’Osservazione della Terra (di seguito indicata come “EO”).
Quiz question 1/8
L’intervistato, Fabio Del Frate, è dottore in
Quiz question 1/1
You have completed the Quiz!
transcript
Prof. Del Frate, partiamo dalle basi. Che cos’è l’Intelligenza Artificiale?
Per spiegare brevemente che cos’è l’intelligenza artificiale mi piace spesso citare uno dei padri dell’IA, il Prof. Nils John Nilsson. Per lui “l’intelligenza artificiale è quell’attività dedicata a rendere intelligenti le macchine, e l’intelligenza è quella qualità che permette a un’entità di funzionare in modo appropriato e con lungimiranza nel suo ambiente”.
Quindi, possiamo dire che forniamo alle macchine e ai computer più gradi di libertà. Chiediamo loro di prendere decisioni autonome per andare oltre quello che è successo con la programmazione tradizionale dei computer, cioè eseguire sostanzialmente una sequenza, anche se lunga e complessa, di linee di comando.
Come lo realizziamo? Consiste essenzialmente nell’alimentare le macchine con dati e nel fornire loro la capacità di cercare relazioni, anche molto sottili, tra questi dati. È con questi due elementi: dati e modelli di interpretazione, che l’IA sviluppa e costruisce la propria conoscenza, la propria esperienza.
Credo che in questo contesto potrebbe essere interessante anche una prospettiva storica, per cui potremmo essere curiosi di sapere quando sono stati proposti i primi algoritmi di intelligenza artificiale e di apprendimento automatico. Le risposte potrebbero essere diverse, ma la mia opinione è che per trovare le radici dell’intelligenza artificiale dovremmo risalire al 1943, quando il primo modello matematico di reti neurali fu presentato nell’articolo scientifico “A logical calculus of the ideas immanent in nervous activity” di Walter Pitts e Warren McCulloch. In questo articolo per la prima volta viene presentato un singolo neurone come unità elementare di elaborazione non lineare e si ipotizza che sia connesso ad altri neuroni. In altre parole, una prima approssimativa ma efficace rappresentazione matematica del cervello.
Ora il punto è: tutto questo è pericoloso? Credo che la risposta sia “Sì, potrebbe esserlo”, ma proprio come lo sarebbe, o lo è stato, ogni volta che siamo affascinati da una nuova tecnologia e vogliamo lasciarla crescere. In realtà, la questione dello sviluppo di un’IA “sicura” è sicuramente all’attenzione delle comunità di scienziati e ricercatori. Il punto chiave è che gli esseri umani dovrebbero sempre agire come supervisori. Le regole, le linee guida, ma soprattutto i dati su cui la macchina, come abbiamo detto, costruisce la sua conoscenza, su cui si baserà quando prenderà le sue decisioni, sono forniti da esperti umani, in modo che la macchina si comporti sì con un certo livello di autonomia, ma all’interno di un campo di gioco ben definito, i cui confini sono decisi dagli esseri umani.
Quiz question 1/8
L’intelligenza artificiale sta fornendo alle macchine e ai computer più gradi di libertà, il che significa che alle macchine viene chiesto di andare oltre la tradizionale
Quiz question 1/1
You have completed the Quiz!
transcript
Che cos’è l’apprendimento automatico?
Direi che il machine learning è un possibile, credo al momento il più utilizzato, processo tecnico per generare intelligenza artificiale all’interno di una macchina. Abbiamo già visto che ci sono due attori principali: i dati e il modello, più esattamente un modello matematico. La sfida è trovare i parametri del modello matematico in modo che possa rappresentare le relazioni tra i dati. Tutto si basa sulla creazione di un processo di apprendimento basato sui dati stessi. Possiamo avere diversi tipi di modelli, ad esempio reti neurali o macchine vettoriali di supporto e, di conseguenza, diversi algoritmi per apprendere il modello. L’obiettivo finale, tuttavia, è sempre lo stesso: estrarre conoscenza dai dati utilizzati nel processo di addestramento e applicare questa conoscenza estratta a nuovi dati. A proposito, la valutazione della bontà delle prestazioni del modello sui nuovi dati, cioè sui dati non considerati durante la fase di addestramento, è molto importante. Ci dice quanto il modello sia applicabile nel mondo reale, quanto sia in grado di generalizzare.
In ogni caso, la qualità e la quantità dei dati utilizzati durante la fase di apprendimento sono fattori cruciali per una performance di successo. In particolare, la quantità di dati deve essere statisticamente significativa per fornire le caratteristiche rilevanti del fenomeno che si vuole indagare. Un’altra importante questione chiave è decidere quanto complesso debba essere il nostro modello matematico. Sarebbe un problema serio se scegliessimo un modello troppo semplice per cercare relazioni molto sottili tra i dati ma, allo stesso tempo, se le regole alla base dei dati sono meno complicate, anche la struttura del modello può essere più leggera, a volte…. meno è meglio, come diciamo noi, dove meno si riferisce al numero di parametri che caratterizzano il modello.
Inoltre, la complessità del modello ha anche a che fare con il tempo necessario per addestrare il modello e con la quantità di dati necessari per l’implementazione del processo di apprendimento completo.
Quiz question 1/8
Che cos'è il Machine learning?
Quiz question 1/8
Cosa fa il Machine learning?
Quiz question 1/8
Quali sono i risultati dei diversi tipi di modelli?
Quiz question 1/8
Perché è importante valutare le prestazioni del modello su nuovi dati?
Quiz question 1/8
Quali sono i fattori cruciali per il successo dell'IA?
Quiz question 1/1
You have completed the Quiz!
transcript
AI e ML sono spesso associati a termini come “deep learning”. Che cos’è l’apprendimento profondo?
Possiamo dire che la parola deep nell’apprendimento profondo ha due significati diversi, anche se molto correlati. Uno ha a che fare con la rappresentazione gerarchica dello scenario a cui siamo interessati. Se lo scenario è, per esempio, il riconoscimento di un oggetto, deep ha a che fare con le molteplici fasi del processo di riconoscimento dell’oggetto: come animale, come cane, come cane dalmata.
Queste molteplici fasi di rappresentazione trovano una corrispondenza con i diversi strati del modello matematico che vogliamo utilizzare per rappresentarlo, quindi, per semplificare, uno strato del modello matematico si concentra sull’animale, uno strato sul cane, uno strato sul tipo di cane. Questo è ciò che accade con una rete neurale profonda. Le reti neurali sono i modelli più utilizzati per l’apprendimento profondo. Abbiamo quindi il secondo significato, che è un significato topologico, che riguarda il numero di strati dell’architettura. Abbiamo quindi reti neurali profonde, come le reti neurali convoluzionali, che comportano molti strati di elaborazione, contro reti neurali superficiali, come i convenzionali percettori multistrato, che sono reti neurali con un numero limitato di strati. Per tornare a quanto detto sulla complessità dei modelli, le architetture di deep learning sono indubbiamente molto complesse, il che comporta un elevato carico computazionale e la disponibilità di enormi quantità di dati di apprendimento. In effetti, la necessità di un numero molto elevato di dati ha stimolato lo sviluppo di nuove tecniche per la cosiddetta “data augmentation”, che consiste nell’aumentare il numero di dati partendo da un insieme di dati più limitato.
Quiz question 1/8
Possiamo dire che il Deep learning ha due significati?
Il Deep learning è responsabile di più fasi del processo di riconoscimento degli oggetti?
Un modello matematico contiene diversi livelli di conoscenza?
È vero che le reti neurali non sono le reti più utilizzate per il Deep learning?
Uno dei significati del Deep learning è quello topologico?
Le reti neurali possono essere superficiali o convoluzionali?
L'apprendimento profondo è una strategia non complessa?
Quiz question 1/1
You have completed the Quiz!
transcript
Che cos’è l’apprendimento supervisionato? Può fare qualche esempio di applicazioni che lo utilizzano?
Direi che l’apprendimento supervisionato è il ramo più comune dell’apprendimento automatico oggi. L’apprendimento supervisionato è una forma di apprendimento in cui, per un dato input, è disponibile un risultato “vero” e questa verità può essere insegnata al modello. In altre parole, come insegnante o supervisore, per ogni input dato al modello sappiamo quale dovrebbe essere l’output del modello e vogliamo che il modello incorpori la regola generale. In genere, questo avviene minimizzando quello che viene chiamato errore o funzione di costo, che rappresenta la distanza tra i valori di uscita desiderati e i valori di uscita effettivi generati dal modello durante la fase di addestramento. In realtà, si può ritenere che l’apprendimento supervisionato abbia successo quando l’errore complessivo finale su un insieme di esempi, che non sono stati utilizzati durante la fase di addestramento, è inferiore a una soglia predefinita. La fase di addestramento può essere molto lunga, ma una volta conclusa correttamente, si dispone di uno strumento molto potente, che opera sostanzialmente in tempo reale, per l’elaborazione dei nuovi dati. L’apprendimento supervisionato può essere utile in molti campi. Un’applicazione piuttosto massiccia riguarda la classificazione delle immagini. In questo caso i dati veri sono quelli etichettati dall’interpretazione umana delle immagini. La classificazione può essere eseguita a vari livelli: livello di pixel, livello di patch, livello di oggetto. Il livello di classificazione guida la scelta dell’input che si vuole dare al modello. Più in particolare, l’apprendimento supervisionato è oggi molto applicato nell’Osservazione della Terra, dove si vuole effettuare una stima dei parametri bio-geofisici a partire dai dati raccolti dai satelliti. Un esempio interessante riguarda il precision farming in agricoltura. Se vogliamo monitorare la biomassa di una coltura per ottimizzare la quantità di fertilizzante da utilizzare, possiamo sfruttare le misure satellitari effettuate su quella coltura. Tuttavia, soprattutto nella regione delle microonde dello spettro elettromagnetico, l’estrazione dei parametri della vegetazione non è banale perché la misura è anche, diciamo, contaminata dal terreno sottostante, per cui i modelli supervisionati dall’IA possono sicuramente essere uno degli strumenti che ci permettono di recuperare quella parte di informazioni nella misura più legata alla vegetazione, scartando quella più condizionata dal terreno.
Quiz question 1/8
Vero o falso? L'apprendimento supervisionato non è una sottocategoria comune del Machine learning.
Quiz question 1/8
Vero o falso? L'errore rappresenta la distanza tra i valori di uscita decisi e quelli effettivi
Quiz question 1/8
Vero o falso? La fase di addestramento dell'apprendimento supervisionato è breve.
Quiz question 1/8
Vero o falso? Il risultato finale dell'apprendimento supervisionato è molto potente, perché può operare su nuovi dati in tempo reale
Quiz question 1/8
Vero o falso? La classificazione delle immagini e il rilevamento degli oggetti sono esempi di apprendimento supervisionato.
Quiz question 1/8
Vero o falso? L'apprendimento supervisionato è raramente applicato alle osservazioni terrestri.
Quiz question 1/8
Vero o falso? I parametri biofisici provenienti dai dati raccolti dai satelliti sono inclusi nell'apprendimento supervisionato quando si effettuano osservazioni della terra.
Quiz question 1/1
You have completed the Quiz!
transcript
Che cos’è l’apprendimento non supervisionato? Può fornire alcuni esempi di applicazioni che lo utilizzano?
Lo scopo principale dell’apprendimento non supervisionato è quello di trovare correlazioni tra i dati in modo da raggrupparli in categorie simili. Nell’apprendimento non supervisionato non abbiamo bisogno di operazioni di etichettatura esterne o di un insegnante che fornisca valori target. L’intero addestramento del modello matematico si basa solo sui dati originali esistenti, quindi in questo caso, rispetto all’apprendimento supervisionato, il processo è caratterizzato da un maggior livello di automazione. Possiamo dire che, al termine dell’addestramento, il modello organizza una rappresentazione interna dei dati che li rende più comprensibili e facilmente interpretabili. Come per gli altri paradigmi di apprendimento, anche l’apprendimento non supervisionato può essere implementato per mezzo di vari modelli matematici. Anche in questo caso, bisogna sempre tenere d’occhio la complessità del modello, che dovrebbe riflettere la complessità della rappresentazione interna che stiamo cercando. In EO e in altri campi l’apprendimento non supervisionato può essere utilizzato per ridurre la dimensionalità. Se consideriamo una misurazione iperspettrale, abbiamo che le informazioni raccolte possono essere distribuite su centinaia di lunghezze d’onda. In molti casi sarebbe auspicabile che tali informazioni, o quelle più significative, fossero compresse in un numero inferiore di componenti. Questo può essere ottenuto con tecniche di apprendimento non supervisionato.
Quiz question 1/8
- Cosa cerchiamo nei dati con l’apprendimento non supervisionato?
Correlazione. - Su cosa si basa il raggruppamento dei dati nell’apprendimento non supervisionato?
Somiglianze. - Nell’apprendimento non supervisionato sono necessarie operazioni di etichettatura esterne?
No. - Su cosa si basa l’addestramento dei modelli matematici?
I dati originali. - Cosa fa il modello con i dati alla fine dell’addestramento nell’apprendimento non supervisionato?
Li organizza. - A cosa dobbiamo prestare attenzione nell’apprendimento non supervisionato?
Complessità del modello. - Per cosa può essere utilizzato in particolare l’apprendimento non supervisionato?
Riduzione della dimensionalità.
Quiz question 1/1
You have completed the Quiz!
transcript
Esistono vari raggruppamenti di algoritmi di Machine Learning, ad esempio regressione, classificazione e così via. Può spiegare la loro importanza e le differenze tra loro?
Esistono varie possibilità di raggruppare gli algoritmi di apprendimento automatico. Credo che la principale si basi sul tipo di modello matematico. In particolare, come già detto, abbiamo modelli per l’addestramento supervisionato e modelli per l’addestramento non supervisionato. Per quanto riguarda i primi, tra i più importanti abbiamo le reti neurali, profonde o superficiali, le macchine a vettori di supporto, gli alberi decisionali, le tecniche di ensemble. Per i modelli non supervisionati possiamo citare k-means, analisi delle componenti principali, reti neurali auto-associative, mappe auto-organizzate e così via.
Ma, come sottolineato dalla domanda, un’altra possibilità di raggruppare gli algoritmi di apprendimento automatico riguarda la distinzione tra regressione e classificazione. Una volta fornito un certo input al nostro modello matematico, la differenza tra regressione e classificazione si basa principalmente sul tipo di output che ci interessa. Nel caso della classificazione, l’output sarà un’etichetta, una classe. Ad esempio, consideriamo ancora una volta un’applicazione satellitare in cui il telerilevamento viene utilizzato per la meteorologia. Supponiamo quindi di dover fare un’analisi meteorologica e di voler decidere quale pixel di un’immagine del cielo deve essere associato a un cielo nuvoloso e quale a un cielo sereno, in modo che lo scopo finale sia quello di produrre una mappa in cui rappresentiamo con il colore blu i pixel di cielo sereno e con il colore grigio i pixel di cielo nuvoloso. In questo caso diciamo che vogliamo ottenere una mappa di classificazione. Per la regressione, in sostanza, vogliamo che il nostro modello matematico, come risposta alla sua elaborazione dei dati, calcoli, o stimi, un numero, più in generale un numero a valore reale. Quindi, se consideriamo lo stesso scenario impostato sulla meteorologia, vogliamo sapere dai dati telerilevati quanto è l’umidità o il tasso di precipitazione, numeri reali, in una determinata area. Tuttavia, è interessante notare come un problema di regressione possa essere tradotto in un problema di classificazione. Questo è ciò che accade se dico: in questo intervallo di valori di precipitazione, quindi tra questi due numeri, ho la classe “precipitazione bassa”, in quest’altro intervallo o gamma ho “precipitazione moderata”, e così via. In questo caso mappo intervalli di valori in classi.
Grazie, Prof. Fabio Del Frate, l’abbiamo apprezzato molto. È stata un’istantanea chiara e interessante delle caratteristiche dell’intelligenza artificiale e delle relative applicazioni.
Quiz question 1/8
Esistono solo due diversi algoritmi di Machine learning.
Quiz question 1/8
Vero o falso? Gli algoritmi delle reti neurali possono essere profondi o superficiali.
Quiz question 1/8
Vero o falso? Le macchine a vettore di supporto e gli alberi decisionali sono algoritmi di Machine learning supervisionato.
Quiz question 1/8
Vero o falso? Le mappe auto-organizzanti, il clustering dei mezzi e l'analisi delle componenti principali sono tipi di Machine learning supervisionato.
Quiz question 1/8
Vero o falso? La differenza principale tra classificazione e regressione sta nel tipo di output.
Quiz question 1/8
Vero o falso? L'output nella classificazione è un'etichetta/classe.
Quiz question 1/8
Vero o falso? La regressione stima un numero reale.
Quiz question 1/8
Vero o falso? Non è possibile trasferire un problema di regressione in uno di classificazione.
Quiz question 1/1
You have completed the Quiz!