Apprendimento Automatico - Prof. Pier Luca Lanzi Laurea in Ingegneria Informatica Politecnico di Milano Polo regionale di Como

Pagina creata da Edoardo Raimondi
 
CONTINUA A LEGGERE
Metodologie per Sistemi Intelligenti

             Apprendimento
                Automatico
• Prof. Pier Luca Lanzi
• Laurea in Ingegneria
  Informatica
• Politecnico di Milano
• Polo regionale di Como
Intelligenza Artificiale
• "making a machine behave in ways that
  would be called intelligent if a human were
  so behaving." John McCarthy 1955.
Quattro diverse definizioni
• Pensare come un essere umano
  – L’approccio del Test di Turing
• Agire come un essere umano
  – L’approccio della simulazione
• Pensare razionalmente
  – L’approccio delle leggi del pensiero
• Agire razionalmente
  – L’approccio degli agenti razionali
Apprendimento Automatico
• The field of machine learning studies the design of
  computer programs able to induce patterns,
  regularities, or rules from past experiences.
  Learner (a computer program) processes data
  representing past experiences and tries to either
  develop an appropriate response to future data,
  or describe in some meaningful way the data seen
• A branch of artificial intelligence in which a
  computer generates rules underlying or based on
  raw data that has been fed into it
Apprendimento Automatico
• This is the study of how to create computers that
  will learn from experience and modify their
  activity based on that learning (as opposed to
  traditional computers whose activity will not
  change unless the programmer explicitly changes
  it). This discipline is a sub-set of Artificial
  Intelligence
• The ability of a machine to improve its
  performance based on previous results
• The ability of a device to improve its performance
  based on its past performance
Esempio
• Problema: giocare a dama
• Intelligenza Artificiale
  – Riesco a creare un sistema in grado di giocare
    sufficientemente bene da “sembrare dotato di
    intelligenza”?
• Apprendimento Automatico
  – Riesco a creare un sistema in grado di
    “imparare a giocare” a partire da esempi di
    partite?
    O giocando contro altri?
    O giocando contro se stesso?
Apprendimento Automatico
• L'Apprendimento Automatico si occupa
  della ricerca di metodi algoritmici per
  sviluppare programmi che automaticamente
  migliorano la propria performance nel
  tempo.
Apprendimento Automatico
• Definizione (Mitchell, 1997)
  un programma apprende dall'esperienza E
  rispetto ad una classe di problemi T e alla
  misura di performance P, se la sua
  performance sui problemi in T, così come
  misurata da P migliora con le esperienze in
  E.
Esempio: gioco della dama
• Problema T
  – giocare a dama
• Esperienza E
  – partite giocate contro altri avversari o contro
    se stesso
• Performance P
  – numero di partite vinte
Esempio:
classificazione documenti
• Problema T
  – Dato un insieme di articoli su argomenti medici
    vogliamo rispondere in maniera automatica alle
    seguenti domande:
  – L’articolo contiene risultati sperimentali che
    dovrebbero essere archiviati in un database?
  – Se sì, quali geni e proteine sono citati nei risultati?
• Esperienza E
  – Articoli preclassificati rispetto alle domande
    a cui vogliamo una risposta.
• Performance P
  – Con quanta accuratezza riesco a rispondere alle
    domande?
Esempio
• Problema T
   – Addestrare un agente autonomo
     per lo svolgimento di un certo compito.
   – Ad es., sorveglianza, esplorazione, ecc.
• Esperienza E
   – Il comportamento attuale dell'agente?
   – Esempi del comportamento che vorrei l'agente
     eseguisse?
• Performance P
   – Quanto il comportamento dell'agente si avvicina a
     quello desiderato?
• Rappresentazione della soluzione
   – Regole? Macchina a stati finiti?
Esempio
Esempio

     Quale tipo di macchina mi piace?
Esempio
Tecniche, Paradigmi, Problemi
                       • Paradigmi
