Blog.

Instance-based Learning e Model-based Learning


Autore
Andrea Provino
Data
Tempo di lettura
3 minuti
Categoria
machine-learning

model-based-learning-instance-based-learning-system-machine-learning-guida-italiano-artificial-intelligence-blog-italia

I sistemi di machine learning possono essere classificati in base a come generalizzano. Distinguiamo gli Instance-based Learning Systems dai Model-based Learning Systems.

Questo è il terzo criterio di classificazione.

Il primo divide i sistemi di machine learning in Supervised, Unsupervised, Semisupervised e Reinforcement Learning.

Il secondo in Batch Learning Systems e Incremental (Online) Learning Systems.

Generalization: how systems create models

Prima di procede facciamo chiarezza sul termine generalizzazione.

Back to school: per preparati ad una verifica di matematica, studiavi la regola generale e ti allenavi svolgendo molteplici esercizi.

La professoressa ti proponeva poi dei problemi che non avevi mai visto prima. Qui si aprono due strade:

  • fallivi perché avevi imparato a memoria la regola generale e avresti saputo risolvere solo i problemi del libro.
  • ruscivi comunque a risolverli perché avevi generalizzato il concetto

Un sistema di machine learning funziona in modo simile.

La maggior parte dei machine learning tasks riguarda la creazione di previsioni. Prevedo ad esempio che il prezzo di un asset di borsa aumenti, o che un’abitazione costi 250.000$.

Per sviluppare un modello, gli algoritmi elaborano i dati (svolgono gli esercizi) individuando la relazione (cioé la regola) che relaziona tra loro le osservazioni: in questo modo generano previsioni.

Affinché un modello risulti performante, deve essere testato in situazioni mai viste prima: solo così è possibile stabilire quanto bene abbia generalizzato (generalize).

I principali approcci alla generalizzazione sono due: Instance-based Learning e Model-based Learning.

Instance-based Learning

Un sistema di apprendimento banale è quello mnemonico.

Un semplice modello potrebbe quindi apprendere a memoria un dato set di training samples e successivamente identificare:

  • osservazioni identiche a quelle su cui si è allenato
  • osservazioni simili, sfruttando una measure of similarity (misura di similarità)

La measure of similarity è un’entità calcolata su due osservazioni. Un esempio? La similarità di due email è misurata calcolando le parole in comune.

Questo sistema prende il nome di Instance-based learning: apprendimento mnemonico e generalizzazione su nuove istanze attraverso la measutre of similarity.

Model-based learning

Il secondo approccio alla generalizzazione è la creazione di un modello partendo da un set di training samples e l’uso dello stesso per previsioni sui nuovi dati: è il model-based learning.

Prendiamo un modello lineare come esempio.

L’equazione lineare del modello ha due parametri “Theta con zero” e “Theta con uno”:

y = θ0 + θ1x

Il valore di questi parametri deve essere appreso. Per farlo occorre definire una performance measure :

  • fitness function (utility function), misura quanto bene un modello generalizza.
  • cost function, misura invece quanto male un modello generalizza. (E’ la perfomance metric maggiormente usata)

Una cost function non fa altro che calcolare la distanza di ciascuna osservazione (ciascun data point) dal modello designato (in questo caso la retta). L’obiettivo è trovare la retta che minimizzi la distanza, correggen do il valore dei due parametri.

Un volta ultimato, il modello può essere usato per previsioni su nuovi dati: è l’inferenza (inference).

Nel prossimo post vedremo le principali problematiche legate al machine learning

Un caldo abbraccio, Andrea.

Taggedmachine learning


Ultimi post

Patricia Merkle Trie

Il Practical Algorithm To Retrieve Information Coded In Alphanumeric Merkle Trie, o Patricia Merkle Trie è una struttura dati chiave-valore usatada Ethereum e particolarmente efficiente per il salvataggio e la verifica dell’integrità dell’informazione. In questo post ne studieremo le caratteristiche. Prima di procedere, ci conviene ripassare l’introduzione al Merkle Tree nella quale abbiamo chiarito il […]

Andrea Provino
ethereum-patricia-merkle-tree
Tree Data Structure: cos’è un Merkle Tree

Un Merkle Tree è una struttura dati efficiente per verificare che un dato appartenga a un insieme esteso di elementi. È comunemente impiegato nelle Peer to Peer network in cui la generazione efficiente di prove (proof) contribuisce alla scalabilità della rete. Capire i vantaggi di questa struttura ci tornerà utile nel nostro percorso di esplorazione […]

Andrea Provino
merkle-tree-cover
UTXO: come funziona il modello Unspent Transaction Outputs

Per tenere traccia dei bilanci utente, la blockchain di Bitcoin sfrutta un modello di contabilità definito UTXO o Unspent Transaction Outputs. In questo articolo ne esaminiamo le caratteristiche. Ogni blockchain è dotata di un sistema di contabilità, un meccanismo attraverso cui tenere traccia dei bilanci di ciascun utente. I due grandi modelli di riferimento nel […]

Andrea Provino
bitcoin-utxo
Cos’è Ethereum

Possiamo definire Ethereum come una macchina a stati distribuita che traccia le transizioni di un archivio dati general-purpose (i.e. una memoria in grado di registrare qualsiasi dato esprimibile come coppia di chiave e valore o key-value) all’interno della Ethereum Blockchain. È arrivato il momento di esplorare uno dei progetti tecnologici più innovativi e interessanti degli […]

Andrea Provino
ethereum