Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

38
Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006

Transcript of Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Page 1: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi basati su conoscenza

Prof. M.T. PAZIENZA

a.a. 2005-2006

Page 2: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Struttura del corso

Lezioni

Esercitazioni

Approfondimenti tematici

Test di autovalutazione

Esame finale (2 appelli a fine corso)

Page 3: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Syllabus (argomenti e struttura delcorso)

• Sistemi basati su conoscenza: rappresentazione e ragionamento

• Agenti intelligenti: autonomia, struttura, interazione con l’ambiente

• Agenti che ragionano: ragionamento, rappresentazione e logica

• Programmazione logica: Prolog• Basi di conoscenza: rappresentazione

formale, relazioni di dominio, ontologie, inferenze

Page 4: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Syllabus (2)

• Semantic Web, Ontologie, RDF, OWL

• Sistemi di ragionamento logico

• Linguaggio naturale***************************************************

***I° test di autovalutazione: metodi di ricercaII° test di autovalutazione: esercizi di progr.

PrologIII° test di autovalutazione: proget. basi di

conoscenza, ontologie

Prova finale e Prova di appello

Page 5: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Syllabus (3)

• Libro di testo “Intelligenza Artificiale: un approccio moderno”, Russel e Norvig; Prentice Hall (capitoli selezionati)

• Presentazioni ppt del docente• Dispense• Documentazione su rete

Page 6: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Risoluzione di problemi

Definizione di appropriate strategie di ricerca

Individuazione di passi di ragionamento elementari, la cui giustapposizione porta alla identificazione di soluzioni ai problemi

Non viene utilizzata conoscenza di dominio

In domini complessi le prestazioni sono limitate

Page 7: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Conoscenza a priori del dominio

La conoscenza del dominio permette di utilizzare, nella risoluzione dei problemi, passi meno elementari con un processo di ragionamento più ampio e complesso

Quindi si possono risolvere problemi più complessi laddove si abbia una qualche conoscenza del dominio

Page 8: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi basati su conoscenza

• Rappresentazione della conoscenza

• Ragionamento

Logica come linguaggio formale di supporto sia per la rappresentazione che per il ragionamento

Page 9: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Architettura di un sbc

DomainExpert

KnowledgeEngineer Knowledge

Base

InferenceEngine

UserInterface

User

Page 10: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Architettura di un sbc

Componenti principali / ruoli:

1. Meccanismo di controllo (motore d’inferenza) / software engineers

2. Base di conoscenza / knowledge engineers+”domain” experts

3. Interfaccia utente / users

Page 11: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Architettura di un sbc

Componenti principali :

1. Meccanismo di controllo (motore d’inferenza): algoritmi domain-independent

2. Base di conoscenza: contenuto domain-dependent (insieme di frasi in un linguaggio formale)

Page 12: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione

Una “rappresentazione” è qualunque notazione o insieme di simboli che rap-presenta (re-present) qualcosa a qualcun altro.

Una rappresentazione di qualcosa sta al posto di quel qualcosa

Page 13: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione

Ogni rappresentazione rappresenta solo “qualche” aspetto del mondo,

ovvero ciò che si vuole sottolineare.

RappresentazioneVersus

Conoscenza del mondo (come riferimento)

Page 14: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione

Diversi modi in cui la conoscenza sembra essere “organizzata” (es. oggetti, relazioni, schemi)

Versus

Diversi modi in cui la conoscenza può essere “rappresentata” (immagini, proposizioni, …)

Page 15: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Un esempio

Marco occupa la stanza 118

Giovanni occupa la stanza 119

“” “” “”

Ingrid occupa la stanza 123

Rappresentaz. analogica Rappresentaz. proposizionale

Ulteriori informaz. spaziali e temporali Informazioni esplicite

Marco118

Giovanni 119

Sara 120

Vittoria121

Massimo125

Alberto124

Ingrid123

122

Page 16: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Un altro esempio

Immagine Testo

Il libro è sul tavoloon(book,desk)

Rappresentaz. analogica Rappresentaz. proposizionale

- Info implicita - Simboli discreti

- Niente simboli - Simboli per relazioni- Nessuna regola compos. simboli - Regole grammaticali compos.- Concretezza - Astrazione rappres.

