Machine Learning. Capacità di apprendimento è fondamentale in un sistema intelligente per



Documenti analoghi
APPRENDIMENTO AUTOMATICO

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

Analisi dei requisiti e casi d uso

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Pro e contro delle RNA

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Fasi di creazione di un programma

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

PROGETTO EM.MA PRESIDIO

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

Tecniche di riconoscimento statistico

1. PRIME PROPRIETÀ 2

Semantica dei programmi. La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma.

VC-dimension: Esempio

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Introduzione al MATLAB c Parte 2

Algoritmi e strutture dati. Codici di Huffman

Il Problem-Based Learning dalla pratica alla teoria

Piano di gestione della qualità

Ancora su diagnosi. Lezione 9 giugno. Conoscenza incompleta e senso comune. Frameworks per il ragionamento basato su assunzioni

Ottimizzazione Multi Obiettivo

Metodi statistici per l economia (Prof. Capitanio) Slide n. 9. Materiale di supporto per le lezioni. Non sostituisce il libro di testo

Semantica Assiomatica

LE FUNZIONI A DUE VARIABILI

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

come nasce una ricerca

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

Transitori del primo ordine

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti

Errori più comuni. nelle prove scritte

Lezione 8. La macchina universale

x u v(p(x, fx) q(u, v)), e poi

Ottimizzazione delle interrogazioni (parte I)

Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing

~ Copyright Ripetizionando - All rights reserved ~ STUDIO DI FUNZIONE

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

Data mining: classificazione DataBase and Data Mining Group of Politecnico di Torino

Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi.

CAPITOLO 8 LA VERIFICA D IPOTESI. I FONDAMENTI

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Introduzione all Information Retrieval

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Regressione non lineare con un modello neurale feedforward

OSSERVAZIONI TEORICHE Lezione n. 4

Introduzione ai Metodi Formali

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

4 3 4 = 4 x x x 10 0 aaa

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

La distribuzione Normale. La distribuzione Normale

Lezione 4. Modello EER

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Interpretazione astratta

TECNICHE DI SIMULAZIONE

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

Il concetto di valore medio in generale

Università degli Studi di Perugia A.A. 2014/2015 Dipartimento di Economia. ECONOMIA INDUSTRIALE Prof. Davide Castellani

Aprire WEKA Explorer Caricare il file circletrain.arff Selezionare random split al 66% come modalità di test Selezionare J48 come classificatore e

I PROBLEMI ALGEBRICI

MACHINE LEARNING e DATA MINING Introduzione. a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it

Il campionamento statistico

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

LEZIONE 3. Ing. Andrea Ghedi AA 2009/2010. Ing. Andrea Ghedi AA 2009/2010

Esempi di algoritmi. Lezione III

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Verifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio

SVM. Veronica Piccialli. Roma 11 gennaio Università degli Studi di Roma Tor Vergata 1 / 14

Sistema operativo: Gestione della memoria

Complessità Computazionale

(anno accademico )


PROBABILITÀ - SCHEDA N. 2 LE VARIABILI ALEATORIE

Il Modello Relazionale

Progettaz. e sviluppo Data Base

Appunti di informatica. Lezione 2 anno accademico Mario Verdicchio

Calcolatori Elettronici A a.a. 2008/2009

ALGEBRA DELLE PROPOSIZIONI

Ricerca di outlier. Ricerca di Anomalie/Outlier

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.

Fondamenti dei linguaggi di programmazione

GESTIONE INFORMATICA DEI DATI AZIENDALI

FUNZIONI ELEMENTARI - ESERCIZI SVOLTI

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno

G iochi con le carte 1

Elementi di Psicometria con Laboratorio di SPSS 1

Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione

LABORATORIO DI SISTEMI

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

Corrispondenze e funzioni

1) Si consideri un esperimento che consiste nel lancio di 5 dadi. Lo spazio campionario:

Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale

Metodologie di programmazione in Fortran 90

Rappresentazione grafica di entità e attributi

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Sistemi Informativi e Basi di Dati

