L’intelligenza artificiale è utilizzata già oggi in molteplici prodotti e servizi che adoperiamo quotidianamente. Google, Microsoft, Apple e Facebook, ad esempio, utilizzano algoritmi di apprendimento automatico che vengono utilizzati per migliorare di continuo, ad esempio, il comportamento dei sistemi di riconoscimento vocale e facciale. Gli stessi assistenti digitali diverranno sempre più sistemi intelligenti capaci di usare le informazioni su ciascun utente per fornire indicazioni utili addirittura anticipando qualunque richiesta vocale.
Meccanismi basati sull’uso dell’intelligenza artificiale sono quindi in continua evoluzione e vengono via a via introdotti e aggiornati “dietro le quinte” su tanti servizi di utilizzo comune, indipendentemente dalla tipologia di dispositivo.
Fornitori di servizi di ride sharing o car pooling come Uber e Lyft, ad esempio, controllano la loro flotta proprio con l’intelligenza artificiale; Netflix elabora i suggerimenti da proporre a ciascun utente sulla base delle cronologie d’uso e di quelle dell’intera comunità di clienti.
Gli utenti che sono entrati nel mondo dell’informatica da più tempo si ricorderanno certamente che una volta erano costretti ad addestrare manualmente i filtri antispam dei propri client di posta in modo da creare un modello che permettesse a un programma di stabilire, con ragionevole approssimazione, quali email ospitavano contenuti legittimi e quali invece erano soltanto comunicazioni indesiderate.
Ancora oggi, l’apprendimento dei filtri antispam funziona un po’ come allora ma di norma la distinzione tra messaggi validi e spam viene effettuata sui server di posta del provider, spesso senza che l’utente debba minimamente intervenire.
L’intelligenza artificiale può essere utilizzata in moltissimi campi: usando una serie di “segnali” è possibile sviluppare meccanismi per coadiuvare il lavoro delle forze di polizia, dei medici, degli esperti di finanza e degli stessi investitori.
Nell’articolo Machine learning, deep learning e reti neurali: come avvicinarsi a questo mondo abbiamo pubblicato qualche indicazione sull’approccio matematico che viene usato per gestire i problemi spiegando anche che i cosiddetti “classificatori” sono elementi in grado di comprendere, per esempio, le immagini e quindi anche la realtà partendo dalle caratteristiche degli insiemi di dati presi in esame.
Una rete neurale artificiale può essere pensata come una funzione che apprende l’output atteso a fronte di un certo set di dati forniti in ingresso (input) durante la fase di addestramento e la composizione del relativo modello.
Microsoft, per esempio, ha programmato una rete neurale per stimare l’età delle persone raffigurate nelle immagini. Usando il sito How Old, peraltro rilasciato diversi anni fa quindi non più sufficientemente ottimizzato per gli standard odierni, è possibile provare l’applicazione usando le foto già fornite e caricare le proprie.
L’intelligenza artificiale Microsoft riesce non solo a stimare l’età ma anche a riconoscere le emozioni. A tale scopo è disponibile anche un sito web dimostrativo di Microsoft, raggiungibile a questo indirizzo.
Viene anche generato un valore compreso tra 0 e 1 per le emozioni di rabbia, disprezzo, disprezzo, disgusto, paura, felicità, neutralità, tristezza e sorpresa, che corrispondono a una stima di quanto della rispettiva emozione l’intelligenza artificiale ha rilevato nella foto.
La tecnologia alla base di How Old è stata infatti messa a disposizione degli utenti della piattaforma cloud Azure (vedere questa pagina), all’interno dei servizi cognitivi, dei quali abbiamo parlato a suo tempo: Applicazioni più intelligenti con Azure Cognitive Services e Bot Framework.
IBM Watson può ad esempio provare a stabilire che cosa sta facendo una persona ritratta in una foto, se la foto è stata scattata all’esterno o all’interno, e che tipo di area o stanza potrebbe essere.
Con Presto, Disegna! è possibile provare, con un approccio giocoso, il comportamento di una rete neurale addestrata per riconoscere i disegni degli utenti e, allo stesso tempo, addestrare il modello.
L’intelligenza artificiale cerca di indovinare l’oggetto contenuto nello scarabocchio di ciascun utente e nel caso in cui essa fosse ragionevolmente sicura, il disegno verrà acquisito per migliorare l’efficacia del modello.
L’evoluzione si chiama AutoDraw (vedere AutoDraw, l’intelligenza artificiale di Google riconosce i disegni), applicazione web che utilizza un algoritmo di apprendimento automatico per “comprendere” ciò che l’utente ha disegnato e mostrare una serie di icone corrispondenti al suo “schizzo”.
Ricorrendo al solo browser web, è possibile sfruttare le abilità dell’intelligenza artificiale per produrre realizzazioni che si ispirano ai capolavori dell’arte. Utilizzando una particolare tecnica, un’applicazione come Deepart consente di applicare la tecnica di un particolare pittore a qualunque foto caricata online dall’utente.
Una soluzione simile è stata presentata da NVidia: la rete neurale Gaugan consente di generare automaticamente paesaggi quasi fotorealistici partendo da schizzi molto approssimativi. Servendosi dell’editor, gli utenti possono dipingere solo i contorni di un paesaggio e, con un solo clic, ottenere un meraviglioso dipinto.
L’intelligenza artificiale può essere anche utilizzata per creare immagini statiche raffiguranti, per esempio, volti di persone. Questo sito web chiede all’utente di provare a stabilire quali immagini di persone (inesistenti) sono state generate dall’intelligenza artificiale e quali invece sono assolutamente reali.
Da qualche tempo a questa parte anche in Italia stanno però spopolando i cosiddetti deepfake ossia video fasulli realizzati a partire da un insieme di foto (o di sequenze filmate) che raffigurano un qualunque soggetto.
Come spiegato nell’articolo Deepfake: cos’è, come funziona e perché fa paura, addestrando il modello usato dall’intelligenza artificiale, è possibile sostituire il volto di una persona con quello di un altro soggetto, con tutte le conseguenze che possono scaturirne.
Un’applicazione come FakeApp, nata a inizio 2018, usa una rete neurale artificiale, una GPU e da tre a quattro gigabyte di spazio di archiviazione al fine di generare il video falso o deepfake. Ssoftware ancora più abili e performanti sono DeepFaceLab (vedere la pagina ufficiale su GitHub) e Face Swap.
Il video sarà tanto più realistico e non riconoscibile come falso, almeno a un primo esame, quanto più vasto sarà il dataset adoperato per addestrare il modello.
Per festeggiare il 334esimo anniversario dalla nascita di Johann Sebastian Bach, Google ha pubblicato a marzo 2019 un doodle molto speciale: un’applicazione interattiva (disponibile ancora oggi a questo indirizzo) permetteva agli utenti di comporre melodie nello stile del maestro tedesco. Presentata come il primo doodle della storia dell’azienda di Mountain View basato sull’intelligenza artificiale, l’applicazione offre l’opportunità di creare autonomamente un’armonia. Utilizzando oltre 300 composizioni di Bach, l’intelligenza artificiale provvede a creare una melodia nel perfetto stile del musicista.
Bellissimo l’esperimento battezzato The Infinite Drum Machine, una nuvola di dimensioni sconfinate alla quale è possibile attingere per generare arpeggi o basi drum partendo da una vastissima selezione di “voci”, gran parte di esse provenienti da suoni e rumori coi quali si ha a che fare nella vita di ogni giorno.
Diversamente rispetto ad altre soluzioni basate sull’intelligenza artificiale, i suoni vengono in questo caso classificati e ordinati per similarità acustica
A differenza di quasi tutte le altre applicazioni AI correnti, il Deep Learning non è utilizzato come caratteristica speciale; la matrice è invece ordinata per similarità acustica usando questo metodo.
Gli appassionati di musica rimarranno impressionati da Mubert, applicazione per dispositivi Android e iOS, che permette di generare un flusso musicale infinito (house, ambient, techno, chill, hiphop,…) in tempo reale: si tratta di composizioni che vengono prodotte ogni volta in maniera univoca dall’intelligenza artificiale e che sono quindi diverse per ogni utente.