Machine Learning in teoria

apprendimento con supervisione

classificazione, esempio messaggi di spam (classificazione binaria) oppure la classificazione multiclasse (riconoscimento testo scritto a mano)

regressione, trovare la dipendenza tra variabili predittive discrete ed una variabile target continua

apprendimento di rafforzamento

agente che migliora le prestazioni grazie all’interazione con l’ambiente. Siccome nelle informazioni relative all’ambiente includono anche un segnale di ricompensa, allora, si può dire che l’apprendimento di rafforzamento è l’esempio di un apprendimento con supervisione. Il target non è l’etichetta ma la “ricompensa” che misura la qualità con cui la funzione è stata misurata. Esempio, motore del gioco scacchi. Con try-and-error per migliorare la qualità dell’apprendimento

apprendimento senza supervisione

dati non etichettati o dati dalla struttura ignota. Necessario osservare i dati per cercare di capire informazioni cariche di significato.

clustering: dati divisi su un determinato grado di similarità (popolazione delle malattie), marketing per classificare gruppi di clienti

compressione dati (riduzione dimensionale): si esegue nella preelaborazione dei dati per cercare di ridurre il numero di dimensioni e ridurre il carico di memoria usata. si usa la matrice e vettori. Ogni colonna della matrice rappresenta la caratteristica del campione.

Quali sono in generale gli step per la creazione di sistemi di apprendimento automatico?

PRE-ELABORAZIONE

questo step serve per dare una forma ai dati. Cercare di rendere le caratteristiche dei dati omogenei (grazie anche alle attività di normalizzazione), cancellazione delle ridondanze andando a verificare la correlazione delle caratteristiche. Riduzione della dimensionalità delle caratteristiche riducendo quindi anche le prestazioni computazionali

ADDESTRAMENTO E SELEZIONE DI UN MODELLO PREDITTIVO

In questo step si cerca il miglior modello predittivo per un determinato problema. Per trovare il modello migliore si utilizzano delle metriche per misurare le prestazioni di ciascun modello. Per l’addestramento del modello si utilizza un dataset di apprendimento mentre per la valutazione del modello si utilizza un dataset di test.

VALUTAZIONE DEI MODELLI E PREVISIONI

In questo step si utilizza il dataset di test per stimare la qualità del modello predittivo e per identificare l’errore di generalizzazione. Se, dall’analisi, siamo soddisfatti della prestazione allora possiamo utilizzare il modello scelto per predire nuovi dati.

Predizione di un evento attraverso Naive Bayes OnLine

InformaticaGestionale.it propone ai suoi lettori il nuovo servizio online che sfrutta il teorema di Bayes per fare predizioni di qualsiasi tipo grazie ad un set di dati storici eseguiti su specifici attributi. L’obiettivo è predire un determinato target o valore a partire da un nuovo set di attributi.

Questo può essere utile in moltissimi campi di applicazione: dal sociale alla medicina, dalla manutenzione alla produzione industriale.

Ecco una carrellata di esempi:

  1. lotti di produzione PC difettosi sulla base di attributi come temperatura (alta, media, bassa), velocità di produzione, tipo PC (standard, custom), qualità materiali (ottimo, scarso, buono). Riusciamo quindi ad identificare se un lotto sarà difettoso oppure no.
  2. l’acquisto di un prodotto da parte di un potenziale cliente in base ad attributi quali dimensioni azienda (piccola, media o grossa), tipologia azienda (servizi o manifatturiera), prezzo del prodotto.
  3. capire se una persona ha una determinata malattia sulla base di attributi quali sintomi, sesso, esami che determinano se l’individuo è malato oppure no.
  4. capire se un macchinario industriale ha bisogno di manutenzione (in modo da prevenire eventuali guasti) sulla base del tempo di funzionamento, velocità di produzione, complessità del prodotto (semplice, medio, complesso).

Il modello matematico utilizzato è basato su record storici che sono stati preventivamente inseriti (training_set). In base a questi record è possibile predire una determinata condizione preventivamente inserita nel testing_set.

Il calcolo della probabilità condizionata per ognuna delle casistiche determina la probabilità che si verifichi l’evento 1 oppure l’evento 2.

La predizione verrà orientata sull’evento con più alta probabilità.


 

ad esempio:

Data la seguente traingin table, vogliamo predire il valore della riga segnata in giallo (testing table)

 

TIPO AUTO TIPO GUIDA TIPO STRADA KM PERCORSI PREZZO AUTO TARGET
SUV SPORTIVA MISTO 4000 65000 NO MANUTENZIONE
UTILITARIA PASSEGGIO CITTA 80000 30000 MANUTENZIONE
SUV PASSEGGIO MISTO 15000 80000 NO MANUTENZIONE
UTILITARIA SPORTIVA CITTA 8000 20000 MANUTENZIONE
MONOVOLUME SPORTIVA MISTO 4000 65000 NO MANUTENZIONE
MONOVOLUME LAVORO CITTA 80000 40000 NO MANUTENZIONE
SUV LAVORO MISTO 250000 120000 MANUTENZIONE
UTILITARIA LAVORO AUTOSTRADA 70000 10000 MANUTENZIONE
UTILITARIA SPORTIVA MISTO 200000 12000 TO PREDICT

 

Secondo Naive Bayes il valore predetto è MANUTENZIONE : 3.6747338165603E-13

Se, invece di mettere 200.000 km percorsi mettiamo solo 20.000km allora la macchina risulta in NO MANUTENZIONE

qui l’esempio, potete provare a cambiare il testing set e visualizzare il valore predetto: ESEMPIO1

Clicca qui per la DEMO