Transcript:

Machine Learning Capacità di apprendimento è fondamentale in un stema intelligente per risolvere nuovi problemi n ripetere gli errori fatti in passato risolvere problemi più efficientemente o in modo migliore automia nell affrontare e risolvere problemi (indipendenza da esperto che fornisce la coscenza) adattar ai cambiamenti dell ambiente circostante Un stema senza queste caratteristiche difficilmente potrebbe essere conderato intelligente Machine learning importante area della AI a partire dagli anni 60 importanti risultati: vari approcci all apprendimento importanti relazioni con altre aree di ricerca, n solo della AI o dell informatica Console, Botta - Dip Informatica, Univ. Tori Machine learning 1 K.B. Problem solver learning element attuatori sensori environment Learning element estende la K.B. Interagendo con l ambiente usando il problem solver usando coscenza già disponibile Molti approcci per definire il learning element obiettivo del processo di apprendimento tipo di informazione disponibile tipo di coscenza disponibile forma della coscenza da apprendere Console, Botta - Dip Informatica, Univ. Tori Machine learning 2

Ad esempio rote learning : semplice caching di ca da riusare in futuro evoluzione verso il Case-based Reasoning (CBR) learning senza coscenza a priori learning da esempi (induttivo o generalizzazione) learning con coscenza a-priori learning da esempi (basato sulla spiegazione) Rote learning Forma elementare di apprendimento alla fine della soluzione di un problema problem solver passa la soluzione al learning element per il caching all inizio nella soluzione di un problema guarda se per caso n c è già la soluzione in cache se c è: retrieve se n c e: risolvi il problema Console, Botta - Dip Informatica, Univ. Tori Machine learning 3 Esempio: strategie per giochi min-max (con alfa-beta) per scegliere la mossa migliore in una pozione espane dell albero fi ad un livello N prefissato euristica sulle foglie propagazione verso l alto e scelta della mossa migliore esempio N=2 x A euristica migliore (es. 10) in pozione A, x è la mossa migliore con stima euristica: 10 memorizzazione (caching) di questo risultato ogni volta che ci trova in pozione A n deve espandere di nuovo l albero ma trova la soluzione nella cache molto utile anche in pozioni intermedie: permette di migliorare gnificativamente nel tempo le prestazioni Console, Botta - Dip Informatica, Univ. Tori Machine learning 4

Esempio B A in A invece di usare la stima euristica usa il valore nella cache: la mossa migliore ha valore 10 in questo modo è come se l espane avvenisse a più livelli Forma molto elementare di apprendimento n particolarmente intelligente funziona solo se in futuro ripete la stessa tuazione Forme più evolute di caching dei risultati studiati in anni più recenti case-based reasoning memorizzazione di ca attraverso features meccanismi di generalizzazione dei ca e delle soluzioni tecniche di gestione della memoria dei ca, di match tra ca e di retrieval di ca Instance-based Learning Console, Botta - Dip Informatica, Univ. Tori Machine learning 5 Apprendimento induttivo Apprendimento a partire da esempi forniti da un supervisore Induzione: una posbile vione matematica dato un ineme di coppie <a i, f(a i )> determinare quale è la funzione f(x) di cui le coppie so istanze Termilogia: Esempio = una istanza <a i, f(a i )> della funzione da apprendere Contro-esempio = una coppia <a j,b> per cui ha che b f(a j ) Ipote = una posbile definizione h per la funzione da apprendere Spazio di ipote = l ineme delle ipote posbili Bias = un criterio di preferenza tra le ipote ad esempio forma ntattica delle funzioni Induzione = generalizzazione da esempi obiettivo: trovare una ipote h che a in accordo con tutti gli esempi e i contro-esempi Induzione: forma di inferenza logica Console, Botta - Dip Informatica, Univ. Tori Machine learning 6

