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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

1 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

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

3 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

4 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

5 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

6 Esempio [Russel, Norvig]: entrare in un ristorante?. clienti nessu alcuni pie stima attesa > 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 No x3 alc hamb 0-10 Si x4 pie Thai 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 No x11 ness Thai 0-10 No x12 pie hamb Si Console, Botta - Dip Informatica, Univ. Tori Machine learning 12

7 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

8 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

9 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

10 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

11 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

12 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

13 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

14 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

15 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

16 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

17 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

18 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

19 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

20 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

21 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

22 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

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

Data mining: classificazione DataBase and Data Mining Group of Politecnico di Torino DataBase and Data Mining Group of Database and data mining group, Database and data mining group, DataBase and Data Mining Group of DataBase and Data Mining Group of So dati insieme di classi oggetti etichettati

Dettagli

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

MACHINE LEARNING e DATA MINING Introduzione. a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it MACHINE LEARNING e DATA MINING Introduzione a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it Apprendimento Automatico(i) Branca dell AI che si occupa di realizzare dispositivi artificiali capaci di

Dettagli

Lezione 10. La classificazione dell Intelligenza Artificiale

Lezione 10. La classificazione dell Intelligenza Artificiale Lezione 10 Intelligenza Artificiale Cosa è l Intelligenza Artificiale Elaborazione del linguaggio naturale La visione artificiale L apprendimento nelle macchine La classificazione dell Intelligenza Artificiale

Dettagli

Idee guida. Finite State Machine (1) Un automa a stati finiti è definito da una 5- pla: FSM = , dove: Finite State Machine (2)

Idee guida. Finite State Machine (1) Un automa a stati finiti è definito da una 5- pla: FSM = <Q,,, q0, F>, dove: Finite State Machine (2) Idee guida ASM = FSM con stati generalizzati Le ASM rappresentano la forma matematica di Macchine Astratte che estendono la nozione di Finite State Machine Ground Model (descrizioni formali) Raffinamenti

Dettagli

Dr. A. Appice. Alberi di Decisione. Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013

Dr. A. Appice. Alberi di Decisione. Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013 Alberi di Decisione Caso di studio di Metodi Avanzati di Programmazione AA 2012-2013 Data Mining Lo scopo del data mining è l estrazione (semi) automatica di conoscenza nascosta in voluminose basi di dati

Dettagli

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

Semantica dei programmi. La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma. Semantica dei programmi La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma. Semantica operazionale: associa ad ogni programma la sequenza delle sue

Dettagli

Rappresentazione della conoscenza. ha poco potere espressivo in quanto ha un ontologia limitata: il mondo consiste di fatti, es.

Rappresentazione della conoscenza. ha poco potere espressivo in quanto ha un ontologia limitata: il mondo consiste di fatti, es. Scaletta argomenti: Rappresentazione della conoscenza Logica del primo ordine Logiche non-monotone Reti semantiche Frame e script Regole di produzione Logica del Primo Ordine - Logica proposizionale ha

Dettagli

Interpretazione astratta

Interpretazione astratta Interpretazione astratta By Giulia Costantini (819048) e Giuseppe Maggiore (819050) Contents Interpretazione astratta... 2 Idea generale... 2 Esempio di semantica... 2 Semantica concreta... 2 Semantica

Dettagli

Feature Selection per la Classificazione

Feature Selection per la Classificazione 1 1 Dipartimento di Informatica e Sistemistica Sapienza Università di Roma Corso di Algoritmi di Classificazione e Reti Neurali 20/11/2009, Roma Outline Feature Selection per problemi di Classificazione

Dettagli

Il guadagno informativo negli alberi decisionali: un nuovo approccio

Il guadagno informativo negli alberi decisionali: un nuovo approccio Il guadagno informativo negli alberi decisionali: un nuovo approccio Sommario Descrizione del problema... 2 Il guadagno informativo di Nanni... 3 Il software Weka... 3 Cos è Weka... 3 Il guadagno Informativo

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 4 Reti neurali per la classificazione Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com

Dettagli

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Nicola Febbrari Università degli Studi di Verona Facoltà MM.FF.NN. nicola.febbrari@studenti.univr.it 22 gennaio 2013 1 Introduzione

Dettagli

Esperienze di Apprendimento Automatico per il corso di Intelligenza Artificiale

