• Non ci sono risultati.

Intelligenze artificiali ed apprendimento Ci sono diversi modi in cui un’Intelligenza Artificiale (IA) può imparare

Machine learning ed apprendimento

2.2 Intelligenze artificiali ed apprendimento Ci sono diversi modi in cui un’Intelligenza Artificiale (IA) può imparare

ed evolversi. Generalmente si può dire che una IA impara da pattern di dati, errori e successi (processo trial and error). Diversamente dal tradizionale approccio della programmazione, il Machine Learning comincia alla fine; non si va quindi a programmare la soluzione, ma si lascia che la macchina stessa la trovi imparando da un set di regole. Immaginiamo per esempio di voler creare il miglior hamburger al mondo; invece di creare la ricetta però compriamo alcuni tra i migliori hamburger sul mercato e cominciamo da li; dopo averli assaggiati diciamo alla macchina come sono fatti e quali sono le parti che ci piacciono di più. La macchina parte da li scomponendo gli hamburger ed analizzandone le parti, ottenendo alla fine la ricetta dell’hamburger perfetto.

La parte che gli utenti a volte ritengono come magica è che spesso non sappiamo nemmeno come la macchina ha fatto.

2.2.1 Machine Learning, il primo passo verso una IA

Il Machine Learning può essere quindi definito come la scienza per aiutare i computer a scoprire schemi e relazioni nei dati. Come possiamo osservare da progettisti, schemi e pattern sono elementi chiave nei prodotti di tutti i giorni, quindi avere un robusto modello di apprendimento è spesso la strada migliore per il successo. Ci sono tre modalità base con cui le macchine imparano. Allenamento supervisionato, non supervisionato e di rinforzo.

Allenamento supervisionato: allenare un algoritmo sulla classificazione e regressione di un data set classificato (tag,

categorie, classi, significati ecc…);

Allenamento non supervisionato: allenare un algoritmo nel riuscire a trovare cluster ed associazioni in un data set non classificato; Allenamento di rinforzo: allenare un algoritmo a prendere decisioni in un ambiente senza data set ma con solo feedback;

2.2.2 Machine Learning supervisionato

Rimaniamo nel contesto dell’esempio dell’hamburger; vogliamo quindi creare il migliore hamburger al mondo. Per farlo dobbiamo prima capire ed imparare in cosa consiste un buon hamburger. Questa è la parte dove il Machine Learning entra a far parte del processo; la macchina, in questo caso, da in pasto all’IA informazioni utili come qual’è il miglior tipo di pane, di carne o di formaggio da usare (basandosi ovviamente su tutte le informazioni che vengono fornite).

In generale il Machine Learning è ottimo per gestire singole attività. Ogni parte dell’hamburger (pane, carne, formaggio) avrà in questo esempio un modello di Machine Learning designato per identificare quali tipi funzionano meglio per ogni parte. Ed è questa praticamente la modalità di apprendimento; bisogna fornire esempi all’algoritmo. Questo specifico metodo viene chiamato Machine Learning supervisionato. Funziona esattamente come il nome fa pensare; simile a quando un bambino impara, si cerca di supervisionare il processo e fare in modo che tutto sia preciso e funzionante. In questo caso si supervisiona la macchina dandole degli esempi di hamburger (nell’opinione di chi gestisce il processo) perfetti di modo che possa imparare come sono fatti.

I dati usati per allenare il modello sono di due tipi:

Dati categorizzati (dati già elaborati, definiti anche dati di allenamento); i dati categorizzati sono un set di dati che hanno già

un significato, come per esempio: questa è una mela;

Dati non categorizzati (dati che vengono usati per allenare il modello alla ricerca della soluzione);

Per testare la precisione del modello invece che fornirgli le caratteristiche e le informazioni su come classificare i dati come in allenamento, nella fase di testing anche se si conoscono informazioni è bene non fornirle al modello.

2.2.3 Machine Learning non supervisionato

Con questo forma di apprendimento si saprebbe quali hamburger siano i migliori ma non si saprebbe di cosa siano fatti; la macchina organizzerebbe il data set, che all’inizio le sembrerebbe disorganizzato, e arriverebbe alle sue conclusioni ed associazioni. La tecnica consiste nel fornire al sistema informatico una serie di input che egli riclassificherà ed organizzerà sulla base di caratteristiche comuni per cercare di effettuare ragionamenti e previsioni sugli input successivi. Al contrario dell’apprendimento supervisionato, durante l’apprendimento vengono forniti alla macchina solo esempi non annotati, in quanto le classi non sono note a priori ma devono essere apprese automaticamente.

Un esempio tipico di questi algoritmi sono i motori di ricerca. Questi programmi, data una o più parole chiave, sono in grado di creare una lista di link rimandanti alle pagine che l’algoritmo di ricerca ritiene attinenti alla ricerca effettuata. La validità di questi algoritmi è legata alla utilità delle informazioni che riescono ad estrarre dalla base di dati.

2.2.4 Machine Learning di rinforzo

Nel caso dell’allenamento di rinforzo prendere in esempio una azienda come DeepMind aiuta molto a spiegare il concetto. DeepMind sta sviluppando tecnologie cercando di inseguire il concetto di IA Generale (rimando al capitolo 1.1); la loro missione è ben chiara e si muovono seguendo questa linea guida:

La missione scientifica di DeepMind è di spingere il progresso delle IA, sviluppando sistemi che imparano a risolvere problemi complessi senza aver bisogno di qualcuno che gli insegni come. Per riuscirci, lavoriamo sotto la premessa che le IA devono essere generali.

Con l’aiuto di allenamenti di rinforzo DeepMind sta sviluppando tecnologie intelligenti ed in evoluzione che svolgono attività

di allenamento in modo non supervisionato ed autonomo. Nel loro caso specifico questi agenti mettono in pratica diverse strategie (per vincere ad un gioco; DeepMind si sta recentemente concentrando su Starcraft, popolare gioco di strategia in tempo reale) per riuscire a trovare quella perfetta. Ogni sconfitta porta ad un utilizzo di una diversa strategie fino a che non si trova quella definitiva.