Concept learning: un altra vione dell induzione problema: dato ineme di concetti (clas di oggetti) dato un ineme di esempi e contro-esempi per i concetti esempi: istanze del concetto contro-esempi: individui che n so istanze del concetto apprendere la descrizione dei concetti esempio: clasficazione (vedremo) Molti approcci all apprendimento induttivo tipo di coscenza da apprendere (e bias) tipo di esempi diverse forme (più o me forti) di generalizzazione Vedremo apprendimento di alberi decionali per la clasficazione apprendimento di descrizioni strutturate di concetti reti semantiche formule logiche: veron space apprendimento in reti neurali Console, Botta - Dip Informatica, Univ. Tori Machine learning 7 Clasficazione Forma di problem solving comune in molti task dato un ineme di clas C1, C2,, Cn per ogni classe è fornita una definizione (descrizione) per ognuna delle Ci è dato un ineme di features fi1,, fin dato un oggetto a: stabilire a quale delle clas appartiene Apprendimento per clasficazione: dato un ineme di esempi (e controesempi) apprendere la descrizione delle clas Esempio descrizione di clas classe C1=auto: ruote=4, motore=presente classe C2=bici: ruote=2, motore=assente esempi a=auto motore=presente a t = auto ruote=2 Molte posbili rappresentazioni delle clas e approcci alla clasficazione Console, Botta - Dip Informatica, Univ. Tori Machine learning 8

Una vione grafica Classe C descritta da due attributi a1 e a2 rappresentazione grafica di esempi e contro-esempi a2 esempio contro-esempio Concetto da apprendere: figura nel pia di a1, a2 che copre tutti gli esempi n copre contro-esempi bias: forma geometrica della figura esempio a2 a1 a1 Console, Botta - Dip Informatica, Univ. Tori Machine learning 9 Alberi decionali Una rappresentazione operazionale per un stema di decione (e di clasficazione) Alberi in cui i di con figli corrispondo a domande (attributi) gli archi che esco dai di alle posbili risposte (valori degli attributi) le foglie so decioni (le clas) Esempio No. di ruote 2 4 moto motore bici auto Una verone più semplice: albero di decione per un concetto boolea (appartenenenza a una classe) Console, Botta - Dip Informatica, Univ. Tori Machine learning 10

Esempio [Russel, Norvig]: entrare in un ristorante?. clienti nessu alcuni pie stima attesa >60 30-60 10-30 0-10 alternative fame pretazione Bar Ven/Sab alternative piove e so le due clas di decione Console, Botta - Dip Informatica, Univ. Tori Machine learning 11 Apprendimento: costruire l albero a partire da esempi esempi di decioni / (esempi e contro-esempi) nel caso di decioni binarie esempi delle varie clas corrispondenti alle foglie Esempio: Es. attributi Dec alt. bar V/S fame C prez piov pren tipo att x1 alc F 0-10 Si x2 pie Thai 30-60 No x3 alc hamb 0-10 Si x4 pie Thai 10-30 Si x5 pie F >60 No x6 alc I 0-10 Si x7 ness hamb 0-10 No x8 alc Thai 0-10 Si x9 pie hamb >60 No x10 pie I 10-30 No x11 ness Thai 0-10 No x12 pie hamb 30-60 Si Console, Botta - Dip Informatica, Univ. Tori Machine learning 12

