0 risultati
21 Novembre 2022
18:30

Cos’è il machine learning, com’è nato e alcuni esempi delle sue applicazioni

Quante volte si è sentito parlare di machine learning? A che serve esattamente? E da dove nasce l'idea di allenare delle macchine ad apprendere? Vediamo qualche nozione di base.

434 condivisioni
Cos’è il machine learning, com’è nato e alcuni esempi delle sue applicazioni
Immagine

Con machine learning o apprendimento automatizzato ci si riferisce a una branca dell’informatica (legata all’ambito delle intelligenze artificiali) ampiamente in evoluzione. Questa disciplina si occupa di generare algoritmi in grado di imparare traendo informazioni dall’ambiente circostante e ripetendo più volte esperienze simili, simulando le capacità umane di apprendimento. L'obiettivo? Aumentare e migliorare le performance dei computer sulla base dei dati che hanno a disposizione. Va detto da subito però che il machine learning è composto da diverse tipologie di metodi di apprendimento che permettono alla macchina (machine appunto) di migliorarsi continuamente, facendo esperienza e imparando (learning) dai propri errori. In questo articolo vediamo come è nata la ricerca sull’apprendimento automatizzato, alcune nozioni di base su come funziona e quali sono le più note applicazioni ad oggi in circolo.

La nascita del machine learning

I primi studi relativi all’ambito dell’apprendimento automatizzato risalgono circa a metà del secolo scorso. In particolare tra i primi nomi noti a cui fare riferimento per questi studi c’è quello di Alan Turing che con la sua opera “On Computable Numbers” e la formulazione del suo famoso test pose le basi dell’intera riflessione sulle A.I. e sulla necessità di dare vita a macchine che fossero in grado di apprendere.

Immagine
Alan Turing a sinistra e Frank Rosenblatt a destra.
Credit: a sinistra Thmahe, CC BY–SA 4.0, a destra CC BY–SA 4.0

L’origine dell’accezione moderna del termine machine learning è solitamente associata allo psicologo della Cornell University Frank Rosenblatt che nel 1958 inventò, insieme al suo gruppo di ricerca, una macchina chiamata "percettrone". Questa macchina era in grado di riconoscere le lettere dell'alfabeto e per farlo era composta da tre elementi: un ingresso, un'uscita e un algoritmo che le permetteva di imparare minimizzando l'errore. L'idea è che alla macchina veniva fornita un'informazione sotto forma di input che poi veniva trasformato in un output tramite l'algoritmo. Una volta ottenuto l'output, questo veniva confrontato con un valore di output ideale in modo da capire quanto ancora dovesse lavorare la macchina per migliorare e avvicinarsi il più possibile al risultato desiderato.
A seguito del lavoro di Ronsenblatt il percettrone fu perfezionato da Marvin Minsky e Seymour Papert che oggi sono associati al modello più noto di questa macchina.
Questo è stato solo l'inizio di un processo di evoluzione dell'apprendimento automatizzato ancora in atto e in rapida espansione.

Come funziona il machine learning

L'apprendimento automatico, o machine learning, proviene quindi proprio dall'idea che le macchine (i computer di fatto) possano diventare in grado di eseguire specifici compiti in autonomia, imparando a riconoscere schemi nei dati e facendo esperienza in modo ripetuto di situazioni simili tra loro. Gran parte della crescita degli studi sulle intelligenze artificiali è stata resa possibile dall'invenzione di nuovi algoritmi proprio nell'ambito dell'apprendimento automatico, ma a seconda di come ognuno di questi algoritmi viene allenato si può parlare di diverse tipologie di "allenamento" per le macchine.

Tipologie di apprendimento automatico

