Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
KB∨¿ A
Un altro modo per decidere se (conseguenza logica) è dare delle regole di
KB∨−A
inferenza. Si scrive (A è deducibile da KB). Le regole di inferenza:
- dovrebbero derivare SOLO formule che sono conseguenza logica.
- dovrebbero deviare TUTTE le formule che sono conseguenza logica.
KB∨−A KB∨¿ A
CORRETTEZZA => se allora . Tutto ciò che è derivabile è
conseguenza logica. KB∨¿ A KB∨−A
COMPLETTA => se allora . Tutto ciò che è conseguenza logica è
ottenibile tramite il meccanismo di inferenza. Come si fa ad avere la
corrispondenza tra sintassi e
semantica? Partiamo da alcuni
concetti: ⊢
S F
Una dimostrazione per è
una sequenza
, in cui
=P
DIM , P , P , … , P
1 2 3 n
=F
P
- n
Fondamenti di IA 2
∈
P S
- i ∈
P ASSIOMI
- i P , P , P ,… , P <i <i
P i i
- è ottenibile da con , …, applicando la
ℑ
i 1 i 2 i 3
i 1 m
regola di inferenza
Solo l’ultima è debole come regola da dimostrare. Possiamo pensare a semplificare le
formule utilizzando
La preservazione della vericidità è osservabile per induzione. Formalmente si ha:
- (Meta) Teorema di completezza
- (Meta) Teorema di deduzione (ogni teorema di L è una tautologia)
La logica dei predicati del primo ordine è più
espressiva e assume che il mondo contenga
oggetti, proprietà degli oggetti e relazioni
tra oggetti, utilizzando quantificatori
(esistenziale e universale) per fare
affermazioni su insiemi di oggetti. Quindi si
tratta di esplicitare i fatti. Nella logica
proposizionale si esplicitano tutti gli assiomi,
che è un limite della logica proposizionale.
Le formule ben formate (fbf) sono formate
da sequenze di simboli dell’alfabeto che
rappresentano enunciati sintatticamente
corretti. Entrambe le forme di logica sono
fondamentali per costruire basi di
conoscenza negli agenti intelligenti e per
sviluppare meccanismi di inferenza che
permettano di derivare nuove
conoscenze da quelle esistenti e di
Fondamenti di IA 2
prendere decisioni razionali. La dimostrazione logica può essere vista come un
processo di ricerca nello spazio delle possibili inferenze.
Rappresentazione della conoscenza
Si deve avere un metodo di rappresentare la conoscenza. Si devono utilizzare strutture
dati che permettono di rappresentare l’informazione in maniera naturale, immediata e
facilmente comprensibile a persone che non sono esperti tecnici ma di dominio.
Occorre definire tali approcci che permettono di fare inferenza sulle informazioni
organizzate. Descrivere i principali formalismi di rappresentazione della conoscenza
con focus sui formalismi che si basano sul ragionamento su categorie.
L’ingegneria della conoscenza studia l’ontologia, reti semantiche, che sono una parte
della IA. Avere un metodo di rappresentazione della conoscenza potrebbe aiutarci a
risolvere alcune problematiche complesse. Un formalismo per la rappresentazione
della conoscenza ha tra componenti:
- Una sintassi, ovvero un linguaggio composto da un vocabolario e regole per la
formazione delle frasi
- Una semantica, che stabilisce una corrispondenza tra gli enunciati e fatti del
mondo; se un agente ha un enunciato alfa nella sua base di conoscenza, crede
che il fatto corrispondente sia vero nel mondo;
- Un meccanismo inferenziale (codificato o meno tramite regole di inferenza
come nella logica) che ci consente di inferire nuovi fatti (conseguenza logica)
Ogni linguaggio per la rappresentazione della conoscenza fa assunzioni diverse su
come è fatto il mondo (ontologico, ovvero che riguarda ciò che esiste).
- Nel calcolo proposizionale il mondo è visto come popolato di fatti veri o falsi
(proposizioni)
- Il calcolo dei predicati fa una assunzione ontologica più sofisticata: il mondo è
fatto di oggetti che hanno proprietà e tra cui sussistono relazioni
- Logiche specializzate assumono ontologie più ricche.
Approccio Logico o Dichiarativo:
- Un oggetto è una congiunzione di proprietà e può essere rappresentato come
clausole della logica;
- Usato nelle reti semantiche, nella logica terminologica o descrittiva
Approccio Procedurale:
Fondamenti di IA 2
- Usato nei sistemi di rappresentazione della conoscenza basati su frames e nei
linguaggi di programmazione ad oggetti
- Un oggetto è una struttura dati con uno stato e un comportamento (behaviour)
- Le proprietà di un oggetto possono essere attributi, relazioni e procedure (slots,
subslots, tipi, cardinalità, vincoli)
- Conoscenza procedurale espressa mediante demoni (attaccati agli attributi) e
metodi (attaccati agli oggetti)
L’ingegneria della conoscenza è una disciplina che permette di studiare la
rappresentazione della conoscenza. La combinazione di strutture dati e la
rappresentazione della conoscenza in modo idoneo porta un sistema ad avere
consapevolezza del mondo in cui agisce. La conoscenza di un agente/sistema
intelligente si riferisce a ciò che conosce relativamente agli:
- Oggetti presenti nel dominio
- Eventi che devono accadere
- Come portare a termine un compito specifico
Realizza le basi di conoscenza che sono usati da sistemi esperti. L’ingegneria della
conoscenza si compone di:
- Analisi del problema
- Individuazione dei fatti (e loro classificazioni) e degli eventi rilevanti del dominio
applicativo (insieme alle relazioni di causa effetto esistenti tra loro)
- Definizione del modello di rappresentazione degli oggetti e delle relazioni (tra
loro e su di loro)
Quando si acquisisce conoscenza, bisogna sapere anche come quella stessa
conoscenza può essere ritrovata e su di essa ragionare. L’uso della conoscenza da
parte di un sistema intelligente si articola in tre fasi distinte:
- Acquisire più conoscenza. Non è solo aggiungere nuovi fatti, ma anche correlare
qualcosa di nuovo con ciò che già conosciamo.
- Ritrovare fatti dalla base di conoscenza del problema. Il processo di ricerca di
una soluzione consiste nel determinare quale è la conoscenza rilevante per un
particolare problema, all’interno di una conoscenza più vasta. Riconoscere
strutture dati collegabili in un processo inferenziale e collegarle.
- Ragionare sui fatti in cerca di una soluzione. Consiste nel determinare cosa è
necessario sapere da ciò che si conosce già. Il sistema deve essere in grado di
dedurre e verificare una molteplicità di nuovi fatti, oltre ciò che conosce
esplicitamente. Esistono diverse tipologie di ragionamento: formale,
procedurale, per analogie, per generalizzazione ad astrazione, di metalivello.
Una base di conoscenza deve essere chiara e concisa e rappresentare con
completezza il contenuto della conoscenza stessa. Se interrogata deve fornire
ragionamenti. La metodologia di rappresentazione della conoscenza deve essere:
- Espressiva
- Concisa
- Non ambigua
- Insensibile al contesto
- Efficace
- Riutilizzabile
Il primo formalismo che consente la rappresentazione della conoscenza è l’ontologia
che è una ramificazione della filosofia. L’ontologia è lo studio dei caratteri universali
dell’essere umano.
Fondamenti di IA 2
Un’ontologia è una descrizione formale esplicita dei concetti di un dominio:
- Esprime i legami tra oggetti/eventi del mondo, legati al loro essere
(entità/attributi);
- Incorpora le decisioni sul modo in cui rappresentare insieme di oggetti e
relazioni;
- Supporta il ragionamento su quegli oggetti/eventi:
Queste viste sono le fasi dell’ingegneria della conoscenza che deve avere per
sviluppare le basi di conoscenza.
La definizione più conosciuta nell’ambito dell’IA e della rappresentazione della
conoscenza è quella fornita da Tom Gruber (1955):
an ontology is an explicit specification of a conceptualization. The term is borrowed
from philosophy, where an Ontology is a semantic account of Existence.
Recentemente J. Sowa ha dato altre due definizioni di ontologia:
- The subject of ontology is the study of the categories of things that exist or may
exist in some domain.
- An ontology is a catalogue of the types of things that are assumed to exist in a
domain of interest D from perspective of a person who uses a language L for
the purpose of talking about D
Una modellazione che ci consente di rappresentare un modo più semplice di quello
logico e anche più espressivo.
Riferimento usato per descrivere la costruzione di una tassonomia di riferimento:
An ontology is, in this context, a dictionary of terms formulated in a canonical
- syntax and with commonly accepted definitions designed to yield a lexical r
taxonomical framework for knowledge representation which can be shared by
different information system communities.
What “exists” is that which can be represented.
- [definizione per Sistema
intelligente]
Una ontologia di dominio esprime i legami tra oggetti/eventi specifici di quel dominio;
è una descrizione esplicita del dominio attraverso:
- Concetti (in classi organizzate gerarchicamente)
- Proprietà ed attributi dei concetti
- Vincoli sulle proprietà ed attributi
- Istanze (possono anche non esserci)
Una ontologia di dominio definisce un vocabolario comune e un modo di ragionare
condiviso.
Si deve strutturare le categorie in sottoclassi (tassonomia) e le sottoclassi ereditano le
proprietà delle superclassi. La tassonomia semplifica l’ontologia e facilita alcune
modalità di ragionamento, oltre che supportare un ragionamento di tipo generale. Si
riconosce un oggetto tramite percezioni fisiche ad esso collegate. Si inferisce
l’appartenenza dello specifico oggetto ad una categoria dalle sue proprietà cosi come
percepite. Si usa la conoscenza sulla categoria per predire ulteriori proprietà dello
specifico oggetto.
Categorie ed eriditarietà:
- Un oggetto appartiene ad una categoria
Fondamenti di IA 2
- Una categoria può essere sottoclasse di un’altra categoria
- Ogni categoria ha proprietà distintive
- Sottoclassi di una stessa categoria identificano insieme disgiunti di elementi
- Gli elementi di una categoria che è anche sottoclasse di un’altra categoria
condividono le proprietà di entrambe le categorie.
Le relazioni fondamentali ontologiche sono:
- Hyponimia o inclusione (is-a, isa, IA-A, ISA, …) tra nomi di entità
- Troponimia tra verbi e processi
- Meronimia tra entità (nel senso di intero e sue parti)
Non esiste un’unica metodolo