Una soluzione banale costruire un ramo per ognu degli esempi (una forma di rote learning) Obiettivo costruire un albero semplice Occam s razor: il più semplice tra quelli constenti con gli esempi in generale indecidibile euristiche per costruirne u ragionevolmente semplice Un algoritmo: ID3 [Quinlan] if n ci so esempi then termina (o clasfica a maggioranza) if tutti gli esempi han la stessa clasficazione then etichetta il do con la clasficazione else if nessun attributo rimasto then termina con problema seleziona attributo ai che discrimina meglio dividi gli esempi in base ai valori di ai costruisci un do etichettato con ai e con un ramo in uscita per ogni valore vj di ai richiama ricorvamente per ogni vj con gli esempi corrispondenti Console, Botta - Dip Informatica, Univ. Tori Machine learning 13 Attributo ideale ai da selezionare ad ogni passo discrimina completamente tra gli esempi, osa dati valori v1,, vk per ogni vj, tutti gli esempi con lo stesso valore vj han la stessa clasficazione Attributo da scegliere quello che discrimina meglio tra gli esempi per la maggior parte dei vj, gli esempi con lo stesso valore di vj han qua tutti la stessa clasficazione Una misura della bontà di un attributo: entropia studiata in information theory [Shann, Weaver] misura la quantità di informazione fornita da ognu degli attributi per attr ai, e ogni valore vj costruiamo distribuzione di probabilità delle clas P(C1),, P(Cm) I(ai) informazione fornita da ai definita nel modo seguente I(ai) = Σ I(vj) I(vj) = Σ -P(Ck) log 2 P(Ck) 1<=k<=m ha valore minimo (0) quando una P(Ck) vale 1, osa quando ogni valore dell attributo discrimina completamente Console, Botta - Dip Informatica, Univ. Tori Machine learning 14

Esempio attributo Clienti: per due valori discrimina completamente nessu : --- : x7, x11 Clienti pie : x4, x12 : x2, x5, x9, x10 alcuni : x1, x3, x6, x8 : --- attributo tipo: discrimina male per tutti i valori burg : x3, x12 : x7, x19 I : x6 : x10 tipo F : x1 : x5 Thai : x4, x8 : x2, x11 Tra i due Clienti è la scelta migliore in generale tra tutti è quello con entropia più bassa Console, Botta - Dip Informatica, Univ. Tori Machine learning 15 Algoritmo procede ricorvamente conderando il valore pie di Clienti e conderando gli esempi per quel valore analizza gli altri attributi seleziona quello che discrimina meglio nel caso fame : per u dei due valori ha clasficazione completa nessu : --- : x7, x11 Clienti pie : x4, x12 : x2, x5, x9, x10 alcuni : x1, x3, x6, x8 : --- : x4, x12 : x2, x10 fame : --- : x5, x9 Analogamente procede ricorvamente su ramo Console, Botta - Dip Informatica, Univ. Tori Machine learning 16

Alla fine albero risultante (diverso da quello visto prima) : x12 : --- burg nessu : --- : x7, x11 : x4, x12 : x2, x10 tipo I : --- : x10 Clienti pie : x4, x12 : x2, x5, x9, x10 fame F : --- :--- alcuni : x1, x3, x6, x8 : --- Console, Botta - Dip Informatica, Univ. Tori Machine learning 17 : --- : x5, x9 Thai : x4 : x2? Ven/Sab : x4 : --- : --- : x2 Valutazione delle prestazioni Coscenza appresa influenzata dagli esempi potrebbe clasficare in modo sbagliato nuove istanze esempi devo essere un buon campione della popolazione Una strategia di verifica della coscenza appresa da esempi collezionare un largo ineme di esempi che a un campione gnificativo dividere l ineme in due parti training set T test set S in modo uniforme (secondo la stessa distribuzione degli esempi) effettuare l apprendimento usando T valutare la percentuale di corretta clasficazione usando S ripetere lo stesso processo più volte con diversa divione tra T e S e per diverse dimeni del training set Console, Botta - Dip Informatica, Univ. Tori Machine learning 18

Learning di descrizioni strutturate In alberi decionali le clas n so rappresentate in modo esplicito Altri approcci: rappresentazione strutturata delle clas usando un linguaggio di rappresentazione della coscenza reti semantiche logica Vedremo due approcci approccio di Winston basato su reti semantiche veron space [Mitchell]: apprendimento di descrizioni basate su formule logiche Console, Botta - Dip Informatica, Univ. Tori Machine learning 19 L approccio di Winston Concetti rappresentati mediante reti semantiche di: entità archi: relazioni ISA proprietà (e quindi relazioni tra entità) Esempio descrizione di oggetti architettonici (stilizzati) casa has-part A has-part ISA B supported-by C ISA wedge brick Console, Botta - Dip Informatica, Univ. Tori Machine learning 20

