Cos'è il machine learning?

Per machine learning si intende la scienza in grado di sviluppare algoritmi e modelli statistici utilizzati dai sistemi informatici per lo svolgimento di compiti senza istruzioni esplicite e basandosi, invece, su modelli e inferenza. I sistemi informatici utilizzano gli algoritmi di machine learning per elaborare grandi quantità di dati storici e identificare modelli di dati. Ciò permette loro di predire i risultati in maniera più precisa partendo da un dato set di dati iniziali. Ad esempio, i data scientist possono addestrare un’applicazione medica per la diagnosi del cancro a partire da radiografie archiviando milioni di immagini acquisite e le diagnosi corrispondenti.

Perché il machine learning è importante?

Il machine learning aiuta le aziende a stimolare la crescita, sbloccando nuovi flussi di reddito e risolvendo problemi impegnativi. I dati sono l’elemento trainante fondamentale alla base del processo decisionale aziendale, ma le aziende hanno sempre utilizzato dati provenienti da varie fonti, come i feedback di clienti, i dipendenti e la contabilità. La ricerca sul machine learning permette di automatizzare e ottimizzare questo processo. Utilizzando un software che analizza una grande quantità di dati ad alta velocità, le aziende possono raggiungere i risultati più velocemente.

Come funziona il machine learning?

L’idea fondamentale alla base del machine learning riguarda l’esistenza di una relazione matematica tra una combinazione di dati di input e di output. Il modello di machine learning non conosce questa relazione in anticipo, ma può dedurla se dispone di un numero sufficiente di set di dati. Ciò significa che ogni algoritmo di machine learning viene costruito sulla base di una funzione matematica modificabile. È possibile comprendere il principio di fondo in questo modo:

  1. Noi “addestriamo” l’algoritmo fornendogli le seguenti combinazioni di input/output (i, o): (2, 10), (5, 19) e (9, 31)
  2. Secondo i calcoli dell’algoritmo, la relazione tra input e output è: o=3*i+4
  3. Successivamente, forniamo un input di 7 e chiediamo di predire l’output. L’algoritmo è in grado di stabilire automaticamente che l’output è pari a 25.

Nonostante questa sia una comprensione di base, il machine learning si basa sul principio secondo cui tutti i punti dati complessi possono essere collegati matematicamente dai sistemi informatici purché questi dispongano di dati e potenza di calcolo sufficienti per elaborare tali dati. Di conseguenza, la precisione dell’output è direttamente correlata all’ampiezza dell’input fornito.

Casi d'uso del machine learning ed esempi reali

Diamo un’occhiata alle applicazioni del machine learning in alcuni settori chiave:

Manifatturiero

Il machine learning può supportare la manutenzione predittiva, i controlli qualità e la ricerca innovativa nel settore manifatturiero. Inoltre, la tecnologia del machine learning aiuta le aziende a migliorare le soluzioni logistiche, tra cui le risorse, il processo di produzione e distribuzione e la gestione dell’inventario. Ad esempio, il colosso del settore manifatturiero 3M utilizza il machine learning per portare innovazione nella produzione della carta vetrata. Gli algoritmi di machine learning permettono ai ricercatori di 3M di analizzare il modo in cui lievi cambiamenti di forma, dimensione e orientamento possono migliorare l'abrasività e la durata. Questi suggerimenti influenzano a loro volta il processo di produzione.

Sanità e scienze della vita

La diffusione di sensori e dispositivi indossabili ha generato un importante volume di dati sanitari. I programmi di machine learning analizzano queste informazioni e supportano i medici nelle diagnosi e nelle terapie in tempo reale. I ricercatori di machine learning stanno sviluppando soluzioni in grado di rilevare tumori e di diagnosticare malattie degli occhi, con un impatto significativo sui risultati sanitari. Ad esempio, Cambia Health Solutions utilizza il machine learning per automatizzare e personalizzare trattamenti per donne incinte.

