Machine Learning

 

Machine Learning

3 cose da sapere

Il machine learning è una tecnica di analisi di dati che insegna ai computer a svolgere un’attività naturale per l’uomo e gli animali: imparare dall’esperienza. Gli algoritmi di machine learning usano metodi computazionali per “apprendere” le informazioni direttamente dai dati senza basarsi su un’equazione predeterminata come modello. Essi possono migliorare in modo adattivo le loro prestazioni man mano che aumenta il numero di campioni disponibili per l’apprendimento.

Perché il machine learning è importante

Con l’aumento dei big data, il machine learning è diventata una tecnica fondamentale per la risoluzione di problemi in diversi settori, tra cui:

Familiarizza con il machine learning. Scopri il machine learning, dai concetti base agli algoritmi avanzati. Scarica l’eBook per saperne di più.

Più dati, più domande, migliori risposte

Gli algoritmi di machine learning individuano nei dati i pattern naturali da cui estrarre informazioni ed effettuare migliori previsioni. Essi vengono utilizzati quotidianamente per prendere decisioni importanti nelle diagnosi mediche, nel mercato azionario, nella previsione del carico energetico e altro ancora. Per esempio, i siti multimediali si basano sul machine learning per esaminare milioni di opzioni e fornire agli utenti consigli su canzoni o film. I venditori al dettaglio utilizzano questo approccio per analizzare il comportamento di acquisto dei clienti.

Quando è necessario utilizzare il machine learning?

L’uso del machine learning è consigliato in caso di attività o problemi complessi che implicano l’utilizzo di una grande quantità di dati e molte variabili e se non si dispone di formule o equazioni. Per esempio, il machine learning è una buona opzione per gestire situazioni come queste:

Le regole e le equazioni scritte a mano sono troppo complesse (come nel riconoscimento facciale e vocale).

Le regole di un’attività cambiano continuamente (come nella rilevazione di frodi nei registri delle transazioni).

Il programma deve adattarsi alla continua evoluzione della natura dei dati (come nel trading automatico, nella previsione del fabbisogno energetico e delle tendenze di acquisto).

Come funziona il machine learning

Il machine learning utilizza due tipi di tecniche: l’apprendimento con supervisione, che addestra un modello in base a dati di input e output noti per consentirgli di prevedere output futuri, e l’apprendimento senza supervisione, che individua pattern nascosti o strutture intrinseche nei dati di input.

Figura 1: Le tecniche di machine learning includono l’apprendimento con supervisione e senza supervisione.

Apprendimento con supervisione

Il machine learning con supervisione costruisce un modello in grado di effettuare previsioni sulla base di prove attendibili in caso di incertezza. Un algoritmo di apprendimento con supervisione utilizza un set conosciuto di dati di input e risposte note ai dati (output) e addestra un modello per generare previsioni accettabili in risposta ai nuovi dati. L’utilizzo dell’apprendimento con supervisione è consigliato se si dispone di dati noti per l’output che si desidera prevedere.

L’apprendimento con supervisione utilizza le tecniche di classificazione e regressione per sviluppare modelli predittivi.

Le tecniche di classificazione prevedono risposte discrete: per esempio, se un’e-mail è autentica o spam, oppure se un tumore è maligno o benigno. I modelli di classificazione raggruppano i dati di input in categorie. Tra le applicazioni più comuni figurano l’imaging medicale, il riconoscimento vocale e la valutazione del rischio di credito.

Usa la classificazione se i tuoi dati possono essere etichettati, categorizzati o suddivisi in classi o categorie specifiche. Per esempio, le applicazioni per il riconoscimento della scrittura a mano utilizzano la classificazione per riconoscere lettere e numeri. Nell’elaborazione di immagini e nella visione artificiale, le tecniche di Pattern Recognition senza supervisione vengono utilizzate per la rilevazione di oggetti e la segmentazione di immagini.

Tra gli algoritmi di classificazione più comuni figurano support vector machine (SVM)alberi decisional con boosting e baggingk-nearest neighborNaïve Bayesanalisi discriminanteregressione logisticareti neurali.

Le tecniche di regressione prevedono risposte continue: per esempio, variazioni della temperatura o fluttuazioni della domanda di energia. Le applicazioni tipiche includono la previsione del carico elettrico e il trading algoritmico.