Istanze (esempi): descritti mediante reti semantiche Learning: generalizzare da reti semantiche corrispondenti agli esempi per ottenere quelle delle clas Metodo incrementale parte da un esempio rete della classe coincide con quella dell esempio dato altro esempio generalizza rete della classe per coprire nuovo esempio (se n lo copre già) vari tipi di generalizzazioni posbili sfruttando ISA eliminando proprietà generalizzando proprietà Oss: in realtà usa linguaggio testuale che descrive le reti semantiche Esempio: apprendimento della descrizione della classe arco Console, Botta - Dip Informatica, Univ. Tori Machine learning 21 1 esempio classe A has-part has-part has-part C A B supported-by supported-by D has-part has-part has-part ISA brick ISA C B brick left-of supported-by supported-by D right-of brick ISA brick ISA brick left-of right-of brick 2 esempio A has-part has-part has-part C B supported-by supported-by D ISA wedge ISA brick left-of right-of brick A has-part has-part has-part C B supported-by supported-by D ISA object ISA brick left-of right-of brick Console, Botta - Dip Informatica, Univ. Tori Machine learning 22

Apprendimento di formule logiche Descrizione clas formula logica F i cui predicati so attributi delle clas F constente con esempi F vera su esempi F falsa su contro-esempi estene di F: ineme delle istanze per cui F è vera Esempi formule logiche e classe di appartenenenza <Fi, classe> (spesso Fi ground) Esempio classe attesa al ristorante x attesa(x) Clienti(X,alcuni) (Clienti(X,molti) fame(x) tipo(x,f)) (Clienti(X,molti) fame(x) tipo(x,thai) ven-sab(x)) (Clienti(X,molti) fame(x) tipo(x,burger)) istanza alternative(x1) bar(x1) ven-sab(x1) fame(x1). CLASSIF attesa(x1) Console, Botta - Dip Informatica, Univ. Tori Machine learning 23 Hypothes space spazio delle posbili formule logiche per definire ogni classe C Hypothes una particolare definizione H per C Estene di una ipote ineme di istanze di H Falso negativo per H esempio x è un falso negativo per H se e solo se x è un esempio per C x n è istanza di H (H prevede che a negativo) Falso potivo per H esempio x è un falso potivo per H se e solo se x n è un esempio per C x è istanza di H (H prevede che a potivo) Falso negativo e falso potivo indica che H è sbagliata e deve essere modificata Console, Botta - Dip Informatica, Univ. Tori Machine learning 24

Generalizzazione e specializzazione: due operatori per modificare formule date ipote H e H con esteni e(h) e e(h ) H è più specifica di H (H è una specializzazione di H ) se e solo se e(h) e(h ) (alt. H H ) vv. H è più generale di H esempio cubo(x) rosso(x) è più specifica di cubo(x) cubo(x) è più specifica di cubo(x) piramide(x) ATTN: posso anche essere definiti rispetto a teoria T Operatori di generalizzazione dropping condition: da cubo(x) rosso(x) a: cubo(x) sostituzione con predicati più generali: da cubo(x) a figgeo(x) (se cubo(x) figgeo(x)) Operatori di specializzazione (duali) aggiunta di condizioni sostituzione con predicati più specifici Console, Botta - Dip Informatica, Univ. Tori Machine learning 25 Apprendimento incrementale (mile a Winston) parto da un esempio x1, con H x1 while ci so esempi do seleziona esempio xi if H constente con xi then H invariata else if xi è un falso negativo per H (H dice neg ma xi è esempio) then H := generalizzazione di H constente con xi if xi è un falso potivo per H (H dice pos ma xi n è esempio) then H := specializzazione di H constente con xi Problemi Hypothes space erme molti modi per generalizzare e specializzare Una soluzione: veron space introdurre un bias gestire la ricerca con least-committment Console, Botta - Dip Informatica, Univ. Tori Machine learning 26