Servizi finanziari

I progetti di machine learning in ambito finanziario migliorano l’analisi dei dati e il regolamento dei rischi. La tecnologia del machine learning permette agli investitori di individuare nuove opportunità analizzando i movimenti del mercato azionario, valutando fondi speculativi o calibrando portafogli finanziari. Inoltre, può aiutare ad individuare clienti ad alto rischio che hanno contratto un prestito e a mitigare gli indizi di frode. Ad esempio, NerdWallet, una società di finanza personale, utilizza il machine learning per confrontare prodotti finanziari come carte di credito, servizi bancari e prestiti.

Vendita al dettaglio

La vendita al dettaglio può avvalersi del machine learning per migliorare il servizio clienti, la gestione dello stock, l’upselling e il marketing multicanale. Ad esempio, Amazon Fulfillment (AFT) ha ridotto i costi delle infrastrutture del 40% grazie all’utilizzo dei modelli di machine learning per individuare errori nell’inventario. Ciò permette di mantenere la promessa di Amazon secondo cui un articolo sarà immediatamente disponibile per i clienti e arriverà in tempo, nonostante l’elaborazione di milioni di spedizioni in tutto il mondo ogni anno.

Media e intrattenimento

Le aziende di intrattenimento sono passate al machine learning per avere una migliore comprensione del proprio pubblico e per offrire contenuti immersivi, personalizzati e on demand. Gli algoritmi di machine learning vengono implementati per progettare trailer e altri spot pubblicitari, offrire ai clienti suggerimenti personalizzati sui contenuti e ottimizzare la produzione. 

Ad esempio, Disney utilizza il machine learning per archiviare la sua libreria multimediale. Gli strumenti di machine learning etichettano, descrivono e smistano automaticamente i contenuti multimediali permettendo agli autori e agli animatori Disney di trovare velocemente i personaggi Disney e familiarizzare facilmente con loro.

Visione computerizzata

La visione artificiale è una tecnologia che riconosce e descrive automaticamente le immagini in modo accurato ed efficiente. Oggi, i sistemi informatici possono accedere a molte immagini e video da smartphone, telecamere del traffico, sistemi di sicurezza e altri dispositivi. Le applicazioni di visione artificiale utilizzano il machine learning per elaborare questi dati accuratamente in modo da identificare gli oggetti e riconoscere i volti, nonché per la classificazione, la raccomandazione, il monitoraggio e il rilevamento.

Ad esempio, CampSite è una piattaforma software leader per campi estivi. I loro campi caricano migliaia di immagini ogni giorno per collegare i genitori all'esperienza del campo dei propri figli. Trovare le foto dei figli in campo era diventato un compito frustrante e dispendioso in termini di tempo per i genitori. CampSite utilizza il machine learning per identificare automaticamente le immagini e avvisare i genitori quando vengono caricate nuove foto del loro bambino.

Quali sono i tipi di algoritmi di machine learning?

Gli algoritmi possono essere suddivisi in quattro diversi stili di apprendimento a seconda dell’output atteso e del tipo di input.

  1. Machine learning con apprendimento supervisionato
  2. Machine learning con apprendimento non supervisionato
  3. Machine learning con apprendimento semi-supervisionato
  4. Machine learning con apprendimento per rinforzo

1. Machine learning con apprendimento supervisionato

I data scientist forniscono agli algoritmi dati di addestramento etichettati e definiti per valutare le correlazioni. I dati campione specificano sia l’input che l’output dell’algoritmo. Ad esempio, le immagini di cifre scritte a mano sono annotate per indicare a quale numero corrispondono. Se dispone di esempi sufficienti, un sistema di apprendimento supervisionato può riconoscere i cluster di pixel e forme associati ad ogni numero. Potrebbe anche riconoscere i numeri scritti a mano, facendo una distinzione accurata tra i numeri 9 e 4 o 6 e 8. 

