La storia della AI¶
- storia: inizio anni 50, Turing per giocare a scacchi senza computer
- modellare l'intelligenza
- deterministici
- Deep Blu fine anni '90
- Narrow/Weak AI & Strong (true) AI / AGI
- big data & GPU power -> ML
La storia dell'apprendimento automatico¶
Intraprendiamo un viaggio nella storia dell'apprendimento automatico per scoprire come tutto è iniziato, come si è evoluto in quello che è oggi e cosa potrebbe riservare il futuro.
1642 – L'invenzione della macchina addizionatrice¶
Blaise Pascal ha creato una delle prime macchine addizionatrici meccaniche come tentativo di automatizzare l'elaborazione dei dati. Impiegava un meccanismo di ingranaggi e ruote, simile a quelli dei contachilometri e di altri dispositivi di conteggio.
Pascal è stato ispirato a costruire una calcolatrice per aiutare suo padre, il sovrintendente delle tasse a Rouen, con i lunghi calcoli aritmetici che doveva fare. Ha creato il dispositivo per aggiungere e sottrarre direttamente due numeri e moltiplicare e dividere.
La calcolatrice aveva quadranti con ruote metalliche articolate con le cifre da 0 a 9 visualizzate attorno alla circonferenza di ciascuna ruota. L'utente inseriva una matita nello spazio corrispondente tra i raggi e ruotava la manopola fino a raggiungere un fermo metallico nella parte inferiore per inserire una cifra, in modo simile a come funziona un quadrante rotante sul vecchio telefono. Il numero veniva visualizzato nella finestra in alto a sinistra della calcolatrice. Quindi, componeva il secondo numero da aggiungere, risultando nella visualizzazione del totale dell'accumulatore.
1801 – L'invenzione della memorizzazione dei dati¶
Il primo utilizzo dell'archiviazione dei dati è stato in un telaio per tessitura! creato dall'inventore francese Joseph-Marie Jacquard, che utilizzava carte metalliche con fori per disporre i fili. Queste carte costituivano un programma per controllare il telaio e permettevano di ripetere una procedura con lo stesso esito ogni volta.
Un telaio Jacquard che mostra schede perforate informative, National Museum of Scotland
Le schede perforate furono usate da Charles Babbage, il famoso inventore inglese, come mezzo di input-output per il suo teorico "analytical engine" e da Herman Hollerith per fornire dati alla sua macchina di censimento. Sono stati utilizzati anche per inserire dati in computer digitali, ma sono stati sostituite da apparecchiature elettroniche.
1847 – la Logica Booleana¶
Nella Logica Booleana (nota anche come algebra booleana), tutti i valori sono True o False, Veri o Falsi. Questi valori vengono utilizzati per verificare le condizioni su cui si basano la selezione e l'iterazione. Ecco come funzionano gli operatori booleani. George Boole ha creato gli operatori AND, OR e NOR utilizzando questa logica, rispondendo a domande su vero o falso, sì o no e 1 e 0 binari.
1890 – La macchina di Hollerith¶
Herman Hollerith ha sviluppato il primo sistema combinato di calcolo meccanico e schede perforate per calcolare in modo efficiente le statistiche di milioni di individui. Era una macchina elettromeccanica costruita per aiutare a riassumere i dati memorizzati su schede perforate.
I primi calcoli statistici sono stati fatti con macchine elettromeccaniche
Il censimento del 1890 negli Stati Uniti ha richiesto otto anni per essere completato. Poiché la Costituzione richiede un censimento ogni dieci anni, era necessaria una forza lavoro più ampia per accelerare il processo. La tabulatrice è stata creata per facilitare l'elaborazione dei dati del censimento del 1890.
1943 – Primo modello matematico di un neurone biologico¶
L'articolo scientifico “A Logical Calculus of the Ideas Immanent in Nervous Activity,” pubblicato da Walter Pitts e Warren McCulloch, ha introdotto il primo modello matematico di reti neurali. Per molti, quel documento è stato il vero punto di partenza per la moderna disciplina del machine learning, che ha aperto la strada al deep learning e al machine learning quantistico.
L'articolo di McCulloch e Pitts del 1948 si basava su "On Computable Numbers" di Alan Turing per fornire un mezzo per descrivere le attività cerebrali in termini generali, dimostrando che i componenti di base collegati in una rete neurale potrebbero avere enormi capacità computazionali. Fino a quando le idee non furono applicate da John von Neuman, l'architetto dell'informatica moderna, Norbert Wiene e altri, il documento ricevette poca attenzione.
1949 – Hebb collega il comportamento alle reti neurali¶
Nel 1949, lo psicologo canadese Donald O. Hebb, allora docente alla McGill University, pubblicò "The Organization of Behavior: A Neuropsychological Theory". Questa è stata la prima volta che una regola di apprendimento fisiologico per il cambiamento sinaptico è stata resa esplicita sulla stampa ed è diventata nota come "sinapsi di Hebb".
Le reti neurali sono oggi utilizzate in molti sistemi di intelligenza artificiale
McCulloch e Pitts hanno sviluppato la teoria dell'assemblaggio cellulare nel loro articolo del 1951. Come affermato nel libro: "Quando un assone della cellula A è abbastanza vicino da eccitare la cellula B e partecipa ripetutamente o in modo persistente alla sua attivazione, in una o entrambe le cellule avviene un processo di crescita o un cambiamento metabolico tale che l'efficienza di A, come una delle cellule che sparano B, è aumentato.
Il modello di Hebb ha aperto la strada allo sviluppo di macchine computazionali che replicano i processi neurologici naturali
Il modello di Hebb per il funzionamento della mente ha avuto un'influenza significativa sul modo in cui gli psicologi considerano l'elaborazione dello stimolo nella mente. Ha anche aperto la strada allo sviluppo di macchine computazionali che replicano i processi neurologici naturali, come l'apprendimento automatico.
1950 – Il test di Turing per valutare le capacità di pensiero delle macchine¶
Il test di Turing è un test di intelligenza artificiale per determinare se un computer pensa o meno come un essere umano. Il termine "Test di Turing" deriva da Alan Turing, informatico, crittoanalista, matematico e biologo teorico inglese che ha inventato il test.
È impossibile definire l'intelligenza in una macchina, secondo Turing. Se un computer può imitare le risposte umane in circostanze specifiche, si può dire che abbia un'intelligenza artificiale. Il test di Turing originale richiede tre terminali fisicamente separati l'uno dall'altro. Un terminale è controllato da un computer, mentre gli umani usano gli altri due.
_La serie IBM 700 ha reso più semplici i calcoli scientifici e le operazioni commerciali, ma le macchine hanno anche fornito al mondo un po' di intrattenimento
Durante l'esperimento, uno degli umani funge da interrogante, con il secondo umano e il computer come intervistati. L'interrogante pone domande agli intervistati in una specifica area di studio all'interno di un formato e di un contesto specifici. Dopo una determinata durata o numero di domande, l'interrogante è invitato a selezionare quale rispondente era reale e quale artificiale. Il test viene eseguito numerose volte. Il computer è chiamato "intelligenza artificiale" se l'interrogante conferma il risultato corretto in metà o meno delle esecuzioni del test.
1952 – In IBM viene sviluppato il primo programma di apprendimento informatico¶
Il programma di Dama di Arthur Samuel, creato per giocare sull'IBM 701, fu mostrato al pubblico per la prima volta in televisione il 24 febbraio 1956. Robert Nealey, un maestro di dama, giocò su un computer IBM 7094 nel 1962. Il computer ha vinto. Il programma di Samuel ha perso poi altre partite contro Nealey, ma era ancora considerato una pietra miliare per l'intelligenza artificiale e ha fornito al pubblico un esempio delle capacità di un computer elettronico nei primi anni '60.
Più il programma giocava, imparando quali mosse costituivano le strategie vincenti in una "modalità di apprendimento supervisionato" e incorporandole nel suo algoritmo, meglio si comportava al gioco.
Il programma di Samuel era una storia rivoluzionaria per l'epoca. Le creazioni elettroniche stavano sfidando il vantaggio intellettuale dell'umanità. Per il pubblico analfabeta della tecnologia del 1962, questo fu un evento significativo. Ha stabilito le basi affinché le macchine svolgano altri compiti intelligenti meglio degli umani. E la gente ha iniziato a pensare: i computer supereranno gli umani in intelligenza? Dopotutto, allora i computer esistevano solo da pochi anni e il campo dell'intelligenza artificiale era ancora agli inizi...
1958 – Viene progettato il Perceptron¶
Nel luglio 1958, l'Office of Naval Research degli Stati Uniti svelò un'invenzione straordinaria: il "Perception". Un IBM 704, un computer da 5 tonnellate delle dimensioni di una stanza, è stato alimentato con una serie di schede perforate e, dopo 50 tentativi, ha imparato a identificare le schede con i segni a sinistra dai segni a destra.
Secondo il suo inventore, Frank Rosenblatt era "la prima macchina in grado di generare un pensiero originale".
“Le storie sulla creazione di macchine dotate di qualità umane sono state a lungo una componente affascinante nel regno della fantascienza”, osservò Rosenblatt, “Eppure stiamo per assistere alla nascita di una tale macchina – una macchina in grado di percepire, riconoscere, e identificare ciò che lo circonda senza alcun addestramento o controllo umano.
Aveva ragione sulla sua visione, ma ci sono voluti quasi mezzo secolo per fornirla.
Gli anni '60: il tentativo dei Bell Labs di insegnare alle macchine a leggere¶
Il termine "deep learning" è stato ispirato da un rapporto della fine degli anni '60 che descriveva come gli scienziati dei Bell Labs stavano tentando di insegnare ai computer a leggere un testo.
1967 – Le macchine acquisiscono la capacità di riconoscere i modelli¶
È stato creato l'algoritmo del "nearest neighbor" (il vicino più vicino), che consente ai computer di eseguire il rilevamento di schemi rudimentali. Quando al programma veniva fornito un nuovo oggetto, lo confrontava con i dati esistenti e lo classificava come il vicino più prossimo, il che significava l'elemento più simile in memoria. La regola k-nearest neighbor è stata inizialmente introdotta da Fix e Hodges come metodo non parametrico per la classificazione dei pattern.
Il riconoscimento dei pattern è alla base di molti sviluppi dell'IA raggiunti fino ad ora
1979 – A Stanford viene inventato uno dei primi veicoli autonomi¶
Lo Stanford Cart è stato uno sforzo decennale che si è evoluto in varie forme dal 1960 al 1980. È iniziato come uno studio di come sarebbe stato far funzionare un rover lunare dalla Terra e alla fine è stato rivitalizzato come veicolo autonomo. Lo Stanford Cart era inizialmente un robot mobile telecomanda dotato di telecamera.
È stato creato un programma per computer per controllare il carrello attraverso luoghi imprevisti, ottenendo tutte le sue informazioni sul mondo dalle immagini della TV a bordo. Utilizzava una varietà di tecniche per scoprire le cose in tre dimensioni e determinare il proprio movimento. Sulla base di un modello creato con questi dati, ha pianificato un percorso che evita gli ostacoli verso la destinazione prescelta. Man mano che il Carro incontrava nuovi ostacoli nel suo viaggio, il piano si evolveva.
1981 - L'apprendimento basato sulla spiegazione richiede l'apprendimento supervisionato¶
Gerald Dejong ha aperto la strada all'"explanation-based learning" (EBL) in un articolo di giornale pubblicato nel 1981. L'EBL ha gettato le basi del moderno apprendimento supervisionato perché gli esempi di formazione integrano la conoscenza precedente del mondo. Il programma analizza i dati di addestramento ed elimina le informazioni non necessarie per creare una regola generale applicata alle istanze future.
Anni '90: nascita di varie applicazioni di machine learning¶
Gli scienziati hanno iniziato ad applicare l'apprendimento automatico nel data mining, nel software adattivo, nelle applicazioni Web, nell'apprendimento del testo e nell'apprendimento delle lingue negli anni '90. Gli scienziati creano programmi per computer in grado di analizzare enormi quantità di dati e trarre conclusioni o imparare dai risultati. Il termine "Machine Learning" è stato coniato quando gli scienziati sono stati finalmente in grado di sviluppare software in modo tale che potesse apprendere e migliorare da solo, senza richiedere alcun input umano.
Il Millennio – L'ascesa della programmazione adattiva¶
Il nuovo millennio ha visto un boom senza precedenti nella programmazione adattiva. L'apprendimento automatico è andato di pari passo con soluzioni adattive per molto tempo. Questi programmi possono identificare modelli, imparare dall'esperienza e migliorarsi in base al feedback che ricevono dall'ambiente.
Il deep learning è un esempio di programmazione adattiva, in cui gli algoritmi possono "vedere" e distinguere oggetti in immagini e video
4 esempi di sfide Umani vs AI¶
Ecco quattro esempi di quando l'intelligenza artificiale o i computer hanno avuto la meglio su alcune delle menti più brillanti del mondo.
1979 - Backgammon: BKG 9.8 contro Luigi Villa¶
La prima volta che un computer ha gareggiato contro un campione del mondo è stato nel 1979, quando il programma BKG 9.8 scritto da Hans J. Berliner ha sconfitto l'allora campione del mondo, Tim Luigi Villa, con un sostanziale margine di 7-1.
1996 - Scacchi: Deep Blue di IBM contro Garry Kasparov¶
Nel 1996, quando Garry Kasparov affrontò Deep Blue dell'IBM in una serie di partite per il titolo di campione del mondo di scacchi, era ampiamente considerato come il più grande giocatore di scacchi di sempre. Anche se Kasparov ha vinto la serie con un punteggio di 4-2; ciò che è straordinario è che il computer lo ha sconfitto due volte. Kasparov osservava: "Potevo percepire un nuovo tipo di intelletto dall'altra parte del tavolo". Una versione modificata dell'AI chiamata "Deeper Blue" ha battuto Kasparov l'anno successivo.
2016 - Go: AlphaGO di DeepMind contro i primi cinque giocatori del mondo¶
Go è un gioco inventato migliaia di anni fa in Cina e si è evoluto in uno dei giochi più complessi e sofisticati al mondo. La comunità di Go è stata devastata quando l'AlphaGo di DeepMind ha sconfitto Lee Sedol in quattro partite su cinque. Sconfiggendo i prossimi quattro migliori giocatori sulla Terra, AlphaGo ha dimostrato a tutti che l'AI è superiore agli umani nel gioco.
Tecnologia: Neural Networks al posto di algoritmi probabilistici.
approfondimenti documentario AlphaGO
2017 - Poker: Libratus contro quattro migliori giocatori¶
Nel 2017, un'AI soprannominata "Libratus" è stata in grado di sconfiggere quattro giocatori di poker professionisti contemporaneamente in una partita di poker Texas Hold'Em no-limit. Il poker è un gioco altamente psicologico in cui bisogna interpretare il proprio avversario. Un'intelligenza artificiale non può determinare se qualcuno stia bluffando o meno, eppure due scienziati informatici della Carnegie Mellon sono stati in grado di battere tutti usando un'intelligenza artificiale che hanno creato.