Veron space Apprendere formule logiche da esempi ma: n mantenere ngola ipote che viene modificata mantenere in forma compatta l intero spazio di ipote constente bias: ipote in forma congiuntiva consente di strutturare Hypothes space e di rappresentare in forma compatta inemi di ipote Hypothes space: reticolo T (ipote più generale che copre universo) (ipote più specifica che n copre niente) T Esempio: predicati a, b, c a b c a b a c b c a b c Console, Botta - Dip Informatica, Univ. Tori Machine learning 27 Algoritmo di apprendimento in ogni istante una parte del reticolo contiene ipote constenti con esempio all inizio intero reticolo parte del reticolo caratterizzabile in modo compatto con boundary set Boundary set: ineme G delle ipote più generali constenti con esempi (osa delle ipote H / n este H più generale di H constente con esempi) ineme S delle ipote più specifiche constenti con esempi (osa delle ipote H / n este H più specifico di H constente con esempi) rappresentazione compatta ogni do tra quelli in G e S nel reticolo è una ipote Boundary set iniziale: G= {T } S= { } Ad ogni passo modificare boundary set in accordo con gli esempi specializzare ipote in G quando han contro-esempi (per escluderli) generalizzare ipote in S quando han esempi (per coprirli) Console, Botta - Dip Informatica, Univ. Tori Machine learning 28

inconstenti G G1 G2 Gm generale Hypothes space S S1 S2 Sn specifico inconstenti Algoritmo se esempio xi è un falso potivo per Si allora eliminare Si da S (vuol dire che Si è troppo generale, ma tutte sue specializzazioni so inconstenti) se esempio xi è un falso potivo per Gj, allora sostituire Gj con le sue specializzazioni più generali constenti con xi se esempio xi è un falso negativo per Si allora sostituire Si con le sue generalizzazioni più specifiche constenti con xi se esempio xi è un falso negativo per Gj, allora eliminare Gj da G (vuol dire che Gi è troppo specifico, ma tutte sue generalizzazioni so inconstenti) Console, Botta - Dip Informatica, Univ. Tori Machine learning 29 Esempio apprendere concetto di auto ecomica predicati: origine: Jap, I, F, D, USA colore: b, r, g, tipo: berlina, coupè,.. decade: 70, 80, 90 marca: Fiat, Alfa, Mercedes, BMW, Renault, Honda, Ford, inizio G= {T } S= { } primo esempio (potivo) origine(jap), colore(b), marca(honda), tipo(berlina), decade(70) falso negativo per che deve essere generalizzato G= {T } S= {origine(jap) colore(b) marca(honda) tipo(berlina) decade(70) } secondo esempio (negativo, osa contro-esempio) origine(usa), colore(r), marca(chevrolet), tipo(coupè), decade(90) falso potivo per T che deve essere specializzato e ho cinque modi posbili (n confrontabili) di specializzarlo: u per ogni predicato Console, Botta - Dip Informatica, Univ. Tori Machine learning 30

G= {origine(jap), colore(b), marca(honda), tipo(berlina), decade(70) } S= {origine(jap) colore(b) marca(honda) tipo(berlina) decade(70) } terzo esempio (potivo) origine(jap), colore(b), marca(toyota), tipo(berlina), decade(80) deve rimuovere da G ogni ipote inconstente con esempio G= {origine(jap), colore(b), tipo(berlina) } falso negativo per S che deve essere generalizzato S= {origine(jap) colore(b) tipo(berlina) } quarto esempio (negativo) origine(i), colore(b), marca(alfa), tipo(coupè), decade(80) falso potivo per colore(b) in G che deve essere sostituito da sue specializzazioni più generali che so colore(b) tipo(berlina) colore(b) origine(jap) entrambe più specifiche di ipote già in G G= {origine(jap), tipo(berlina) } S= {origine(jap) colore(b) tipo(berlina) } quinto esempio (potivo) origine(jap), colore(r), marca(honda), tipo(berlina), decade(80) falso negativo per S che deve essere generalizzato S= {origine(jap) tipo(berlina) } G= {origine(jap), tipo(berlina) } Console, Botta - Dip Informatica, Univ. Tori Machine learning 31 Osservazioni importanza del bias forma di least-commitment nel senso che specializza (generalizza) sempre il me posbile collassamento del veron space in caso di errori(rumore) negli esempi se dispone di molti esempi può arrivare ad una ngola formula coscenza a-priori potrebbe essere utile nel processo di specializzazione/generalizzazione (vedremo) es: origine(jap) origine(aa) origine(corea) origine(aa) potrei usare questa coscenza per generalizzare/specializzare Console, Botta - Dip Informatica, Univ. Tori Machine learning 32

