Chiunque abbia provato Google Foto sarebbe d'accordo sul fatto che questo servizio gratuito di archiviazione e gestione delle foto di Google sia intelligente. Comprende varie funzioni intelligenti come la ricerca avanzata, la capacità di categorizzare le tue foto per località e date, crea automaticamente album e video basati su somiglianze e ti guida lungo la corsia di memoria mostrandoti foto dello stesso giorno diversi anni fa. Ci sono molte cose che Google Photos può fare che diversi anni fa sarebbe praticamente impossibile. Google Foto è uno dei tanti servizi "intelligenti" di Google che utilizza una tecnologia di apprendimento automatico chiamata TensorFlow. La parola apprendimento indica che la tecnologia diventerà più intelligente di volta in volta al punto che la nostra attuale conoscenza non può immaginare. Ma cos'è TensorFlow? Come può imparare una macchina? Cosa puoi fare con questo? Scopriamolo.
Cos'è TensorFlow?
TensorFlow è il software open source e potente di intelligence artificiale di Google, che alimenta molti servizi e iniziative di Google. È la seconda generazione di un sistema per implementazioni di apprendimento automatico su larga scala, creato dal team di Google Brain. Questa libreria di algoritmo ha successo su DistBelief, la prima generazione.
La tecnologia rappresenta il calcolo come diagrammi di flusso di dati stateful. Ciò che rende TensorFlow unico è la sua capacità di modellizzare i calcoli su una vasta gamma di hardware, dai dispositivi mobili di livello consumer ai server multi-GPU di livello mondiale. Può funzionare su diverse GPU e CPU e promette la scalabilità dell'apprendimento automatico tra i vari dispositivi e gadget senza dover modificare una quantità significativa di codice.
TensorFlow è nato dalla necessità di Google di istruire un sistema informatico per simulare il funzionamento di un cervello umano nell'apprendimento e nel ragionamento. Il sistema, noto come reti neurali, dovrebbe essere in grado di eseguire su array di dati multidimensionali denominati "tensori". L'obiettivo finale è quello di addestrare le reti neurali per rilevare e decifrare modelli e correlazioni.
Nel novembre 2015, Google ha reso questa tecnologia open source e ha permesso che fosse adottata in tutti i tipi di prodotti e ricerche. Chiunque, inclusi ricercatori, ingegneri e hobbisti, può contribuire ad accelerare la crescita dell'apprendimento automatico e portarlo a un livello superiore in meno tempo.
Questa mossa è risultata essere quella giusta perché ci sono così tanti contributi dagli sviluppatori indipendenti a TensorFlow che superano di gran lunga i contributi di Google. Wikipedia afferma che "ci sono 1500 repository su GitHub che menzionano TensorFlow, di cui 5 provengono da Google". Detto questo, una delle discussioni a Quora sospetta che il codice open source rilasciato sia la versione "ripulita" dal uno che Google utilizza nei suoi servizi.
Come funziona TenserFlow?
Usando il semplice linguaggio umano normale e una notevole semplificazione, potremmo vedere un lato di TensorFlow come una tecnologia avanzata di filtraggio autonomo. Al suo centro, la tecnologia è un'enorme libreria di software di apprendimento automatico. Usa il database per aiutarlo a "prendere una decisione".
Ad esempio, qualcuno carica una foto su Google Foto. La tecnologia confronterà tutti i dettagli dall'immagine al suo database e deciderà se si tratta di un'immagine di un animale o di un essere umano. Quindi se è umano, cercherà di determinare il sesso, l'età fino a che punto è la persona. Lo stesso processo viene ripetuto per altri oggetti nella foto.
Utilizza inoltre i dati dell'utente come l'identità della persona nella foto e la posizione in cui è stata scattata la foto, per migliorare la sua libreria in modo che possa dare migliori risultati in futuro - sia per la persona che ha caricato la foto sia per tutti altro. Da qui il termine "apprendimento". Ma non si limita a conoscere e apprendere i dati dalle foto. Ci sono così tante cose che la tecnologia può fare con le informazioni di una foto. Ad esempio, può raggruppare foto con dettagli simili come la stessa persona, la stessa posizione, la stessa data; guarda lo schema delle facce per determinare a quali familiari e amici appartiene la persona nella foto e utilizza le informazioni per realizzare video di vacanze in famiglia o animazioni da scatti continui.
Questo a malapena graffia la superficie di come funziona TensorFlow, ma spero che possa darti un quadro generale della tecnologia. Inoltre, l'uso di un solo esempio non può rendere giustizia a ciò di cui è capace.
E per tutti gli appassionati di Intelligenza Artificiale, vale la pena ricordare che Google ha già creato una tecnologia di chip per computer ottimizzata per l'apprendimento automatico e l'integrazione di TensorFlow in esso. Si chiama chip ASIC Tensor Processing Unit (TPU) .
Coloro che vogliono saperne di più su TensorFlow possono visitare la sua pagina tutorial.
Applicazioni di TensorFlow
Siamo in una fase iniziale della tecnologia di apprendimento automatico, quindi nessuno sa dove ci porterà. Ma ci sono alcune applicazioni iniziali che potrebbero darci una sbirciatina in futuro. Poiché proviene da Google, è ovvio che Google utilizza la tecnologia per molti dei suoi servizi.
Maggiori informazioni sull'analisi delle immagini
Abbiamo discusso l'esempio dell'utilizzo della tecnologia per l'analisi delle immagini in Google Foto. Ma l'applicazione di analisi dell'immagine viene anche utilizzata nella funzionalità Street View di Google Maps. Ad esempio, TensorFlow viene utilizzato per connettere l'immagine con le coordinate della mappa e per rendere automaticamente sfocato il numero di targa di qualsiasi auto accidentalmente inclusa nell'immagine.
Riconoscimento vocale
Google sta anche utilizzando TensorFlow per il suo software di riconoscimento vocale dell'assistente vocale. La tecnologia che consente agli utenti di pronunciare le istruzioni non è nuova, ma includere la sempre crescente libreria di TensorFlow nel mix potrebbe far salire di qualche punto la funzionalità. Attualmente, la tecnologia di riconoscimento vocale riconosce oltre 80 lingue e varianti.
Traduzione dinamica
Un altro esempio della parte "apprendimento" della tecnologia di apprendimento automatico è la funzione di traduzione di Google. Google consente ai suoi utenti di aggiungere nuovi vocabolari e correggere gli errori in Google Translate. I dati sempre crescenti possono essere utilizzati per rilevare automaticamente la lingua di input che gli altri utenti vogliono tradurre. Se la macchina commette errori nel processo di rilevamento della lingua, gli utenti possono correggerli. E la macchina imparerà da questi errori per migliorare le sue prestazioni future. E il ciclo continua.
Alpha Go
Un divertente esempio dell'uso di TensorFlow è Alpha Go. È un'applicazione programmata per giocare a Go . Per chi non ha familiarità con Go, è un gioco da tavolo astratto per due giocatori nato in Cina più di cinquemilacinquecento anni fa, ed è il gioco da tavolo più antico che viene ancora giocato ininterrottamente oggi. Mentre le regole sono semplici: circondare più territorio rispetto all'avversario, il gioco è incredibilmente complesso e, secondo Wikipedia: "possiede più possibilità rispetto al numero totale di atomi nell'universo visibile".
Quindi, è interessante ciò che una tecnologia di machine learning può fare con le infinite possibilità. Nelle sue partite contro Lee Sedol - il 18 volte campione del mondo di Go, Alpha Go ha vinto 4 partite su 5 e ha ottenuto il grado più alto del Gran Maestro.
Progetto Magenta
Un'altra interessante applicazione di TensorFlow è il progetto Magenta. È un progetto ambizioso per creare arte generata dalla macchina . Uno dei primi risultati tangibili dell'esperimento è la melodia del pianoforte a 90 secondi. A lungo termine, Google spera di generare arte più avanzata generata dalle macchine tramite il suo progetto Magenta e costruire attorno a sé una comunità di artisti.
A febbraio 2016, Google ha anche tenuto una mostra d'arte e un'asta a San Francisco mostrando 29 computer generati - con un piccolo aiuto da opere d'arte umane. Sei delle opere più grandi sono state vendute per un valore di $ 8.000. Il computer potrebbe ancora avere una lunga strada da percorrere prima che possa imitare un vero artista, ma la quantità di denaro che la gente è disposta a pagare per l'arte ci mostra fino a che punto la tecnologia è andata.
Supporto per iOS
Mentre abbiamo già visto le funzionalità di TenserFlow su Android, con la sua ultima versione, TensorFlow aggiunge finalmente i supporti per i dispositivi iOS. Poiché ci sono tantissime fantastiche app per dispositivi mobili disponibili esclusivamente per iOS o rilasciate per prime su iOS, ciò significa che possiamo aspettarci grandi app per dispositivi mobili che adottino il machine learning nel prossimo futuro. La stessa cosa si può dire per le possibilità di più ampie adozioni e applicazioni di TensorFlow.
Il futuro di TensorFlow
Cosa si può fare con una macchina in grado di apprendere e prendere la propria decisione? Come persona che si occupa di più di una lingua come parte della vita quotidiana, la prima cosa che mi viene in mente è la traduzione linguistica. Non nella parola per parola, ma più nel livello di testo più lungo come documenti o persino libri. La tecnologia di traduzione di oggi è limitata ai vocabolari. Puoi facilmente scoprire cosa sta "dormendo" in cinese e viceversa, ma prova a gettare un capitolo del Musashi di Eiji Yoshikawa nel suo originale giapponese e traduci il capitolo in inglese. Vedrai cosa sto ottenendo.
È anche divertente vedere cosa può fare il futuro dell'intelligenza artificiale con la musica. Anche se è ancora molto semplice, l'app Music Memo di Apple può già dare l'accompagnamento automatico di basso e batteria al tuo canto registrato. Ricordo un episodio di uno show televisivo SciFi in cui un personaggio dello spettacolo ha creato una macchina che analizza tutte le migliori canzoni delle classifiche e in grado di scrivere le proprie canzoni di successo. Ci arriveremo mai?
E come pensiero finale, vorrei menzionare Sunspring . È un breve film di fantascienza interamente scritto da uno sceneggiatore di IA che si autodefinisce Benjamin - che ha anche composto l'intermezzo musicale pop-song. Il film è stato realizzato dal regista Oscar Sharp per la 48 ore del film Challenge of Sci-Fi London.
Ora non riesco a smettere di pensare a Terminator. Benvenuto nel futuro.
Credito immagine: Wikipedia, TechInsider, The Verge, Wall Street Journal