I punti di forza dell’apprendimento supervisionato sono la semplicità e la facilità di progettazione. È utile per predire un numero limitato di risultati, dividere i dati in categorie o combinare i risultati di altri due algoritmi di machine learning. Tuttavia, etichettare milioni di dati non etichettati rappresenta una sfida. Diamo un’occhiata più da vicino:

Cos'è l'etichettatura dei dati?

L’etichettatura dei dati è il processo di categorizzazione dei dati di input con i valori di output corrispondenti. I dati di addestramento etichettati sono necessari per l’apprendimento supervisionato. Ad esempio, milioni di immagini di mele e banane dovrebbero essere taggate con le parole “mela” o “banana.” Successivamente, le applicazioni di machine learning potrebbero usare questi dati di addestramento per indovinare il nome del frutto quando viene sottoposta loro un’immagine di frutta. Tuttavia, etichettare milioni di nuovi dati può rivelarsi un compito impegnativo e dispendioso in termini di tempo. I servizi di crowd-working come Amazon Mechanical Turk possono in qualche modo superare questo limite degli algoritmi di apprendimento supervisionato. Questi servizi permettono di accedere a un ampio pool di diffusione di forza lavoro in tutto il mondo, rendendo l’acquisizione di dati meno complicata.

2. Machine learning con apprendimento non supervisionato

Gli algoritmi di apprendimento non supervisionato vengono addestrati sulla base di dati non etichettati. Possono esaminare nuovi dati, cercando di stabilire relazioni significative tra input e output predeterminati. Possono individuare modelli e categorizzare i dati. Ad esempio, gli algoritmi non supervisionati possono raggruppare articoli da diversi siti di notizie in categorie comuni come sport, criminalità, ecc. Possono usare l’elaborazione del linguaggio naturale per comprendere il significato e il sentimento dell’articolo. Nella vendita al dettaglio, l’apprendimento non supervisionato può individuare modelli negli acquisti dei clienti e fornire risultati dell’analisi dei dati, come ad esempio il fatto che un cliente è più incline a comprare del pane se compra anche del burro.

L’apprendimento non supervisionato è utile per il riconoscimento di modelli, il rilevamento di anomalie e il raggruppamento automatico di dati in categorie. Dato che i dati di addestramento non devono essere etichettati, la configurazione è piuttosto semplice. Questi algoritmi possono essere utilizzati anche per riordinare ed elaborare automaticamente i dati per modellare ulteriormente. Il limite di questo metodo è rappresentato dal fatto che non è in grado di fornire previsioni precise. Inoltre, non è in grado di isolare tipi specifici di risultati dei dati.

3. Machine learning con apprendimento semi-supervisionato

Come suggerisce il nome, questo metodo combina l’apprendimento supervisionato e non supervisionato. La tecnologia si basa sull'utilizzo di una piccola quantità di dati etichettati e di una grande quantità di dati non etichettati per addestrare il sistema. Prima di tutto, i dati etichettati sono utilizzati per addestrare parzialmente l'algoritmo del machine learning. Successivamente, l'algoritmo parzialmente addestrato etichetta da solo i dati non etichettati. Questo processo è chiamato pseudo-etichettatura. Il modello viene poi riaddestrato sulla base dei dati ottenuti senza essere esplicitamente programmato.

Il vantaggio di questo metodo sta nel fatto che non è necessario disporre di grandi quantità di dati etichettati. È pratico per lavorare con dati quali lunghi documenti che richiederebbero troppo tempo per essere letti ed etichettati dall’uomo.

4. Apprendimento per rinforzo

L’apprendimento per rinforzo è un metodo con valori di ricompensa attribuiti ai diversi passaggi affrontati dall’algoritmo. L’obiettivo del modello è quindi accumulare la maggiore quantità di punti di ricompensa possibile ed eventualmente raggiungere un obiettivo finale. Nel corso dell’ultimo decennio, l’apprendimento per rinforzo è stato applicato per lo più al settore dei videogiochi. I rivoluzionari algoritmi dell’apprendimento per rinforzo hanno raggiunto risultati impressionanti nei giochi classici e moderni, superando spesso in maniera significativa le loro controparti umane. 