Approcci sub-mbolici (connesonistici) Approcci ad AI visti fi ad ora so mbolici rappresentazione mbolica della coscenza tecniche mboliche di ragionamento Lunga tradizione in AI (e da prima in cibernetica) per approcci n mbolici alla computazione (da anni 40) reti neurali reti connesonistiche algoritmi genetici Diverso approccio alla computazione Modelli matematici del funzionamento del cervello Neuroni nucleo asse Sinap (collegamenti con altri neuroni) Console, Botta - Dip Informatica, Univ. Tori Machine learning 33 Neurone come unità computazionale aj wj Input Links Σ aj*wj A=g(inp) Output Links Le reti neurali Console, Botta - Dip Informatica, Univ. Tori Machine learning 34

Coscenza e learning (learning con prior kwledge) Approcci visti fi ad ora: apprendimento da esempi nessuna coscenza a priori richiesta K.B. appresa dipende solo da esempi (e da bias) K.B. appresa a volte di difficile comprene anche per esperti di un settore (esperimenti in stemi esperti) processo di apprendimento lento (servo molti esempi) Altro gruppo di approcci da metà anni 80 sfruttare K.B. a -priori nel processo di apprendimento (coscenza di background) K.B. consente di apprendere di più e in modo più efficace (più velocemente) Vedremo due approcci Kwledge-based induction (e inductive logic programming) Explanation Based Learning (Explanation Based Generalization) Console, Botta - Dip Informatica, Univ. Tori Machine learning 39 Kwledge-based induction Induzione da esempi dati esempi e1, e2,, en trovare una ipote H tale per cui H ei (per ogni ei) ad es. esempi di clasficazione (ei descrizione esempio, c classe) e1 c, e2 c,., en c trovare H tale per cui H (ei c) osa H ei c (per ogni i) esempio dati esempi giallo(e1) limone(e1) giallo(en) limone(en) può generare ipote X giallo(x) limone(x) Induzione può essere effettuata anche con coscenza a-priori Console, Botta - Dip Informatica, Univ. Tori Machine learning 40

Induzione con K.B. effettuare induzione con coscenza di background per generare le ipote dati K: coscenza di background e. osservazione (esempio) trovare H tale per cui K H e (osa K H e) Osservazione: confronto tra abduzione e induzione due forme di inferenza (n truth-preserving) che genera spiegazioni abduzione: spiegazione causale delle osservazioni induzione: generalizzazione esempio data teoria su elettricità e osservazione che una lampadina accende quando gira interruttore abduzione: genera spiegazione causale induzione: spiega osservazione con il fatto che in esempi passati è sempre stato così Console, Botta - Dip Informatica, Univ. Tori Machine learning 41 Esempio data K.B. X quadrato(x) poligo(x) X rettangolo(x) poligo(x) data osservazione quadrato(a) rosso(a) spiegazioni posbili (induttive) X quadrato(x) rosso(x) Xpoligo(X) rosso(x) Problema. Avere operatori per generare ipote induttive Inverse resolution [Muggleton, 92] invertire la regola di risoluzione fornisce ineme di operatori che permetto di derivare tutte le posbili ipote induttive Risoluzione date due clausole C1 e C2 deriva una clausola C Inverse resolution applicare la regola in modo inverso (vari modi posbili): dato C trovare C1 e C2 dati C e C1, trovare C2 (o, dati C e C2, trovare C1) Console, Botta - Dip Informatica, Univ. Tori Machine learning 42