Utilizza le tecniche di regressione se lavori con un intervallo di dati o se la natura della tua risposta è un numero reale, per esempio la temperatura o il tempo rimanente al verificarsi di un guasto di un’attrezzatura.

Tra gli algoritmi di regressione più comuni figurano il modello lineare, il modello non lineare, la regolarizzazione, la regressione stepwise, gli alberi decisionali con boosting e bagging, le reti neurali e l’adaptive neuro-fuzzy learning.

Utilizzo dell’apprendimento con supervisione per prevedere un attacco cardiaco

Immaginiamo che i medici vogliano prevedere se un paziente avrà un attacco cardiaco entro un anno. Hanno a disposizione dati di pazienti precedenti, tra cui età, peso, altezza e pressione sanguigna. Sanno se i pazienti precedenti hanno avuto un infarto entro un anno. Il problema, dunque, è combinare i dati esistenti in un modello in grado di prevedere se un nuovo paziente avrà un attacco cardiaco entro un anno.

Apprendimento senza supervisione

L’apprendimento senza supervisione individua pattern nascosti o strutture intrinseche nei dati. Viene utilizzato per fare deduzioni da set di dati che includono dati di input senza risposte etichettate.

Il clustering è la tecnica di apprendimento senza supervisione più comune. Viene utilizzata nell’analisi esplorativa di dati per individuare pattern nascosti o raggruppamenti nei dati. Tra le applicazioni dell’analisi cluster figurano l’analisi della sequenza genetica, le ricerche di mercato e il riconoscimento di oggetti.

Per esempio, se una società di telefonia cellulare desidera ottimizzare le posizioni di installazione delle sue antenne, può utilizzare il machine learning per stimare il numero di cluster di persone che si collegano alle sue antenne. Un telefono può collegarsi con una sola antenna alla volta, per cui il team utilizza gli algoritmi di clustering per progettare la migliore posizione delle antenne per cellulari in modo da ottimizzare la ricezione del segnale per gruppi, o cluster, di clienti.

Tra gli algoritmi di clustering più comuni figurano k-means e k-medoidsclustering gerarchicomodelli di mistura gaussianamodelli di tipo hidden Markovself-organizing maps, clustering fuzzy c-means e clustering sottrattivo.

Figura 2: Il clustering individua i pattern nascosti nei dati.

Come si decide quale algoritmo di machine learning utilizzare?

La scelta dell’algoritmo giusto può sembrare un arduo compito, dal momento che esistono decine di algoritmi di machine learning con e senza supervisione e ognuno di essi utilizza un diverso approccio di apprendimento.

Non esiste un metodo migliore, né un metodo che valga per tutti. In parte, la ricerca del giusto algoritmo viene fatta per tentativi ed errori; neppure i data scientist più esperti sono in grado di dire se un algoritmo possa funzionare o meno senza averlo testato. Ma la scelta dell’algoritmo dipende anche dal formato e dal tipo di dati utilizzati, dalle informazioni che si desidera ottenere dai dati e da come queste informazioni verranno utilizzate.

Figura 3. Tecniche di machine learning.

Ecco alcune linee guida per la scelta tra il machine learning con supervisione e senza supervisione:

  • Scegli l’apprendimento con supervisione se desideri addestrare un modello per fare una previsione (per esempio, il valore futuro di una variabile continua, come la temperatura o il prezzo di un’azione) o una classificazione (per esempio, identificare la marca di un’automobile dal filmato di una webcam).
  •  Scegli l’apprendimento senza supervisione se desideri analizzare i tuoi dati e addestrare un modello per trovare una buona rappresentazione interna, per esempio suddividendo i dati in cluster.

Machine Learning con MATLAB

Come si può sfruttare l’efficienza del machine learning per utilizzare i dati e prendere decisioni migliori? Con MATLAB, il machine learning è più semplice. Grazie agli strumenti e alle funzioni per la gestione dei big data e alle applicazioni che consentono l’accessibilità del machine learning, MATLAB è un ambiente ideale per l’applicazione del machine learning all’analisi dei dati.

MATLAB garantisce a progettisti e data scientist l’accesso immediato a funzioni predefinite, a un’ampia scelta di toolbox e app specializzate per la classificazione, la regressione e il clustering.