Esperienze di Apprendimento Automatico per il corso di Intelligenza Artificiale Esperienze di Apprendimento Automatico per il corso di lippi@dsi.unifi.it Dipartimento Sistemi e Informatica Università di Firenze Dipartimento Ingegneria dell Informazione Università di Siena Introduzione

Dettagli

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

Ancora su diagnosi. Lezione 9 giugno. Conoscenza incompleta e senso comune. Frameworks per il ragionamento basato su assunzioni Ancora su diagnosi Lezione 9 giugno Ancora su diagnosi Conoscenza incompleta, senso comune e ragionamento basato su assunzioni Cenni su pianificazione Abbiamo accennato alla diagnosi di guasti. Occorre

Dettagli

Intelligenza Artificiale (lucidi lezione introduttiva)

Intelligenza Artificiale (lucidi lezione introduttiva) Intelligenza Artificiale (lucidi lezione introduttiva) Prof. Alfonso Gerevini Dipartimento di Elettronica per l Automazione Facoltà di Ingegneria Università degli Studi di Brescia 1 Che cosa è l Intelligenza

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 8 Support Vector Machines Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com http://www.onairweb.com/corsopr

Dettagli

Algoritmi Genetici. e programmazione genetica

Algoritmi Genetici. e programmazione genetica Algoritmi Genetici e programmazione genetica Algoritmi Genetici Algoritmi motivati dall analogia con l evoluzione biologica Lamarck: le specie trasmutano nel tempo Darwin e Wallace: variazioni consistenti

Dettagli

Machine Learning -1. Seminari di Sistemi Informatici. F.Sciarrone-Università Roma Tre

Machine Learning -1. Seminari di Sistemi Informatici. F.Sciarrone-Università Roma Tre Machine Learning -1 Seminari di Sistemi Informatici Sommario Problemi di apprendimento Well-Posed Esempi di problemi well-posed Progettazione di un sistema di apprendimento Scelta della Training Experience

Dettagli

Semantica Assiomatica

Semantica Assiomatica Semantica Assiomatica Anche nella semantica assiomatica, così come in quella operazionale, il significato associato ad un comando C viene definito specificando la transizione tra stati (a partire, cioè,

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Linguaggi formali e compilazione

Linguaggi formali e compilazione Linguaggi formali e compilazione Corso di Laurea in Informatica A.A. 2015/2016 Linguaggi formali e compilazione Elementi generali Un parser generico di tipo procede operando una sequenza di riduzioni a

Dettagli

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,...

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... Entropia Motivazione Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... ) s,s 2,s 3,... ognuno dei quali appartiene ad un alfabeto A di M elementi.? Quant è l informazione portata

Dettagli

Intelligenza Artificiale

Intelligenza Artificiale Intelligenza Artificiale Anno accademico 2008-2009 Information Retrieval: Text Categorization Una definizione formale Sia D il dominio dei documenti Sia C = {c 1,,c C } un insieme di categorie predefinite

Dettagli

La macchina universale

La macchina universale La macchina universale Una immediata conseguenza della dimostrazione è la seguente Corollario il linguaggio L H = {M (w) M rappresenta una macchina di Turing che si ferma con input w} sull alfabeto {0,1}*

Dettagli

FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira

FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira FONDAMENTI di INFORMATICA Prof. Lorenzo Mezzalira Appunti del corso 1 Introduzione all informatica: algoritmi, linguaggi e programmi Indice 1. Introduzione 2. Risoluzione automatica di problemi - Algoritmi

Dettagli

Introduzione alle tecniche di Data Mining. Prof. Giovanni Giuffrida

Introduzione alle tecniche di Data Mining. Prof. Giovanni Giuffrida Introduzione alle tecniche di Data Mining Prof. Giovanni Giuffrida Programma Contenuti Introduzione al Data Mining Mining pattern frequenti, regole associative Alberi decisionali Clustering Esempio di

Dettagli

Annotazione automatica di immagini con sistemi desktop grid

Annotazione automatica di immagini con sistemi desktop grid Annotazione automatica di immagini con sistemi desktop grid Marco Ferrante (ferrante@csita.unige.it) Laura Lo Gerfo (logerfo@disi.unige.it) DISI - Università di Genova Tagging e retrieval di immagini Nell'annotazione

Dettagli

COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 3 Aprile 2008 (Punteggio su 30/30; Tempo 2h )

COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 3 Aprile 2008 (Punteggio su 30/30; Tempo 2h ) COMPITO DI APPLICAZIONI DI INTELLIGENZA ARTIFICIALE 3 Aprile 2008 (Punteggio su 30/30; Tempo 2h ) Esercizio 1 (punti 8) Dato il seguente training set S: Lunghezza petali Larghezza petali Iris 1 1 Setosa

Dettagli

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Giuditta Franco Corso di Laurea in Bioinformatica - AA 2012/2013 Uno dei più grossi risultati nell informatica degli

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort

Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort Due algoritmi di ordinamento basati sulla tecnica Divide et Impera: Mergesort e Quicksort (13 ottobre 2009, 2 novembre 2010) Ordinamento INPUT: un insieme di n oggetti a 1, a 2,, a n presi da un dominio

Dettagli

Fondamenti dei linguaggi di programmazione

Fondamenti dei linguaggi di programmazione Fondamenti dei linguaggi di programmazione Aniello Murano Università degli Studi di Napoli Federico II 1 Riassunto delle lezioni precedenti Prima Lezione: Introduzione e motivazioni del corso; Sintassi

Dettagli

Uno standard per il processo KDD

Uno standard per il processo KDD Uno standard per il processo KDD Il modello CRISP-DM (Cross Industry Standard Process for Data Mining) è un prodotto neutrale definito da un consorzio di numerose società per la standardizzazione del processo

Dettagli

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

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

C4.5 Algorithms for Machine Learning

C4.5 Algorithms for Machine Learning C4.5 Algorithms for Machine Learning C4.5 Algorithms for Machine Learning Apprendimento di alberi decisionali c4.5 [Qui93b,Qui96] Evoluzione di ID3, altro sistema del medesimo autore, J.R. Quinlan Ispirato

Dettagli

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

FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti FONDAMENTI DI INTELLIGENZA ARTIFICIALE 1 parte (6 CFU) 12 Luglio 2012 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (7 punti) Si formalizzi in logica dei predicati del primo ordine la seguente

Dettagli

Le macchine di Turing

Le macchine di Turing Le macchine di Turing Alan Turing (1912-1954) 1954) Il problema della decisione i L Entscheidungsproblem [il problema della decisione] è risolto se si conosce una procedura che permette di decidere la

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci

Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello. V. M. Abrusci Dispense del corso di Logica a.a. 2015/16: Problemi di primo livello V. M. Abrusci 12 ottobre 2015 0.1 Problemi logici basilari sulle classi Le classi sono uno dei temi della logica. Esponiamo in questa

Dettagli

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie TEORIA RELAZIONALE: INTRODUZIONE 1 Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano

Dettagli

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

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico Processo di risoluzione di un problema ingegneristico 1. Capire l essenza del problema. 2. Raccogliere le informazioni disponibili. Alcune potrebbero essere disponibili in un secondo momento. 3. Determinare

Dettagli

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

Verifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio Test (o analisi dinamica) Verifica parte IIA Rif. Ghezzi et al. 6.3-6.3.3 Consiste nell osservare il comportamento del sistema in un certo numero di condizioni significative Non può (in generale) essere

Dettagli

Università degli Studi di Napoli Federico II. Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica

Università degli Studi di Napoli Federico II. Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica Università degli Studi di Napoli Federico II Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica Anno Accademico 2009/2010 Appunti di Calcolabilità e Complessità Lezione 9: Introduzione alle logiche

Dettagli

Introduzione ai Sistemi Esperti. Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56126 PISA

Introduzione ai Sistemi Esperti. Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56126 PISA Introduzione ai Sistemi Esperti Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56126 PISA SISTEMI ESPERTI ARCHITETTURA TIPICA DI UN SE Un sistema esperto (SE)

Dettagli

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice.

Testing: basato su analisi dinamica del codice. Metodi Formali: basato su analisi statica del codice. Convalida: attività volta ad assicurare che il SW sia conforme ai requisiti dell utente. Verifica: attività volta ad assicurare che il SW sia conforme alle specifiche dell analista. Goal: determinare malfunzionamenti/anomalie/errori

Dettagli

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

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Introduzione alla tecnica di Programmazione Dinamica

Introduzione alla tecnica di Programmazione Dinamica Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/37 Sommario della lezione Introduzione alla tecnica di Programmazione Dinamica Esempio di applicazione n. 1:

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 1 - Introduzione generale Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com http://www.onairweb.com/corsopr

Dettagli

Risoluzione. Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005