Page 17: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi basati su conoscenza

Rappresentazione della conoscenza

Assumiamo di poter “descrivere” il mondo in termini di “frasi” nel nostro linguaggio.

Una base di conoscenza è un insieme di frasi, ovvero una descrizione parziale del mondo. Ci riferiremo ad esso come ad un universo del discorso (o dominio del discorso)

Tutte le frasi sono descrizioni (nel ling. nat. si può fare molto di più: porre domande, ordini, esprimere dubbi,…)

Page 18: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi basati su conoscenza

Logica come linguaggio formale di supporto per la rappresentazione della conoscenza ed il ragionamento

La logica consiste di un linguaggio e di una procedura di inferenza.

Page 19: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Logica come linguaggio formale

In un linguaggio logico (come per un qualsiasi altro linguaggio) bisogna definire formalmente la sintassi, un vocabolario, gli operatori ed i connettivi logici, oltre alle regole per combinarli tra loro.

Bisogna poter assegnare significato alle frasi del linguaggio (model theory)

Page 20: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Logica come linguaggio formale

Procedura d’inferenzaBisogna poter attuare inferenze valide da un insieme

di frasi del linguaggio indipendentemente dal loro significato (proof theory)

In logica la procedura di inferenza è di tipo deduttivo.L’induzione e l’abduzione sono altri due tipi di inferenza

Page 21: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Logica come linguaggio formale

Tipologie di inferenzaDeduzione: dati degli assiomi veri, le inferenze che si

possono effettuare sono sempre vere.Abduzione: si possono inferire ipotesi eventualmente vere

(diagnosi) da fatti veriInduzione: inferire relazioni generali (imparare) da alcuni

esempi veri

In logica la procedura di inferenza è di tipo deduttivo (inferenza sempre vera).

L’induzione e l’abduzione sono due tipi di inferenza che non assicurano la verità dell’inferenza

Page 22: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Conceptual Knowledge Process

UN

DER

STA

ND

UN

DER

STA

ND

REU

SREU

SEE

CREATE

CREATE

DISTRIBUT

DISTRIBUTEE

Page 23: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Gestione della conoscenza (fasi - 1)

Creazione- analizzare come in un processo (aziendale) si forma conoscenza a livello individuale e di organizzazione

Comprensione- verificare, rappresentare, sintetizzare, adattare, collegare la nuova conoscenza alla preesistente (nell’azienda) in modo comprensibile all’organizzazione tutta

Page 24: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Gestione della conoscenza (fasi - 2)

Distribuzione- la conoscenza (aziendale) deve essere accessibile agli individui ed all’organizzazione nel suo insieme

Riuso- applicare la conoscenza ad un processo (aziendale); si può creare nuova conoscenza

Page 25: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Gestione della conoscenza

I sistemi basati su conoscenza gestiscono la conoscenza (aziendale) attraverso processi che collezionano, memorizzano e riusano conoscenza passando da un livello individuale a quello aziendale (conoscenza condivisa).

Sistemi esperti, sistemi di ragionamento basati su casi, ontologie, sono esempi di metodologie per la gestione della conoscenza

Page 26: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi esperti

I sistemi esperti sono dei sistemi che realizzano un task come lo farebbe un esperto umano, e che possono spiegare il meccanismo di ragionamento impiegato.

I sistemi esperti sono sistemi basati su conoscenza in cui

la base di conoscenza è costituita da una

rappresentazione della conoscenza di dominio prodotta da un esperto (rappresentazione della conoscenza esperta e dei meccanismi di ragionamento - regole)

Page 27: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi esperti - regole

Una regola consiste di due parti: un antecedente ed un conseguente

L’antecedente consiste di una o più condizioni che specificano quando e dove applicare la regola

Se le condizioni sono soddisfatteIl conseguente specifica le azioni che devono

essere intraprese

Page 28: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi esperti – motore inferenziale

Le regole che codificano l’esperienza dell’esperto nel sistema esperto sono contenute nella base di conoscenza

Il meccanismo che sceglie le regole per verificare se possono essere usate in un problema si chiama motore inferenziale

