Machine learning

Machine Learning. In italiano rende bene “apprendimento automatico” o “macchina che impara da sola”, inteso come capacità della macchina/computer di apprendere senza essere state esplicitamente e preventivamente programmata.

Oggi, la definizione più accreditata (complicata!?) è:

«Si dice che un programma apprende dall’esperienza. E con riferimento a alcune classi di compiti T e con misurazione della performance P, se le sue performance nel compito T, come misurato da P, migliorano con l’esperienza E».

Detto in parole più semplici: il Machine Learning permette ai computer di imparare dall’esperienza; c’è apprendimento quando le prestazioni del programma migliorano dopo lo svolgimento di un compito o il completamento di un’azione (anche errata, partendo dall’assunto che anche per l’uomo vale il principio “sbagliando si impara”).

Guardando il Machine Learning da una prospettiva informatica, anziché scrivere il codice di programmazione attraverso il quale, passo dopo passo si “dice” alla macchina cosa fare, al computer vengono forniti solo dei set di dati inseriti in un generico algoritmo che sviluppa una propria logica per svolgere la funzione, l’attività, il compito richiesto.

Come funziona

Il Machine Learning funziona e si evidenzia sulla base di due distinti approcci:

  • -si danno al computer esempi completi da utilizzare come indicazione per eseguire il compito richiesto (apprendimento supervisionato)
  • -si lascia lavorare il software senza alcun “aiuto” (apprendimento non supervisionato)

In realtà, ci sono poi dei sottoinsiemi che consentono di fare un’ulteriore classificazione ancora più dettagliata del Machine Learning proprio in base al suo funzionamento, ma sono decisamente per “tecnici”.

Machine Learning: le applicazioni

Le applicazioni di Machine Learning sono già oggi molto numerose (alcune le abbiamo già anticipate) e fanno parte della nostra vita quotidiana.

Pensiamo per esempio all’utilizzo dei motori di ricerca: attraverso una o più parole chiave, questi motori restituiscono liste di risultati (le cosiddette SERP – Search Engine Results Page) che sono l’effetto di algoritmi con apprendimento non supervisionato (forniscono come output informazioni ritenute attinenti alla ricerca effettuata in base all’analisi di schemi, modelli, strutture nei dati).

Altro esempio comune è legato ai filtri anti-spam delle e-mail, basati su sistemi che imparano continuamente sia ad intercettare messaggi di posta elettronica sospetti o fraudolenti sia ad agire di conseguenza (per esempio eliminandoli prima che vengano distribuiti sulle caselle personali degli utenti). Sistemi di questo tipo, anche con sofisticazioni maggiori, vengono per esempio impiegati anche nel settore Finance per la prevenzione delle frodi (come la clonazione della carta di credito), dei furti di dati e identità; gli algoritmi imparano ad agire mettendo in correlazione eventi, abitudini degli utenti, preferenze di spesa, ecc.; informazioni attraverso le quali riescono poi a identificare in real-time eventuali comportamenti anomali che potrebbero appunto identificare un furto od una frode.

Altre Interessanti dimostrazioni con apprendimento supervisionato arrivano dal settore della ricerca scientifica in campo medico. Gli algoritmi imparano a fare previsioni sempre più accurate per prevenire lo scatenarsi di epidemie oppure per effettuare diagnosi di tumori o malattie rare in modo accurato e tempestivo.

E ancora, sempre nell’ambito dell’apprendimento supervisionato, ci sono interessanti applicazioni di Machine Learning a livello di riconoscimento vocale o identificazione della scrittura manuale.

Come accennato, i sistemi che si basano sull’apprendimento con rinforzo stanno alla base dello sviluppo delle auto a guida autonoma che, proprio attraverso il Machine Learning, imparano a riconoscere l’ambiente circostante (con i dati raccolti da sensori, GPS, ecc.) e ad adattare il loro “comportamento” in base alle specifiche situazioni che devono affrontare/superare.

Anche i cosiddetti sistemi di raccomandazione sfruttano il Machine Learning imparando dal comportamento e dalle preferenze degli utenti che navigano su siti web, piattaforme o applicazioni mobile; ne sono un esempio quelli che comunemente ci siamo abituati a vedere ed utilizzare sulle piattaforme di eCommerce come Amazon o di intrattenimento e accesso a contenuti come Netflix o Spotify.

Articolo a cura di Mario Solerio