Al momento il machine learning può essere suddiviso in quattro macro-tipologie:

  • apprendimento supervisionato: è la forma di apprendimento in cui una macchina cerca di imparare le modalità migliori per svolgere una funzione tramite degli esempi dei suoi valori detti "dati di addestramento". Sostanzialmente la macchina tenta e ritenta, cercando di avvicinarsi il più possibile ai risultati attesi e questo allenamento si basa su esempi forniti dall'essere umano che la imposta e la "supervisiona". Continuando a fare esperienza aggiusterà il tiro finché non riuscirà a dare i risultati attesi anche per compiti per cui non aveva inizialmente alcun genere di esempio;
Immagine
  • apprendimento non supervisionato: è la forma di apprendimento in cui una macchina cerca di trovare conoscenze o informazioni utili quando le vengono dati in pasto dei dati grezzi, quindi senza che ci sia alcuna regola o funzione associata all'input che debba essere appresa. In questo caso si allena la macchina a farle scoprire modelli o informazioni interessanti che potrebbero essere nascosti nei dati che le vengono forniti. Nel fare esperienza di dati grezzi provenienti dall'esterno la macchina impara autonomamente a classificarli e organizzarli, in base a caratteristiche che il computer riconosce come comuni, con l'obiettivo di prevedere modelli per gli input che riceverà successivamente;
  • apprendimento semi-supervisionato: è una forma di apprendimento ibrida in cui viene alla macchina viene sottoposta una quantità di dati incompleta. Ad alcuni input viene associato un valore di output ideale da raggiungere come nel caso del machine learning supervisionato, ad altri invece no come in quello non-supervisionato.
Immagine
  • apprendimento per rinforzo: questa è la forma di apprendimento in cui una macchina viene lasciata libera in un ambiente, senza che le sia attivamente fornita né una regola a cui attenersi né dei dati. In questo ambiente la macchina agisce e recepisce costantemente tutti gli input, ma solo occasionalmente riceve un feedback sul suo "comportamento" sotto forma di "ricompense" o "punizioni". È proprio tramite questo feedback che la macchina deve imparare a comportarsi in modo razionale. L'obiettivo è quello di costruire una macchina che sia davvero autonoma nel selezionare il metodo migliore da adottare a seconda dell'ambiente in cui è inserita.

Ognuna di queste metodologie per l'apprendimento viene utilizzata in ambiti differenti a seconda dell'obiettivo selezionato per la macchina, solo in questo modo si possono garantire performances massime in base al compito da svolgere. Ma a cosa servono esattamente queste macchine, ognuna con il suo specifico metodo di apprendimento?

Applicazioni dell'apprendimento automatizzato

Anche se potrebbe sembrare una tecnica a cui accedono esclusivamente gli addetti ai lavori, in realtà il machine learning è presente sia nella nostra vita di tutti i giorni che in tecnologie estremamente avanzate. Vediamo di seguito qualche esempio in base al tipo di apprendimento adottato.

Esempi di apprendimento supervisionato

Le tecniche di apprendimento supervisionato sono applicate nell'ambito del riconoscimento vocale operato dai nostri dispositivi (smartphone e assistenti digitali per la maggior parte) che imparano, piano piano, a riconoscere in modo sempre più preciso le nostre voci, i termini utilizzati e il nostro modo di formulare dei comandi.

Immagine

Funzionano con questo stesso tipo di apprendimento automatizzato anche le macchine che regolano il modo in cui per ogni utente vengono personalizzate le pubblicità presenti sui siti web. Più l'utente fa ricerche in rete, più l'algoritmo impara a riconoscere le sue preferenze, aggiustando il tiro di volta in volta.
Un ulteriore esempio di uso di apprendimento non supervisionato è quello realizzato da macchine che riescono a capire quando una qualsiasi attività svolta in rete si allontana dalla "normale" tipologia di attività. Per fare un esempio concreto possiamo pensare a un algoritmo in gradi di riconoscere transazioni bancarie non sospette e di distinguerle da quelle sospette, in questo modo si riescono a evidenziare in modo automatico tentativi di frode online.

Esempi di apprendimento non supervisionato

