Definire l'intelligenza artificiale (IA) è un compito complesso, spesso soggetto a prospettive in evoluzione. Le definizioni basate su obiettivi o compiti possono cambiare con il progredire della tecnologia. Per esempio, i sistemi di gioco degli scacchi sono stati al centro delle prime ricerche sull'IA fino a quando Deep Blue dell'IBM ha sconfitto il grande maestro Gary Kasparov nel 1997, spostando la percezione degli scacchi dalla richiesta di intelligenza alle tecniche di forza bruta.
D'altra parte, le definizioni di IA che tendono a concentrarsi su basi procedurali o strutturali spesso si impantanano in questioni filosofiche fondamentalmente irrisolvibili sulla mente, l'emergenza e la coscienza. Queste definizioni non favoriscono la nostra comprensione di come costruire sistemi intelligenti né ci aiutano a descrivere sistemi già realizzati.
Il Test di Turing: una misura dell'intelligenza delle macchine

Il test di Turing, spesso considerato come un test di intelligenza delle macchine, è stato il modo in cui Alan Turing ha evitato la questione dell'intelligenza. Evidenziava la vaghezza semantica dell'intelligenza e si concentrava su ciò che le macchine possono fare piuttosto che su come le etichettiamo.
"La domanda iniziale 'Le macchine possono pensare? credo sia troppo priva di significato per meritare una discussione. Tuttavia, credo che alla fine del secolo, l'uso delle parole e l'opinione generale degli studiosi saranno talmente cambiati che si potrà parlare di macchine che pensano senza aspettarsi di essere contraddetti." - Alan Turing
In fin dei conti, si tratta di una questione di convenzioni, non molto diversa dal discutere se si debba parlare di sottomarini come di nuoto o di aerei come di volo. Per Turing, ciò che contava davvero erano i limiti di ciò che le macchine sono in grado di fare, non il modo in cui ci riferiamo a tali capacità.
Misurare il pensiero simile a quello umano nell'IA
A tal fine, se si vuole sapere se le macchine sono in grado di pensare come gli esseri umani, la speranza migliore è quella di misurare quanto la macchina sia in grado di ingannare altre persone facendogli credere di pensare come gli esseri umani. Seguendo Turing e la definizione fornita dagli organizzatori del primo workshop sull'IA nel 1956, riteniamo che "ogni aspetto dell'apprendimento o di qualsiasi altra caratteristica dell'intelligenza può essere descritto in linea di principio in modo così preciso da poter essere simulato da una macchina".
Per ottenere prestazioni o comportamenti simili a quelli umani in un determinato compito, l'IA deve essere in grado di simularli con un notevole livello di precisione. Il famoso test di Turing fu concepito per valutare questa capacità, valutando l'efficacia con cui un computer o una macchina potevano ingannare un osservatore attraverso una conversazione non strutturata. Il test originale di Turing richiedeva persino che la macchina rappresentasse in modo convincente un'identità femminile.
Valutare la comprensione dell'intelligenza artificiale a livello umano
Negli ultimi anni, i progressi significativi nelle tecniche di apprendimento automatico, insieme all'abbondanza di dati di addestramento, hanno permesso agli algoritmi di impegnarsi in conversazioni con una comprensione minima. Inoltre, tattiche apparentemente insignificanti, come l'inserimento deliberato di errori ortografici e grammaticali casuali, contribuiscono a rendere gli algoritmi sempre più persuasivi come esseri umani virtuali, pur non avendo una vera intelligenza.
Nuovi approcci per valutare la comprensione a livello umano, come gli schemi di Winograd, propongono di interrogare una macchina sulla sua conoscenza del mondo, degli usi degli oggetti e delle caratteristiche comunemente comprese dagli esseri umani. Per esempio, se chiedessimo: "Perché il trofeo non entrava nello scaffale? Perché era troppo grande. Cosa c'è di troppo grande?", chiunque potrebbe immediatamente stabilire che il trofeo è l'elemento sovradimensionato. Al contrario, facendo una semplice sostituzione: "Il trofeo non stava sullo scaffale perché era troppo piccolo. Cosa c'era di troppo piccolo?", ci si interroga sull'inadeguatezza delle dimensioni.
In questo scenario, la risposta è inequivocabilmente nello scaffale. Questo test, con una maggiore precisione, scava nelle profondità della conoscenza della macchina relativa al mondo. Il semplice data mining da solo non può fornire una risposta. Questa definizione richiede che un'IA abbia la capacità di emulare qualsiasi aspetto del comportamento umano, tracciando una distinzione significativa dai sistemi di IA progettati specificamente per dimostrare intelligenza per compiti particolari.
Differenziare i tipi di IA e i loro metodi di apprendimento
Intelligenza Artificiale Generale (AGI)
L'Intelligenza Artificiale Generale (AGI), comunemente nota come IA generale, è il concetto più frequentemente discusso quando si parla di IA. Comprende i sistemi che evocano nozioni futuristiche di "signori robot" che governano il mondo, catturando la nostra immaginazione collettiva attraverso la letteratura e i film.
IA specifica o applicata
La maggior parte della ricerca in questo campo si concentra su sistemi di IA specifici o applicati. Questi comprendono un'ampia gamma di applicazioni, dai sistemi di riconoscimento vocale e di visione artificiale di Google e Facebook all'IA per la sicurezza informatica sviluppata dal nostro team di Vectra AI.
I sistemi applicati sfruttano in genere una vasta gamma di algoritmi. La maggior parte degli algoritmi è progettata per apprendere ed evolvere nel tempo, ottimizzando le proprie prestazioni man mano che accedono a nuovi dati. La capacità di adattarsi e imparare in risposta a nuovi input definisce il campo dell'apprendimento automatico. Tuttavia, è importante notare che non tutti i sistemi di IA richiedono questa capacità. Alcuni sistemi di IA possono funzionare con algoritmi che non si basano sull'apprendimento, come la strategia di Deep Blue per giocare a scacchi.
Tuttavia, questi eventi sono tipicamente limitati ad ambienti e spazi problematici ben definiti. In effetti, i sistemi esperti, un pilastro dell'IA classica (GOFAI), si basano molto sulla conoscenza preprogrammata e basata su regole, anziché sull'apprendimento. Si ritiene che l'IA, così come la maggior parte dei compiti di IA comunemente applicati, richieda una qualche forma di apprendimento automatico.

