Il futuro del software: Intelligenza Artificiale, Machine Learning, Deep Learning

In questi anni abbiamo imparato che i software sono efficaci ed efficienti quando si tratta di eseguire una serie di istruzioni e calcoli più velocemente dell’uomo. Ma quando una, seppur lunga, lista di condizioni definite a priori non basta a risolvere un problema complesso si ricorre a tecniche di Intelligenza Artificiale.

Tra le tecniche più promettenti ci sono quelle dette Machine Learning, che consistono nella creazione di algoritmi tali da portare il software ad imparare dall’esperienza. Lo si fa non partendo da una lista di regole predefinite, ma da un modello e da istruzioni attraverso le quali apprendere le regole giuste per risolvere il problema dato. (un’infografica dinamica esemplificativa).

Gli algoritmi di apprendimento automatico sono tradizionalmente divisi in cinque principali tipologie: apprendimento supervisionato, non supervisionato, con rinforzo, con apprendimento continuo, con addestramento preventivo. Le prime due sono quelle più largamente utilizzate.

Nell’apprendimento supervisionato si parte fornendo al sistema esempi di input con output desiderato; l’obiettivo è ottenere regole generali che consentano di ottenere l’output voluto quando si incontrano dati di input nuovi.

Nell’apprendimento non supervisionato, invece, non vengono forniti dati già pre classificati al software e quindi il suo compito sarà di individuare autonomamente strutture nascoste di interesse, basandosi solo su criteri generali.

deep neural network

A queste si aggiunge la tecnica più avanzata detta Deep Learning che usa algoritmi più sofisticati: reti neurali su livelli multipli, che simulano il comportamento dei neuroni biologici (un video per approfondire). Oggi l’utilizzo di modelli così complessi è reso possibile dalla potenza di calcolo di computer che lavorano in parallelo.

Il primo progresso in tale ambito è stato di Google che nel 2012 riuscì a creare un sistema in grado di identificare autonomamente un gatto da dieci milioni di immagini. Quest’anno un ulteriore passo in avanti si è avuto con la vittoria di AlphaGO (il super calcolatore di Google) contro il campione mondiale del gioco più complesso al mondo: il GO.

Stiamo transitando da un mondo “mobile first” ad un mondo “AI first”

Per Sundai Pichar, CEO del gigante di Mountain View, stiamo transitando da un mondo “mobile first” ad un mondo “AI first”. In altre parole i software del futuro, applicazioni e sistemi operativi, per rispondere meglio alle esigenze degli utenti dovranno necessariamente fondarsi su tecniche di Intelligenza Artificiale.

In realtà già oggi le tecniche di Intelligenza Artificiale alimentano alcune funzioni che migliorano la nostra vita. Sono utilizzate per combattere lo spam e le frodi con carte di credito, per operare previsioni economiche e finanziarie, per il riconoscimento vocale (Google, Microsoft, Apple, Amazon) e della scrittura manuale, per la classificazione automatica delle immagini (Google, Apple), per comprendere i nostri gusti e dare suggerimenti (Amazon, Spotify, Netflix, Pinterest), per migliorare il newsfeed (Facebook) e i risultati di ricerca (Google).
In generale ogni problema che richiede l’analisi e la correlazione di Big Data, anche in campi critici come quelli medico-scientifici, necessiterà l’applicazione di tecniche di Intelligenza Artificiale.

Quella cui assisteremo sarà una vera e propria guerra di piattaforma per presidiare il prossimo ciclo di innovazione tecnologica nel software. Ma chi controlla il software ormai è in grado di influenzare la trasformazione di tutti i settori tradizionali.
In un prossimo post proverò a sintetizzare le mosse che stanno compiendo i player più importanti per non perdere il treno del prossimo ciclo evolutivo (lo trovate qui la guerra dell’Intelligenza Artificiale).

2 replies on “Il futuro del software: Intelligenza Artificiale, Machine Learning, Deep Learning”

Comments are closed.