Comprendere il machine learning
Il machine learning è la pratica di utilizzare algoritmi matematici per riconoscere modelli nei dati e quindi utilizzare tali modelli per effettuare previsioni.
Un semplice esempio: previsione delle vendite
Per capire meglio il machine learning, analizziamo un semplice esempio che prevede le vendite di un prodotto nel prossimo trimestre. Potremmo sapere che le vendite di questo prodotto sono influenzate dalla quantità di denaro speso per pubblicizzarlo. Osservando i dati dei trimestri precedenti sappiamo:
-
Quanto denaro viene speso (in migliaia di dollari) per pubblicizzare il prodotto in televisione.
-
Quali sono state le vendite (in milioni di dollari).
Se tracciamo i dati, è ovvio che più soldi vengono spesi per pubblicizzare il nostro prodotto in televisione, più vendiamo.
Per prevedere i ricavi delle vendite nel prossimo trimestre, possiamo applicare una funzione ai dati cronologici:
In base all'importo che abbiamo preventivato di spendere in pubblicità televisiva nel prossimo trimestre commerciale, possiamo valutare la funzione al valore corrispondente a tale importo. Supponiamo di voler spendere 225.000 dollari in pubblicità televisiva nel prossimo trimestre. Valutando la funzione a 225 si ottiene 17,7, e possiamo prevedere 17,7 milioni di dollari di vendite per il prossimo trimestre.
Per migliorare ulteriormente l'accuratezza della nostra previsione, possiamo cercare di trovare una funzione che si adatti meglio ai dati cronologici, come mostrato nella figura, e fare previsioni basate su questa funzione.
In questo esempio, abbiamo considerato solo la quantità di denaro speso per la pubblicità televisiva. Potremmo anche considerare altri fattori che influenzano le vendite future. Invece di avere le vendite in funzione della sola spesa pubblicitaria televisiva, potremmo, ad esempio, avere le vendite in funzione delle tre variabili spesa pubblicitaria televisiva, spesa pubblicitaria radiofonica e spesa pubblicitaria sui giornali. Possiamo usare tutte le variabili che vogliamo, ma l'idea generale è la stessa.
Concetti di machine learning
Dal punto di vista dei dati, il problema del machine learning si riduce alla compilazione di una tabella con i dati cronologici. Nella tabella abbiamo una colonna che rappresenta ciò che vogliamo prevedere, che nel nostro esempio precedente era il fatturato. Nel linguaggio del machine learning, questa colonna è chiamata target. Le altre colonne sono chiamate caratteristiche e vengono utilizzate per prevedere il valore della colonna target. Le caratteristiche sono variabili che possono potenzialmente contribuire all'esito desiderato. L'idea fondamentale alla base del machine learning è:
Partendo da un set di dati, troviamo una funzione che si adatti a tali dati, in modo da poter prevedere quale sarà il valore della colonna target in base ai valori delle colonne caratteristiche.
Sono stati sviluppati diversi algoritmi sofisticati di machine learning per risolvere diversi tipi di problemi specifici. Quando forniamo dati a un algoritmo di machine learning e gli permettiamo di apprendere modelli, diciamo che stiamo formando un algoritmo di machine learning.
I problemi di machine learning si dividono in problemi di regressione o di classificazione, a seconda che il target da prevedere sia un valore numerico o categoriale. Vedere gli esempi in Problemi di classificazione e Problemi di regressione.
Machine learning automatizzato
Con il machine learning automatizzato, le funzioni migliori vengono trovate automaticamente durante il training sui dati cronologici. È possibile caricare facilmente un set di dati, selezionare un target e avviare il training con la semplice pressione di un pulsante.
Tuttavia, è possibile ottenere un buon risultato di previsione solo se si dispone di un buon input. Un esperimento di machine learning necessita di una domanda ben definita e di un set di dati progettato per rispondere a tale domanda. Per iniziare il proprio primo esperimento, seguire questi passaggi:
- Definire una domanda di machine learning
Trasformare il proprio caso d'uso aziendale in una domanda specifica utilizzando un framework strutturato.
- Preparare il set di dati per il training
Raccogliere dati di buona qualità che siano rilevanti per il proprio caso d'uso.
- Creare un esperimento di machine learning automatizzato
Una volta terminati i preparativi, è possibile iniziare a sperimentare.