Il ruolo dell'Machine Learning
La figura sopra mostra la relazione tra IA, apprendimento automatico e apprendimento profondo. L'apprendimento profondo è una forma specifica di apprendimento automatico e, sebbene si ritenga che l'apprendimento automatico sia necessario per la maggior parte delle attività di IA avanzate, non è di per sé una caratteristica necessaria o determinante dell'IA.
L'apprendimento automatico è necessario per imitare gli aspetti fondamentali dell'intelligenza umana, piuttosto che le sue complessità. Prendiamo ad esempio il programma di intelligenza artificiale Logic Theorist, sviluppato da Allen Newell e Herbert Simon nel 1955. Ha portato a termine la dimostrazione di 38 dei 52 teoremi iniziali dei Principia Mathematica, senza alcun bisogno di apprendimento.
IA, Machine Learning e Deep Learning: Qual è la differenza?
L'intelligenza artificiale (AI), l'apprendimento automatico (ML) e l'apprendimento profondo (DL) sono spesso scambiati per la stessa cosa, ma ognuno di essi ha un significato unico. Comprendendo la portata di questi termini, possiamo comprendere gli strumenti che sfruttano l'IA.
Intelligenza artificiale (AI)
AI è un termine ampio che comprende i sistemi in grado di automatizzare il ragionamento e di approssimare la mente umana. Include sottodiscipline come ML, RL e DL. L'IA può riferirsi a sistemi che seguono regole esplicitamente programmate e a quelli che acquisiscono autonomamente comprensione dai dati. Quest'ultima forma, che apprende dai dati, è alla base di tecnologie come le auto a guida autonoma e gli assistenti virtuali.
Machine Learning (ML)
Il ML è una sottodisciplina dell'IA in cui le azioni del sistema vengono apprese dai dati anziché essere dettate esplicitamente dall'uomo. Questi sistemi possono elaborare enormi quantità di dati per imparare a rappresentare e rispondere in modo ottimale a nuove istanze di dati.
Video: Fondamenti di Machine Learning per professionisti della sicurezza informatica
Representation Learning (RL)
L'RL, spesso trascurato, è fondamentale per molte tecnologie di IA in uso oggi. Si tratta di apprendere rappresentazioni astratte dai dati. Ad esempio, trasformando le immagini in elenchi di numeri di lunghezza costante che catturano l'essenza delle immagini originali. Questa astrazione consente ai sistemi a valle di elaborare meglio nuovi tipi di dati.
Deep Learning (DL)
La DL si basa su ML e RL scoprendo gerarchie di astrazioni che rappresentano gli input in modo più complesso. Ispirati al cervello umano, i modelli DL utilizzano strati di neuroni con pesi sinaptici adattabili. Gli strati più profondi della rete apprendono nuove rappresentazioni astratte, che semplificano compiti come la categorizzazione di immagini e la traduzione di testi. È importante notare che, sebbene la DL sia efficace per risolvere alcuni problemi complessi, non è una soluzione unica per automatizzare l'intelligenza.

Riferimento: "Deep Learning", Goodfellow, Bengio & Courville (2016)
Tecniche di apprendimento nell'IA
Molto più difficile è il compito di creare programmi che riconoscano il parlato o trovino oggetti nelle immagini, nonostante siano risolti dagli esseri umani con relativa facilità. Questa difficoltà deriva dal fatto che, sebbene sia intuitivamente semplice per gli esseri umani, non siamo in grado di descrivere un semplice insieme di regole che permettano di individuare fonemi, lettere e parole dai dati acustici. È lo stesso motivo per cui non riusciamo a definire facilmente l'insieme delle caratteristiche dei pixel che distinguono un volto da un altro.

