Come funziona l'apprendimento automatico: una guida semplice
Pubblicato: 2019-07-31Netflix e Amazon sono diventati piuttosto bravi nel loro gioco: sembrano sempre sapere quali contenuti o prodotti ti piacerebbe vedere/acquistare. Non ti piace vedere tutto già curato secondo i tuoi gusti e preferenze?
Mentre la maggior parte di noi conosce la salsa segreta dietro l'elegante Motore di Raccomandazione di Netflix e Amazon (Machine Learning, ovviamente!), quanti di noi hanno familiarità con i meccanismi interni del Machine Learning?
Per dirla tutta: come funziona il Machine Learning ?
In sostanza, il Machine Learning è una tecnica di analisi dei dati (un sottoinsieme dell'IA) che mira a "imparare" dall'esperienza e consentire alle macchine di eseguire attività che richiedono intelligenza. Gli algoritmi di Machine Learning applicano metodi computazionali per estrarre informazioni e apprendere direttamente dai dati senza essere esplicitamente programmati per questo (non dovendo dipendere da un'equazione predeterminata).
L'anatomia dei sistemi di Machine Learning
Tutti i sistemi ML possono essere disintegrati in tre parti:

- Modello – il componente che si occupa delle identificazioni, cioè le previsioni.
- Parametri – si riferisce ai fattori utilizzati dal modello per prendere le sue decisioni (predizioni).
- Studente – il componente che regola i parametri (e nel complesso, il modello) considerando le differenze nelle previsioni rispetto al risultato effettivo.
Tipi di apprendimento automatico
Ora che hai familiarità con i componenti principali dei sistemi ML, è il momento di dare un'occhiata ai diversi modi in cui "imparano".
Apprendimento supervisionato
Nell'apprendimento supervisionato, un modello viene addestrato in modo esplicito su come mappare l'input sull'output. Un algoritmo di apprendimento supervisionato prende un insieme riconosciuto di dati di input insieme a risposte note (output) a quei dati e addestra il modello per generare previsioni ragionevoli in risposta a nuovi dati di input.
L'apprendimento supervisionato utilizza due approcci per sviluppare modelli predittivi:
- Classificazione : come suggerisce il nome, questa tecnica classifica i dati di input in diverse categorie etichettandoli. Viene utilizzato per prevedere risposte discrete (ad esempio, se una cellula cancerosa è benigna o maligna). L'imaging medico, il riconoscimento vocale e il punteggio di credito sono tre casi d'uso popolari di classificazione.
- Regressione : questa tecnica viene utilizzata per prevedere le risposte continue identificando i modelli nei dati di input. Ad esempio, le fluttuazioni della temperatura o del tempo. La regressione viene utilizzata per prevedere il tempo, il carico di elettricità e il trading algoritmico.
Apprendimento senza supervisione
L'approccio dell'apprendimento non supervisionato utilizza dati non etichettati e cerca di svelare i modelli nascosti al suo interno. Pertanto, la tecnica trae inferenze da set di dati costituiti da dati di input privi di risposte etichettate.
- Clustering : uno dei metodi di apprendimento non supervisionato più comuni, il clustering è una tecnica di analisi dei dati esplorativa che classifica i dati in "cluster" senza alcuna informazione nota sulle credenziali del cluster. Il riconoscimento degli oggetti e l'analisi della sequenza genica sono due esempi di clustering.
- Riduzione dimensionale – Riduzione dimensionale pulisce i dati di input da tutte le informazioni ridondanti e conserva solo le parti essenziali. Pertanto, i dati non solo diventano puliti, ma si riducono anche di dimensioni, occupando così meno spazio di archiviazione.
Insegnamento rafforzativo
L'apprendimento per rinforzo mira a costruire modelli autosufficienti e di autoapprendimento che possono apprendere e migliorare attraverso tentativi ed errori. Nel processo di apprendimento (formazione), se l'algoritmo può eseguire con successo azioni specifiche, vengono attivati segnali di ricompensa. I segnali di ricompensa funzionano come luci guida per gli algoritmi. Ci sono due segnali di ricompensa:

- Viene attivato un segnale positivo per incoraggiare e continuare una particolare sequenza di azioni.
- Un segnale negativo è una penalità per una particolare azione sbagliata. Richiede la correzione dell'errore prima di procedere ulteriormente nel processo di formazione.
L'apprendimento per rinforzo è ampiamente utilizzato nei videogiochi. È anche il meccanismo alla base delle auto a guida autonoma.
All'interno della funzione 'learning' degli algoritmi ML
Dietro il funzionamento degli algoritmi ML e il modo in cui apprendono attraverso l'esperienza, ci sono tre principi comuni.
Imparare una funzione
Il primo passaggio del processo di apprendimento è dove gli algoritmi ML apprendono la funzione target (f) che mappa al meglio la variabile di input (X) alla variabile di output (Y). Così,
Y = f(X).
Qui, la forma della funzione target (f) è sconosciuta, da cui la modellazione predittiva.
In questa fase di apprendimento generale, l'algoritmo ML impara a fare previsioni future (Y) basate sulle nuove variabili di input (X). Naturalmente, il processo non è esente da errori. Qui l'errore (e) esiste indipendentemente dai dati di input (X). Così,
Y = f(X) + e
Poiché l'errore (e) potrebbe non avere attributi sufficienti per caratterizzare al meglio lo scenario di mappatura da X a Y, viene chiamato errore irriducibile: indipendentemente da quanto sia bravo l'algoritmo a stimare la funzione target (f), non è possibile ridurre l'errore ( e).
Fare previsioni e imparare a migliorarle
Nel punto precedente, abbiamo capito come un algoritmo ML apprende una funzione target (f). E sappiamo già che il nostro unico e unico obiettivo qui è trovare il modo migliore per mappare Y da X. In altre parole, dobbiamo trovare il modo più accurato per mappare l'input sull'output.
Ci saranno errori (e), sì, ma l'algoritmo deve continuare a cercare di capire quanto è lontano dall'output desiderato (Y) e come raggiungerlo. In questo processo, regolerà continuamente i parametri oi valori di input (X) in modo che corrispondano al meglio all'output (Y). Ciò continuerà fino a raggiungere un alto grado di somiglianza e precisione con il modello di output desiderato.
Come apprendere l'apprendimento automatico: passo dopo passoL'approccio di apprendimento 'Gradient Descent'
Può essere vero che siamo riusciti a creare macchine "intelligenti", ma il loro ritmo di apprendimento è diverso: le macchine tendono a rallentare. Credono nel processo di apprendimento della "discesa graduale": non fai il salto subito, ma fai piccoli passi e scendi lentamente dalla cima (la metafora qui è quella di scendere da una montagna).

Mentre scendi da una montagna, non salti, non corri e non ti lanci giù in una volta sola; invece, fai passi misurati e calcolati per scendere in fondo in sicurezza ed evitare contrattempi.
Gli algoritmi ML utilizzano questo approccio: continuano ad adattarsi ai parametri che cambiano (immagina di nuovo il terreno accidentato e inesplorato di una montagna) per ottenere finalmente il risultato desiderato.
Concludere…
L'obiettivo fondamentale di tutti gli algoritmi di Machine Learning è sviluppare un modello predittivo che si generalizzi al meglio a dati di input specifici. Poiché gli algoritmi e i sistemi ML si addestrano da soli attraverso diversi tipi di input/variabili/parametri, è fondamentale disporre di un vasto pool di dati. Questo per consentire agli algoritmi ML di interagire con diversi tipi di dati per apprendere il loro comportamento e produrre i risultati desiderati.
Ci auguriamo che con questo post potremmo demistificare il funzionamento del Machine Learning per te!