Il motore inferenziale verifica gli antecedenti delle regole, quindi, a seconda del loro valore, realizza le azioni specificate nei conseguenti delle regole.

Una volta identificate le regole, si attivano le azioni correlate che possono cambiare lo stato del problema

Page 29: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Expert System CycleKnowledge Capture

Apply Knowledge

Sele

ct K

nowle

dge

Modify Problem State

New

Prob

lem

s

Kno

wle

dge

Reu

se

Rules (Knowledg

e Base)

Inference Engine

(Pattern Matching)

Current Problem

State (Short-term

Memory)

Page 30: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Sistemi esperti – motore inferenziale

Il vantaggio offerto dalla tecnologia dei sistemi esperti è collegato alla possibilità di spiegare sia il metodo seguito per prendere delle decisioni che il processo risolutivo del problema.

Page 31: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Case-based systems

La metodologia di ragionamento dei sistemi basati sui casi si basa sul riuso della conoscenza acquisita in situazioni precedenti per risolvere nuovi casi.

Quando si incontra un nuovo caso bisogna ritrovarne uno simile per riapplicarne la strategia.

La scelta di quale situazione precedente può essere riusata si basa sulla valutazione di similarità tra il vecchio e nuovo caso (euristica di similarità) e si basa sull’assunzione che problemi simili abbiano soluzioni simili.

Page 32: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Case-based systems

Per risolvere il nuovo problema è necessario adattare i metodi risolutivi, precedentemente usati, al nuovo caso creando così una nuova soluzione che viene aggiunta alle precedenti.

L’adattamento può avvenire attraverso nuove regole.

I sistemi basati su casi ben si adattano a problemi per i I sistemi basati su casi ben si adattano a problemi per i quali non si abbia una conoscenza completamente quali non si abbia una conoscenza completamente definita.definita.

Page 33: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

CBR Cycle

Suggested Solution

New Case

Retrieved Case

Case Solved

Tested, Repaired Case

New Case

Learned Case

Problem

Confirmed Solution

Previous Case

General Knowledge

RETRIEVE

REU

SE

REVISE

RETA

IN

REVIEW

Page 34: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Ontologie

Scopo principale delle ontologie è quello di fornire un linguaggio comune per supportare la condivisione della conoscenza concettuale.

Le ontologie sono stata comunemente adottate come formalismo di rappresentazione della conoscenza per fornire un metodo di ragionamento secondo il senso comune a supporto di vari processi basati sulla conoscenza.

Ontologie top level versus ontologie di dominio.

Page 35: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione della conoscenza

In ambienti dichiarativi, i sistemi sono come un microcosmo cognitivo in cui è necessario stabilire quali siano le proprietà che il sistema di rappresentazione della conoscenza deve avere.

Requisito minimo Ci deve essere una qualche corrispondenza tra il sistema

di rappresentazione della conoscenza e la conoscenza che si sta rappresentando; devono essere definiti simboli specifici per ogni oggetto che deve essere modellato nel sistema (adeguatezza metafisica)

Page 36: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione della conoscenza

Proprietà Il sistema di rappresentazione della conoscenza deve

essere in grado di rappresentare almeno tutta la conoscenza che può essere necessaria per

• distinguere due qualunque stati del microcosmo (adeguatezza epistemica)

• esprimere il ragionamento necessario alla risoluzione di un problema (adeguatezza euristica)

Una qualunque rappresentazione deve poter essere manipolata dal sistema (trattabilità computazionale) (il ling. nat. non è trattabile, è computazionalmente-ambiguo)

Page 37: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Rappresentazione della conoscenza

Un qualunque sistema di rappresentazione della conoscenza è formalmente equivalente al microcosmo che sta modellando.

Due sistemi sono formalmente equivalenti se:• Per ciascuno stato distinto del primo esiste uno

stato distinto del secondo• Per ciascun possibile cambiamento di stato del

primo esiste un analogo cambiamento di stato del secondo

Page 38: Sistemi basati su conoscenza Prof. M.T. PAZIENZA a.a. 2005-2006.

Costruzione di una base di conoscenza

Ingegneria della conoscenza:

• Analisi del dominio peculiare

• Individuazione concetti importanti

• Rappresentazione formale di oggetti e relazioni nel dominio