Machine Learning

Machine Learning – dare conoscenza ai computer – 1

Quante volte abbiamo sentito parlare, soprattutto negli ultimi anni, delle macchine intelligenti e delle nuove tecnologie che cercano di emulare il comportamento umano attraverso l’utilizzo di robot e macchine sempre più sofisticate ?

Cerchiamo ora di capire in che cosa consiste il Machine Learning e come viene utilizzato, oggi, attraverso l’utilizzo di Python, uno dei più utilizzati e potenti linguaggi di programmazione.

Cos’è il Machine Learning ?

Il Machine Learning è una branca dell’intelligenza artificiale che ha il compito di, attraverso lo studio dei dati in rete, fornire intelligenza alle macchine.

Ma come facciamo ad insegnare ad una macchina a svolgere determinate azioni ? Esistono tre tipi di metodi che generano conoscenza e quindi forniscono le linee guida alla macchina. Conoscenza con supervisione, conoscenza senza supervisione e conoscenza per rafforzamento. Vediamole singolarmente in modo da comprende meglio come funziona il tutto.

machine learning

Conoscenza con supervisione

Partiamo col dire che questo tipo di tecnica di conoscenza è quello più utilizzato al giorno d’oggi. Lo scopo principale dell’addestramento con supervisione è quello di trarre un modello a partire da dati etichettati, i quali ci consentono di effettuare previsioni relative a dati non disponibili o futuri. Viene chiamata con supervisione perché le etichette, i segnali di output, sono già noti.

Un esempio molto semplice e intuitivo per capirci di più è il filtraggio delle email SPAM e NO SPAM. Questo compito di classificazione permette di determinare se una email in entrata è di un tipo piuttosto che dell’altro. Questo perché la macchina ha analizzato anticipatamente delle email già etichettate.

Leggi articolo   Adaline - Neuroni adattivi lineari

Un’altra sottocategoria di apprendimento con supervisione è la regressione dove il segnale risultate è un valore continuo. Tutto ciò lo approfondiremo con i prossimi articoli.

machine learning

Conoscenza senza supervisione

Attraverso questo tipo di conoscenza, a differenza della precedente, abbiamo a che fare con dati sconosciuti, non etichettati o dalla struttura ignota. Sono nate così due tipi di tecniche per l’apprendimento automatico, ovvero il clustering e la riduzione dimensionale.

Clustering

In questa tecnica di machine learning si suddividono i dati in cluster, ovvero dei gruppi dove il contenuto ha una certa somiglianza, ma è comunque diverso dagli altri cluster. Il clustering è un’ottima tecnica per la strutturazione dell’informazione e per individuare relazioni significative nei dati.

Riduzione dimensionale

Questo tipo di tecnica viene utilizzata principalmente per eliminare i dati “rumore“. Viene eseguita nella fase di pre-elaborazione delle caratteristiche. Lo scopo è quello di alleggerire il carico di dati in favore degli algoritmi.

Questo tipo di tecnica però viene utilizzata anche per la rappresentazione dei dati, infatti un’insieme di caratteristiche a elevata dimensione può essere proiettato su uno spazio di caratteristiche mono-, bi-, tri-dimensionale, in modo da utilizzare dei grafici o dei diagrammi per visualizzarlo.

Machine Learning

Conoscenza per rafforzamento

In questo tipo di conoscenza la macchina ha un obbiettivo ma non sa come raggiungerlo. Attraverso l’utilizzo di premi, ricompense e punizioni (reward), l’agente(sistema) va ad imparare una serie di azioni che massimizzano la ricompensa tramite un’approccio esplorativo del tipo trial-and-error o una pianificazione deliberativa.

Un esempio che spiega in maniera completa questo tipo di tecnica è il gioco degli scacchi. L’agente decide quali mosse fare in base allo stato della scacchiera. La vittoria o la sconfitta è la ricompensa finale, in gergo tecnico, il reward.

Leggi articolo   Classificazione a massimo margine con le macchine a vettori di supporto
machine learning

Pre-elaborazione dei dati nel Machine Learning

Questa fase nel machine learning è fondamentale per garantire prestazioni ottimali all’algoritmo di apprendimento. Per capire meglio analizziamo il dataset di dati del fiore Iris che contiene la misurazione di centocinquanta specie di fiori Iris di tre diverse specie: Setosa, Versicolor e Verginica.

machine learning

I dati sono stati estratti dalle fotografie dei fiori. Molti algoritmi di apprendimento richiedono che i dati adottino la stessa scala e tutto ciò viene ottenuto trasformando le caratteristiche in un intervallo [0,1].

Per determinare se il nostro algoritmo di apprendimento automatico si comporta bene ed esegue tutte le generalizzazioni corrette sui nuovi dati, potremmo voler suddividere in modo casuale il dataset in due set distinti: di addestramento e di test.

Il primo servirà per informare e ottimizzare il modello di apprendimento automatico, mentre il secondo lo utilizzeremo alla fine per valutare il modello finale.

Condividi il post

Condividi su facebook
Condividi su google
Condividi su twitter
Condividi su email
Condividi su whatsapp