Per quanto riguarda l'apprendimento non supervisionato un esempio classico è quello realizzato dagli algoritmi dei motori di ricerca che – di base – confrontano i dati (in questo caso le pagine web) e tracciano somiglianze per creare una lista di link quanto più attinenti alla ricerca svolta dall'utente.
Si possono però elencare anche altri esempi che coincidono sempre con la nostra vita quotidiana: se pensiamo alle piattaforme di streaming che usiamo per guardare film e serie TV ecco, queste usano il machine learning per visualizzare quali siano i contenuti valutati positivamente dagli utenti e poi li raggruppano per similarità, in modo da presentarli a utenti con gusti simili.  Similmente viene gestita la proposta di promozioni o acquisti: a clienti con interessi o esigenze simili viene proposta la medesima tipologia di prodotto.

Immagine

Dopodiché questo genere di apprendimento viene utilizzato, proprio come il precedente, nell'ambito della sicurezza informatica. In questo caso il machine learning non supervisionato – proprio grazie alla capacità di tracciare modelli di dati – rileva dei contesti che sembrano anomali e che potrebbero nascondere pericoli per la navigazione.

Esempi di apprendimento per rinforzo

Infine, per quanto riguarda l'apprendimento per rinforzo, anche in questo caso l'uso è particolarmente ampio. In primis sono stati costruiti agenti per giocare al computer: l'idea è che si costruiscano macchine in grado di mappare i dati del gioco secondo per secondo, compiendo di conseguenza una serie di azioni che portino alla vittoria o – addirittura – a rendere il più alto possibile il grado di divertimento dell'essere umano che sfida la macchina.

Immagine

Questa stessa tipologia di apprendimento viene usata per addestrare gli ADAS (Advanced Driver Assistance Systems) ovvero i sistemi avanzati di assistenza alla guida. In questo caso le macchine vengono addestrate per scegliere quale sia il metodo migliore per realizzare un parcheggio automatico oppure un cambio corsia, la velocità di andatura o quando cambiare corsia.

Applicazioni per l'elaborazione di grandi quantità di dati

Poiché negli ultimi decenni la mole di dati prodotta dall'uomo e dalle macchine si è espansa in maniera quasi esponenziale, tutte queste metodologie hanno acquisito un ruolo fondamentale anche nell'analisi di tutte queste informazioni. Non solo, moltissimi di questi dati non sono facilmente elaborabili in quanto sono immagini, testi, video e quindi è nata l'esigenza di tradurli in informazioni "masticabili" da parte delle macchine. Questo ambito sfrutta necessariamente alcune tecniche di apprendimento di machine learning per applicarle a grandi volumi di dati e prende nomi come "data mining", "big data", "analytics", ecc.

Immagine

Un esempio tra tutti è la mole di dati generati dagli acceleratori di particelle come quello del CERN, ad esempio, che genera un petabyte (1015 byte) al secondo.  In questo caso sono stati utilizzati metodi di apprendimento automatico per selezionare gli eventi di successo dell'acceleratore che vengono poi analizzati ulteriormente. I ricercatori del CERN hanno anche lanciato uno studio dedicato all'apprendimento automatico per contribuire all'analisi del Bosone di Higgs con l'obiettivo di sviluppare algoritmi in grado di separare gli eventi significativi da quelli meno rilevanti, sulla base dei dati provenienti dal Large Hadron Collider, un acceleratore di particelle del CERN.

Per approfondire ecco un video che abbiamo realizzato sull'intelligenza artificiale:

Nozioni di base e storia del Machine Learning
Avatar utente
Camilla Ferrario
Redattrice
L’universo è un posto strano e il modo che abbiamo di abitarlo cattura continuamente la mia attenzione. “Sii curiosa” è il mio imperativo: amo provare a ricostruire indizio per indizio il grande enigma in cui ci troviamo. Sono laureata in Filosofia, ho fatto la speaker in una web radio e adoro il true crime. Di cosa non posso fare a meno? Del dialogo aperto con gli altri e della pasta alle vongole.
Sfondo autopromo
Cosa stai cercando?
api url views