Risoluzione. Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005 Risoluzione Eric Miotto Corretto dal prof. Silvio Valentini 15 giugno 2005 1 Risoluzione Introdurremo ora un metodo per capire se un insieme di formule è soddisfacibile o meno. Lo vedremo prima per insiemi

Dettagli

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

Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN1 Fondamenti) 2 Introduzione alla programmazione Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Il Modello Relazionale

Il Modello Relazionale Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981

Dettagli

Modellazione delle preferenze

Modellazione delle preferenze Modellazione delle preferenze Roberto Cordone 1 1 Sono debitore delle dispense di B. Simeone e F. Patrone Sistemazione assiomatica Dato un insieme non vuoto di impatti F, esprimere una preferenza fra due

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

Esercizi Capitolo 14 - Algoritmi Greedy

Esercizi Capitolo 14 - Algoritmi Greedy Esercizi Capitolo 14 - Algoritmi Greedy Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare

Dettagli

Introduzione ai problemi NP-completi

Introduzione ai problemi NP-completi Corso di Algoritmi e Strutture Dati Introduzione ai problemi NP-completi Nuova versione del capitolo 13 delle dispense (basata sui modelli non deterministici) Anno accademico 2007/2008 Corso di laurea

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Lezione 6 a.a. 2010/2011 Francesco Fontanella La Complessità del Hardware Il modello di Von Neumann è uno schema di principio. Attualmente in commercio esistono: diversi

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

La programmazione con vincoli in breve. La programmazione con vincoli in breve

La programmazione con vincoli in breve. La programmazione con vincoli in breve Obbiettivi Introdurre la nozione di equivalenza di CSP. Dare una introduzione intuitiva dei metodi generali per la programmazione con vincoli. Introdurre il framework di base per la programmazione con

Dettagli

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

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

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

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

PROGRAMMAZIONE CLASSE SECONDA: LINGUA ITALIANA, MATEMATICA, INGLESE

PROGRAMMAZIONE CLASSE SECONDA: LINGUA ITALIANA, MATEMATICA, INGLESE PROGRAMMAZIONE CLASSE SECONDA: LINGUA ITALIANA, MATEMATICA, INGLESE OBIETTIVI DI APPRENDIMENTO ASCOLTARE E PARLARE Ascoltare e comprendere un messaggio e un testo Conoscere le regole comportamentali della

Dettagli

Programmazione per Bioinformatica Il Calcolatore e la Programmazione. Dr Damiano Macedonio Università di Verona

Programmazione per Bioinformatica Il Calcolatore e la Programmazione. Dr Damiano Macedonio Università di Verona Programmazione per Bioinformatica Il Calcolatore e la Programmazione Dr Damiano Macedonio Università di Verona Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macrocomponenti:

Dettagli

Gli algoritmi: definizioni e proprietà

Gli algoritmi: definizioni e proprietà Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Gli algoritmi: definizioni e proprietà La presente dispensa e da

Dettagli

Ricerca informata. Scelta dell euristica

Ricerca informata. Scelta dell euristica Ricerca informata Scelta dell euristica SMA* (Simplified Memory-Bounded A*) SMA* espande sempre la foglia migliore finché la memoria è piena A questo punto deve cancellare un nodo in memoria SMA* cancella

Dettagli

Breve introduzione al Calcolo Evoluzionistico

Breve introduzione al Calcolo Evoluzionistico Breve introduzione al Calcolo Evoluzionistico Stefano Cagnoni Dipartimento di Ingegneria dell Informazione, Università di Parma cagnoni@ce.unipr.it 1 Introduzione Il mondo fisico ed i fenomeni naturali

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 5 Tecniche OCR Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com http://www.onairweb.com/corsopr

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella La Complessità del Hardware Il modello di Von Neumann è uno schema di principio. Attualmente in commercio esistono:

Dettagli

Regressione non lineare con un modello neurale feedforward

Regressione non lineare con un modello neurale feedforward Reti Neurali Artificiali per lo studio del mercato Università degli studi di Brescia - Dipartimento di metodi quantitativi Marco Sandri (sandri.marco@gmail.com) Regressione non lineare con un modello neurale

Dettagli

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU)

FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) FONDAMENTI DI INTELLIGENZA ARTIFICIALE (8 CFU) 13 Febbraio 2015 Tempo a disposizione: 2 h Risultato: 32/32 punti Esercizio 1 (punti 6) Si esprimano in logica dei predicati del I ordine le seguenti frasi:

Dettagli

Descrizione di un algoritmo

Descrizione di un algoritmo Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica

Dettagli

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

x u v(p(x, fx) q(u, v)), e poi 0.1. Skolemizzazione. Ogni enunciato F (o insieme di enunciati Γ) è equisoddisfacibile ad un enunciato universale (o insieme di enunciati universali) in un linguaggio estensione del linguaggio di F (di

Dettagli

Teoria dei Giochi. Teoria dei Giochi

Teoria dei Giochi. Teoria dei Giochi Teoria dei Giochi E uno strumento decisionale, utile per operare previsioni sul risultato quando un decisore deve operare in concorrenza con altri decisori. L ipotesi principale su cui si basa la TdG è

Dettagli

Automi. Sono così esempi di automi una lavatrice, un distributore automatico di bibite, un interruttore, una calcolatrice tascabile,...

Automi. Sono così esempi di automi una lavatrice, un distributore automatico di bibite, un interruttore, una calcolatrice tascabile,... Automi Con il termine automa 1 s intende un qualunque dispositivo o un suo modello, un qualunque oggetto, che esegue da se stesso un particolare compito, sulla base degli stimoli od ordini ricevuti detti

Dettagli

Ref. Prof.ri TIC e Informatica e Laboratorio A PRESENTAZIONE

Ref. Prof.ri TIC e Informatica e Laboratorio A PRESENTAZIONE UNITÀ DI APPRENDIMENTO TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE Ref. Prof.ri TIC e Informatica e Laboratorio A.S. 2015-2016 TITOLO : Il PC: un amico utile COD. U.d.A N 1/4 A PRESENTAZIONE Destinatari

Dettagli

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto

Dettagli

Questionario sull adozione delle norme per i sistemi di controllo delle macchine

Questionario sull adozione delle norme per i sistemi di controllo delle macchine DIPARTIMENTO TECNOLOGIE DI SICUREZZA - Ex ISPESL Questionario sull adozione delle rme per i stemi di controllo delle macchine Razionale Il presente questionario propone di fornire un anali dello stato

Dettagli

Algoritmi di scheduling - Parte 2

Algoritmi di scheduling - Parte 2 Algoritmi di scheduling - Parte 2 Automazione I 12/11/2013 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO ALGORITMO DEADLINE MONOTONIC PRIORITY ORDERING (DMPO) ALGORITMO TIMELINE SCHEDULING (TS) SCHEDULING

Dettagli

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

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno UD 3.1b: Costrutti di un Algoritmo Dispense 1.2 I Costrutti di base 13 apr 2010

Dettagli

AUTOMI A STATI FINITI. G. Ciaschetti

AUTOMI A STATI FINITI. G. Ciaschetti AUTOMI A STATI FINITI G. Ciaschetti CONTENUTI Definizione di sistema Classificazione dei sistemi Definizione di modello Algebra degli schemi a blocchi Sistemi sequenziali Automi a stati finiti Macchina

Dettagli

I numeri almeno entro il venti.

I numeri almeno entro il venti. MATEMATICA CLASSE PRIMA Nucleo: IL NUMERO Competenza: L alunno si muove nel calcolo scritto e mentale con i numeri e usa le operazioni aritmetiche in modo opportuno entro il 20. 1.1 Contare associando

Dettagli

Complessità Computazionale

Complessità Computazionale Complessità Computazionale Analisi Algoritmi e pseudocodice Cosa significa analizzare un algoritmo Modello di calcolo Analisi del caso peggiore e del caso medio Esempio di algoritmo in pseudocodice INSERTION

Dettagli

MATEMATICA CLASSE SECONDA OBIETTIVI OPERATIVI. OBIETTIVI DI APPRENDIMENTO Conoscere il numero nei suoi vari aspetti.

MATEMATICA CLASSE SECONDA OBIETTIVI OPERATIVI. OBIETTIVI DI APPRENDIMENTO Conoscere il numero nei suoi vari aspetti. MATEMATICA Traguardi per lo sviluppo delle competenze al termine della scuola primaria L alunno si muove con sicurezza nel calcolo scritto e mentale con i numeri naturali e sa valutare l opportunità di

Dettagli

PROGRAMMA DI INFORMATICA

PROGRAMMA DI INFORMATICA LICEO SCIENTIFICO STATALE A. MESSEDAGLIA -VERONA Via Bertoni, 3b 37121 VERONA tel 045.596432-8034772 fax 045.8038213 Classe 2 Sezione G Anno scolastico 2014/2015 PROGRAMMA DI INFORMATICA docente: prof.

Dettagli

Intelligenza Artificiale. Lezione 23. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 23 0

Intelligenza Artificiale. Lezione 23. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 23 0 Intelligenza Artificiale Lezione 23 Intelligenza Artificiale Daniele Nardi, 2003 Lezione 23 0 Azioni e cambiamento Il calcolo delle situazioni Pianificazione Deduttiva (Capitolo 11 delle dispense, 7.6

Dettagli

Sistema di Gestione di Basi di Dati DataBase Management System DBMS

Sistema di Gestione di Basi di Dati DataBase Management System DBMS Base di dati (accezione generica) collezione di dati, utilizzati per rappresentare le informazioni di interesse per una o più applicazioni di una organizzazione (accezione specifica) collezione di dati

Dettagli

La programmazione. Sviluppo del software

La programmazione. Sviluppo del software La programmazione problema Sviluppo del software idea (soluzione informale) algoritmo (soluzione formale) programma (traduzione dell algoritmo in una forma comprensibile da un elaboratore elettronico)

Dettagli

Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria

Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria Introduzione all Informatica 1 Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria Programma del corso Programma di

Dettagli

Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale

Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale Planning as Model Checking Presentazione della Tesina di Intelligenza Artificiale di Francesco Maria Milizia francescomilizia@libero.it Model Checking vuol dire cercare di stabilire se una formula è vera

Dettagli

CAPITOLO 3 Previsione

CAPITOLO 3 Previsione CAPITOLO 3 Previsione 3.1 La previsione I sistemi evoluti, che apprendono le regole di funzionamento attraverso l interazione con l ambiente, si rivelano una risorsa essenziale nella rappresentazione di

Dettagli

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Linguaggi di Programmazione Michele Tomaiuolo Linguaggi macchina I

Dettagli

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

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

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

Aprire WEKA Explorer Caricare il file circletrain.arff Selezionare random split al 66% come modalità di test Selezionare J48 come classificatore e Alberi di decisione Aprire WEKA Explorer Caricare il file circletrain.arff Selezionare random split al 66% come modalità di test Selezionare J48 come classificatore e lanciarlo con i parametri di default.

Dettagli

Reti sequenziali e strutturazione firmware

Reti sequenziali e strutturazione firmware Architettura degli Elaboratori, a.a. 25-6 Reti sequenziali e strutturazione firmware Alla parte di corso sulle reti sequenziali è apportata una sensibile semplificazione rispetto a quanto contenuto nel

Dettagli

Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. H

Liceo Scientifico  C. CATTANEO  PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. H Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. H Sommario PIANO DI LAVORO DI INFORMATICA... 1 INDICAZIONI GENERALI... 2 PREREQUISITI... 2 CONOSCENZE, COMPETENZE E CAPACITA...

Dettagli

I metodi formali nel processo di sviluppo del software

I metodi formali nel processo di sviluppo del software I metodi formali nel processo di sviluppo del software I metodi formali consentono di creare una specifica più completa, uniforme e non ambigua di quelle prodotte usando i metodi convenzionali ed orientati

Dettagli

Formazione Aziendale per la Qualità

Formazione Aziendale per la Qualità 4 Corsi e Formazione per la Qualità Formazione Aziendale per la Qualità Il nostro obiettivo L organizzazione, l analisi e l interpretazione dei dati aziendali all interno del proprio business, può rappresentare

Dettagli

Sistemi Informativi. Basi di Dati. Progettazione concettuale. Architettura Progettazione Analisi funzionale

Sistemi Informativi. Basi di Dati. Progettazione concettuale. Architettura Progettazione Analisi funzionale 6LVWHPL,QIRUPDWLYL H DVLGL'DWL Oreste Signore (Oreste.Signore@cnuce.cnr.it) &RQWHQXWR Sistemi Informativi Basi di Dati Architettura Progettazione Analisi funzionale Progettazione concettuale Information

Dettagli

Capitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali

Capitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali Capitolo 6: Modelli di calcolo per linguaggi imperativi e funzionali 1 Modelli imperativi: le RAM (Random Access Machine) I modelli di calcolo imperativi sono direttamente collegati al modello Von Neumann,

Dettagli