• Problemi                – Apprendimento
  – Analisi di dati         Supervisionato
  – Agenti Autonomi       – Apprendimento
  – Commercio               non-supervisionato
    Elettronico           – Apprendimento
                            per rinforzo

             • Tecniche
                – Clustering
                – Regole di associazione
                – Alberi di decisione
Paradigmi
• Apprendimento non supervisionato
  (unsupervised learning)

• Apprendimento supervisionato
  (supervised learning)

• Apprendimento per rinforzo
  (reinforcement learning)
Apprendimento non
supervisionato
• Esperienza E
  – E’ costituita da una serie di esempi
    raccolti di cui non sappiamo quasi nulla.
• Problema T
  – Individuare qualcosa d’interessante
• Performance P
  – Dipende da quanto è interessante quello che è
    stato trovato.
Apprendimento non
supervisionato
• Un motore di ricerca per ogni
  interrogazione restituisce solitamente
  migliaia di pagine.

• E’ possibile raggruppare insieme link simili,
  in modo da facilitare la consultazione dei
  risultati?
Apprendimento non
supervisionato
• Un supermercato raccoglie le informazioni
  relative a tutti gli scontrini che vengono
  emessi
• Esisto dei pattern di acquisto interessanti?
• Ad esempio:
  – Chi compra nutella, compra anche il pane e il
    latte
  – Chi compra patatine, compra anche bevande
    gasate
Apprendimento non
supervisionato
Apprendimento supervisionato
• Esperienza E
  – Una serie di esempi che sono stati elaborati da un
    esperto,
    il supervisore
  – L'esperto o supervisore classifica gli esempi
    individuando un particolare fenomeno interessante
• Problema T
  – Estrarre dagli esempi una descrizione compatta
    del fenomeno descritto
  – La descrizione può essere successivamente sfruttata
    per fare delle previsioni sul fenomeno.
• Performance P
  – Dipende da quanto accurata è la previsione su esempi
    non considerati dal supervisore.
Apprendimento Supervisionato
• Dati i record dei clienti di un certo supermercato,
  un esperto etichetta con “interessanti” e “non
  interessati” i clienti in base ad alcuni parametri
  commerciali.
• E’ possibile costruire un modello dei clienti
  “affezionati” su cui è conveniente mirare le
  campagne pubblicitarie future?
• E costruire un modello dei clienti
  “non-affezionati” che si vorrebbero acquisire?
  oppure per ridurre fenomeni di abbandono?
Apprendimento Supervisionato
• Dato un certo numero di cartelle cliniche
  relative a pazienti affetti da una certa
  patologia
• Vogliamo costruire un modello descrittivo
  della patologia, che possa essere sfruttatato
  per predire se un nuovo paziente sarà
  affetto dalla stessa patologia
• Oppure per capire quali sono se le cause
  di una certa patologia dai dati sperimentali
Apprendimento per rinforzo
• Il sistema agisce direttamente sul problema
  “per tentativi”
• Un istruttore “premia” o “punisce” il
  sistema attraverso un segnale numerico di
  rinforzo a seconda del comportamento
  istantaneo del sistema
Apprendimento per rinforzo
• Esperienza (E)
  – Le esperienze che il sistema colleziona
• Problema (T)
  – E’ quello di ottenere quanto più rinforzo
    possibile
• Performance (P)
  – Dipende dalla quantità di rinforzo ottenuta
Apprendimento per rinforzo
• Un agente per il trading on-line
  compra/vende titoli
• L'agente interagisce con altri agenti
• L'agente riceve un rinforzo “positivo” se
  guadagna, “negativo” altrimenti
• Qual è la strategia che porta ad
  un maggior guadagno?
In questo corso…
• Apprendimento non-supervisionato
  – Clustering
  – Regole di associazione e pattern sequenziali
• Apprendimento supervisionato
  – Alberi di decisione
  – Regole di decisione
  – Reti Bayesiane
• Apprendimento per rinforzo
  – Sistemi a classificatori
    (applicazione a problemi di apprendimento
    supervisionato)
Puoi anche leggere