Inverse resolution: alcuni operatori Truncation dato cane(x) domestico(x) hanome(x) genera cane(x) hanome(x) Assorbimento (absorption) dati cane(x) animale(x) cane(x) domestico(x) hanome(x) genera animale(x) domestico(x) hanome(x) osa generalizza a p1 le proprietà di p Molti modi posbili di applicare operatori: spazio di ricerca di ipote induttive Inductive Logic Programming regole di risoluzione inversa su programmi logici applicazione di inverse resolution apprendimento di programmi da esempi (e background di altri programmi) Console, Botta - Dip Informatica, Univ. Tori Machine learning 43 Explanation Based Learning Apprendimento da esempi richiede molti esempi (e contro-esempi) Esseri umani so in molte tuazioni in grado di imparare da un ngolo esempio in quanto capacità di usare la coscenza di background EBL: approccio per emulare queste capacità intuitivamente data una K.B. e un esempio (e.g., la clasficazione di una istanza) costruire una spiegazione (dimostrazione) dell esempio (e.g. una dimostrazione che è istanza di una classe) generalizzare tale dimostrazione (e.g., per trovare una regola che fornisce una descrizione della classe) il risultato di tale generalizzazione è nuova coscenza appresa dal ngolo esempio grazie alla background kwledge Console, Botta - Dip Informatica, Univ. Tori Machine learning 44

E.B.L.: definizione [Michell et al. 86][DeJong, Mooney, 86] Dati una base di coscenza (teoria del dominio) un goal, osa un predicato da apprendere un ngolo esempio (del predicato) un criterio di operazionalità che specifica quali predicati posso occorrere all inter della coscenza appresa Generare una generalizzazione dell esempio che è una descrizione sufficiente del predicato da apprendere soddisfa il criterio di operazionalità Algoritmo generare una dimostrazione dell esempio a partire dalla teoria del dominio generalizzare la dimostrazione Console, Botta - Dip Informatica, Univ. Tori Machine learning 45 Esempio [Mitchell 86] apprendere la descrizione di cup (tazza) per cui ha cup(x) liftable(x) stable(x) open_vessel(x) Teoria del dominio is(x,light) has_part(x,y) isa(y,handle) liftable(x) has_part(x,y) isa(y,bottom) is(y,flat) stable(x) has_part(x,y) isa(y,concavity) is(y,upward_pointing) open_vessel(x) criterio di operazionalità descrizione in termini di caratteristiche fiche esempio owner(obj23,ralph) has_part(obj23,c1) is(obj23,light) color(obj23,brown) dimostrazione Cup(obj23) liftable(obj23) stable(obj23) open_vessel(obj23) is(obj23,light) has_part(obj23,h1) isa(h1,handle) has_part(obj23,b2) isa(b2,bottom) is(b2,flat) has_part(obj23,v1) isa(v1,concavity) is(v1,upward_pointing) Console, Botta - Dip Informatica, Univ. Tori Machine learning 46

Generalizzazione: rimpiazzare costanti con variabili is(w,light) has_part(w,z) isa(z,handle) has_part(w,k) isa(k,bottom) is(k,flat) has_part(w,v) isa(v,concavity) is(v,upward_pointing) descrizione operazionale del concetto di tazza Oss: n sempre generalizzare è così facile (cambiare costanti in variabili) cup(w) is(w,light) has_part(w,z) isa(z,handle) has_part(w,k) isa(k,bottom) is(k,flat) has_part(w,v) isa(v,concavity) is(v,upward_pointing) Osservazioni EBL dipendente dalla teoria del dominio teoria deve essere corretta e completa Esempio n è strettamente necessario Console, Botta - Dip Informatica, Univ. Tori Machine learning 47