La figura a destra, tratta dall'articolo di Oliver Selfridge del 1955, Pattern Recognition and Modern Computers, mostra gli stessi input che possono portare a risultati diversi, a seconda del contesto. In basso, la H di THE e la A di CAT sono insiemi di pixel identici, ma la loro interpretazione come H o A si basa sulle lettere circostanti piuttosto che sulle lettere stesse.
Per questo motivo, il successo è maggiore quando si permette alle macchine di imparare a risolvere i problemi, piuttosto che cercare di predefinire la soluzione.
Gli algoritmi di ML hanno il potere di ordinare i dati in diverse categorie. I due principali tipi di apprendimento, supervisionato e non supervisionato, svolgono un ruolo importante in questa capacità.
Apprendimento supervisionato
L'apprendimento supervisionato insegna a un modello con dati etichettati, consentendogli di prevedere le etichette per i nuovi dati. Ad esempio, un modello esposto a immagini di cani e gatti può classificare nuove immagini. Nonostante la necessità di dati di addestramento etichettati, il modello etichetta efficacemente i nuovi punti di dati.

Apprendimento non supervisionato
D'altra parte, l'apprendimento non supervisionato lavora con dati non etichettati. Questi modelli apprendono schemi all'interno dei dati e sono in grado di determinare dove i nuovi dati si inseriscono in questi schemi. L'apprendimento non supervisionato non richiede un addestramento preliminare ed è ottimo per identificare le anomalie, ma fatica ad assegnare le etichette.

Entrambi gli approcci offrono una gamma di algoritmi di apprendimento, in continua espansione man mano che i ricercatori ne sviluppano di nuovi. Gli algoritmi possono anche essere combinati per creare sistemi più complessi. Sapere quale algoritmo utilizzare per un problema specifico è una sfida per i data scientist. Esiste un algoritmo superiore in grado di risolvere qualsiasi problema?

IlNo Free Lunch teorema delNo Free Lunch ": non esiste un algoritmo universale
IlNo Free Lunch Teorema delNo Free Lunch " afferma che non esiste un algoritmo perfetto che superi tutti gli altri per ogni problema. Al contrario, ogni problema richiede un algoritmo specializzato, adatto alle sue esigenze specifiche. Per questo motivo esistono così tanti algoritmi diversi. Ad esempio, una rete neurale supervisionata è ideale per alcuni problemi, mentre il clustering gerarchico non supervisionato funziona meglio per altri. È importante scegliere l'algoritmo giusto per il compito da svolgere, poiché ognuno di essi è progettato per ottimizzare le prestazioni in base al problema e ai dati utilizzati.
Ad esempio, l'algoritmo utilizzato per il riconoscimento delle immagini nelle auto a guida autonoma non può essere utilizzato per tradurre tra le lingue. Ogni algoritmo ha uno scopo specifico ed è ottimizzato per il problema che è stato creato per risolvere e per i dati su cui opera.

Selezione dell'algoritmo giusto nella scienza dei dati
La scelta dell'algoritmo giusto per un data scientist è un mix di arte e scienza. Considerando la dichiarazione del problema e comprendendo a fondo i dati, il data scientist può essere guidato nella giusta direzione. È fondamentale riconoscere che una scelta sbagliata può portare non solo a risultati non ottimali, ma anche a risultati completamente imprecisi. Guardate l'esempio seguente:


Adattato da scikit-learn.org.
La scelta dell'algoritmo giusto per un set di dati può avere un impatto significativo sui risultati ottenuti. Ogni problema ha un algoritmo ottimale, ma soprattutto alcune scelte possono portare a risultati sfavorevoli. Ciò evidenzia l'importanza cruciale di selezionare l'approccio appropriato per ogni problema specifico.
Come misurare il successo di un algoritmo?
La scelta del modello giusto per un data scientist non si limita alla sola precisione. Sebbene l'accuratezza sia importante, a volte può nascondere le vere prestazioni di un modello.

Consideriamo un problema di classificazione con due etichette, A e B. Se l'etichetta A è molto più probabile che si verifichi rispetto all'etichetta B, un modello può ottenere un'elevata accuratezza scegliendo sempre l'etichetta A. Tuttavia, ciò significa che non identificherà mai correttamente qualcosa come etichetta B. Quindi l'accuratezza da sola non è sufficiente se vogliamo trovare casi B. Fortunatamente, i data scientist hanno a disposizione altre metriche per ottimizzare e misurare l'efficacia di un modello.
Una di queste metriche è la precisione, che misura la correttezza di un modello nell'indovinare una particolare etichetta rispetto al numero totale di ipotesi. I data scientist che puntano a una precisione elevata costruiscono modelli che evitano di generare falsi allarmi.

Ma la precisione ci dice solo una parte della storia. Non rivela se il modello non riesce a identificare casi importanti per noi. È qui che entra in gioco il richiamo. Recall misura la frequenza con cui un modello trova correttamente una particolare etichetta rispetto a tutte le istanze di quell'etichetta. I data scientist che puntano a un'elevata recall costruiranno modelli che non perderanno istanze importanti.

Tracciando e bilanciando sia la precisione che il richiamo, i data scientist possono misurare e ottimizzare efficacemente i loro modelli.