Nonostante questo metodo funzioni meglio in alcuni ambienti con dati incerti e complessi, viene implementato raramente in contesti aziendali. Non è efficiente per l’esecuzione di compiti specifici, e l’influenza degli sviluppatori può avere un impatto sul risultato. Progettando le ricompense, i data scientist possono influenzare i risultati.

I modelli di machine learning sono deterministici?

Se l’output di un sistema è prevedibile, allora un modello è considerato deterministico. La maggior parte delle applicazioni software reagisce in maniera prevedibile alle operazioni dell’utente, quindi è possibile dire: “Se l’utente fa così, ottiene questo risultato.” Tuttavia, gli algoritmi di machine learning apprendono tramite l’osservazione e le esperienze. Di conseguenza, sono probabilistici per natura. L’affermazione adesso si trasforma in: “Se l’utente fa così, vi è una possibilità del X% che succeda questo.”

Nel machine learning, il determinismo è una strategia adottata nell’applicazione dei metodi descritti sopra. Tutti i metodi di apprendimento supervisionato, non supervisionato o di altro tipo possono essere resi deterministici a seconda dei risultati desiderati dall’azienda. L'oggetto della ricerca, il recupero dei dati, le decisioni riguardanti la struttura e l’archiviazione stabiliscono se viene adottata una strategia deterministica o meno.

Approccio deterministico e approccio probabilistico

L’approccio deterministico si concentra sull’accuratezza e sulla quantità di dati raccolti. Quindi l’efficienza è prioritaria rispetto all’incertezza. D’altro canto, però, il processo non deterministico (o probabilistico) è progettato per la gestione del fattore casuale. Gli strumenti incorporati sono integrati agli algoritmi di machine learning per aiutare a quantificare, identificare e misurare l’incertezza durante l’apprendimento e l’osservazione.

Cos'è l'apprendimento approfondito?

Il deep learning è un tipo di machine learning modellato sul cervello umano. Gli algoritmi di deep learning analizzano i dati con una struttura logica simile a quella usata dagli umani. Il deep learning utilizza i sistemi intelligenti noti come reti neurali artificiali per elaborare le informazioni su più livelli. I dati fluiscono dal livello di input attraverso diversi livelli di reti neurali nascoste “profonde” prima di arrivare al livello di output. Gli ulteriori livelli nascosti supportano un apprendimento molto più capace rispetto a quello di modelli di machine learning standard.

Cos’è una rete neurale artificiale?

I livelli di deep learning sono nodi di reti neurali artificiali (ANN, Artificial Neural Network) che operano come i neuroni del cervello umano. I nodi possono essere una combinazione di hardware e software. In un algoritmo di deep learning, ogni livello è composto da nodi ANN. Ogni nodo, o neurone artificiale, si collega ad un altro e ha un numero valore e un numero limite associati ad esso. Quando viene attivato, un nodo invia il suo numero valore come input al livello di nodi successivo. Viene attivato soltanto se il suo output è superiore al numero limite specificato. Altrimenti, non viene trasmesso alcun dato.

Cos'è la visione artificiale?

La visione artificiale è un’applicazione del mondo reale di deep learning. Proprio come l’intelligenza artificiale permette ai computer di pensare, la visione artificiale gli permette di vedere, osservare e reagire. Le auto a guida senza conducente utilizzano la visione artificiale per “leggere” la segnaletica stradale. La videocamera di un’auto scatta una fotografie del cartello. Questa fotografia viene inviata all’algoritmo di deep learning dell’auto. Il primo livello nascosto rileva i contorni, il successivo distingue i colori, mentre il terzo identifica i dettagli alfabetici presenti sul cartello. L’algoritmo prevede che si tratta di un segnale di STOP e l’auto reagisce attivando il freno.