MATLAB consente di:

  • Confrontare approcci quali la regressione logistica, gli alberi di classificazione, le support vector machine, i metodi di ensemble e il deep learning.
  • Utilizzare le tecniche di affinamento e riduzione dei modelli per creare un modello preciso in grado di sfruttare al meglio il potere predittivo dei tuoi dati.
  • Integrare i modelli di machine learning nei sistemi enterprise, nei cluster e nei cloud, e utilizzare i modelli per hardware embedded in real time.
  • Eseguire la generazione di codice automatica per l’analisi di sensori embedded.
  • Supportare i flussi di lavoro integrati, dall’analisi dei dati alla distribuzione.
L’App Classification Learner consente di addestrare modelli per la classificazione dei dati utilizzando tecniche di apprendimento con supervisione.

Applicazioni interessanti di machine learning

Creazione di algoritmi in grado di analizzare opere d’arte

Un gruppo di ricercatori dell’Art and Artificial Intelligence Laboratory presso la Rutgers University ha voluto verificare se un algoritmo informatico fosse in grado di classificare dipinti per stile, genere e artista con la stessa facilità dell’uomo. Lo studio è iniziato con l’identificazione delle feature visive per classificare lo stile di un dipinto. Gli algoritmi sviluppati hanno classificato gli stili dei dipinti nel database con una precisione del 60%, superando comuni persone non esperte.

I ricercatori hanno ipotizzato che le feature visive utili per la classificazione degli stili (un problema dell’apprendimento con supervisione) potessero essere utilizzate anche per determinare le influenze artistiche (un problema dell’apprendimento senza supervisione).

Hanno quindi utilizzato gli algoritmi addestrati con immagini di Google per identificare oggetti specifici. Hanno testato gli algoritmi su oltre 1.700 dipinti di 66 artisti diversi vissuti lungo un periodo di 550 anni. L’algoritmo ha identificato con facilità le opere connesse tra loro, tra cui l’influenza del “Ritratto di Papa Innocenzo X” di Diego Velázquez sullo “Studio dal ritratto di Papa Innocenzo X di Velázquez” di Francis Bacon.

Ottimizzare l’utilizzo dei sistemi energetici HVAC in grandi edifici

I sistemi di riscaldamento, ventilazione e climatizzazione (HVAC) in uffici, ospedali e altri edifici commerciali di grandi dimensioni sono spesso inefficienti perché non tengono conto della variazione dei pattern metereologici, della variabilità dei costi energetici o delle proprietà termiche dell’edificio.

La piattaforma software basata su cloud di BuildingIQ intende risolvere questo problema. La piattaforma utilizza algoritmi e metodi di machine learning avanzati per elaborare continuamente gigabyte di informazioni da misuratori di potenza, termometri e sensori di pressione HVAC, oltre a informazioni sul meteo e sul costo energetico. In particolare, il machine learning viene utilizzato per segmentare dati e stabilire il contributo relativo dell’energia di gas, vapore, elettrica e solare nei processi di riscaldamento e raffreddamento. La piattaforma BuildingIQ consente di ridurre il consumo di energia HVAC negli edifici commerciali di grandi dimensioni del 10-25% durante il normale funzionamento.

Rilevare gli incidenti automobilistici a bassa velocità

Con oltre 8 milioni di membri, la RAC è una delle maggiori organizzazioni motoristiche del Regno Unito e fornisce assistenza stradale, assicurazioni e altri servizi agli automobilisti privati e commerciali.

Per consentire una risposta rapida agli incidenti stradali, ridurre le collisioni e i costi di assicurazione, la RAC ha sviluppato un sistema integrato di rilevamento degli incidenti che utilizza gli algoritmi avanzati di machine learning per rilevare gli urti a bassa velocità e distinguere questi eventi da situazioni di guida più comuni, come il passaggio su dossi o rallentatori. Alcuni test indipendenti hanno dimostrato che il sistema RAC garantisce una precisione del 92% nel rilevamento degli incidenti di prova.

Come saperne di più sul machine learning

Pronto per un approfondimento? Scopri queste risorse di machine learning per iniziare.

In questo webinar, imparerai a utilizzare gli strumenti di machine learning per rilevare pattern e costruire modelli predittivi dai set di dati.
Scopri come applicare, valutare, affinare e distribuire le tecniche di machine learning con MATLAB.
Familiarizza con il machine learning. Scopri il machine learning, dai concetti base agli algoritmi avanzati. Scarica l’eBook per saperne di più.