Il machine learning e il deep learning sono la stessa cosa?

Il deep learning è un sottoinsieme del machine learning. Gli algoritmi di deep learning possono essere considerati sia come un’evoluzione sofisticata che matematicamente complessa degli algoritmi di machine learning.

Il machine learning e l’intelligenza artificiale sono la stessa cosa?

In breve, la risposta è no. Mentre i termini machine learning e intelligenza artificiale (IA) possono essere usate in modo intercambiabile, questi non sono la stessa cosa. L’intelligenza artificiale è un termine inclusivo che indica diverse strategie e tecniche utilizzate per rendere le macchine più simili agli umani. L’IA include di tutto, dagli smart assistant come Alexa ai robot aspirapolvere e alle auto a guida senza conducente. Il machine learning è uno dei tanti rami dell’intelligenza artificiale. Mentre il machine learning è una IA, non tutte le attività di IA possono essere definite machine learning.

Il machine learning e la Data Science sono la stessa cosa?

No, machine learning e Data science non sono la stessa cosa. La Data Science è un ambito di studio che utilizza un approccio scientifico per estrarre significato e informazioni dettagliate dai dati. I data scientist utilizzano una gamma di strumenti per l’analisi dei dati, mentre il machine learning è solo uno di questi strumenti. I data scientist comprendono il quadro generale dei dati come il modello aziendale, il dominio e la raccolta dei dati, mentre il machine learning è un processo computazionale che riguarda soltanto i dati non elaborati.

Quali sono i vantaggi e gli svantaggi del machine learning?

Vediamo cosa può e non può fare il machine learning:

Vantaggi dei modelli di machine learning:

  • Può identificare trend e modelli di dati che potrebbero sfuggire agli umani.
  • Può funzionare senza alcun intervento umano dopo la configurazione. Ad esempio, il machine learning nei software di sicurezza informatica può monitorare e identificare in maniera continua le irregolarità nel traffico di rete senza alcun input da parte dell’amministratore.
  • I risultati possono diventare più precisi nel corso del tempo.
  • Può gestire diversi formati di dati in ambienti dati dinamici, complessi e vasti.

Svantaggi dei modelli di machine learning:

  • L’addestramento iniziale è costoso e richiede tempo. Può essere difficile da implementare se non si hanno a disposizione quantità sufficienti di dati.
  • È un processo di calcolo complesso che richiede un notevole investimento iniziale se l’hardware è configurato in-house.
  • Può essere complicato interpretare i risultati in maniera corretta ed eliminare l’incertezza senza ricorrere all’aiuto di un esperto.          

In che modo può essere utile il servizio di machine learning di Amazon?

AWS mette il servizio di machine learning a disposizione di qualunque sviluppatore, data scientist e utente aziendale. I servizi di Amazon Machine Learning forniscono infrastrutture con prestazioni elevate, economicamente vantaggiose e scalabili per soddisfare le esigenze aziendali.

Sei solo all’inizio?

Scopri come utilizzare il machine learning con il nostro supporto per dispositivi educativi come AWS DeepRacer, AWS DeepComposer e AWS DeepLens.

Hai un archivio di dati esistente?

Utilizza Amazon SageMaker Data Labeling per flussi di lavoro di etichettatura dei dati integrati che supportano video, immagini e testo.

Hai sistemi di machine learning esistenti?

Utilizza Amazon SageMaker Clarify per individuare i discostamenti e Debugger Amazon SageMaker per monitorare e ottimizzare le prestazioni.

Vuoi implementare il deep learning?

Utilizza Amazon SageMaker Distributed Training per addestrare vasti modelli di deep learning in maniera automatica. Registrati per ottenere un account gratuito e iniziare oggi stesso il tuo percorso nel mondo del machine learning!

Fasi successive del machine learning