FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio...

22
1 FMZ Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002

Transcript of FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio...

Page 1: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

1FMZ

Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio

Dott. Fabio Massimo Zanzotto

a.a. 2001-2002

Page 2: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

2FMZ

Ontologie di dominio(esempio)

cibo

vegetale carne

frutta ortaggio carne_bianca carne_rossa

mela pera arancia

Page 3: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

3FMZ

Ontologia di dominio

• Le applicazioni basate su conoscenza richiedono molte informazioni precise

– Grandezza delle ontologie di dominio– Precisione dell’informazione contenuta.

Page 4: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

4FMZ

Concetto importanti

• Ontologia contiene:– Concetti – Relazioni tra concetti – Istanze

• I concetti sono quelli ritenuti importanti per l’applicazione

Page 5: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

5FMZ

Nozione di termine

• Dato un dominio conoscitivo, un termine è la rappresentazione superficiale di un concetto importante per il dominio

• Es. Dominio Informaticohard diskTuring machineVon Neumann machineVirtual machine

Page 6: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

6FMZ

Costruzione di ontologie di dominio

• Passo importante: individuare i concetti che si desidera includere

– Fare una ipotetica lista di candidati– Separare concetti importanti da quelli non

importanti (da includere/da non includere)

Page 7: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

7FMZ

Costruzione di ontologie di dominio

• Non sono esperto di dominio (problema):– Ingegnere della conoscenza– Progettista di basi di dati – Programmatore

ma

conoscono una metodologia di risoluzione del problema

Page 8: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

8FMZ

Ontologie di dominio

• Sorgente di informazione (conoscenza)

– Testi scritti in linguaggio naturale che riguardano il dominio in questione

Page 9: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

9FMZ

Ciclo di produzione

Ontologia

pre-esistente

Collezione di documenti

Modello esteso del dominioTermine

Ingegneri della conoscenza + Esperti

del Dominio

Page 10: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

10FMZ

Produzione semi-automatica di ontologie

• Affiancare agli esperti di dominio Ingegneri della Conoscenza “Automatici”

• Abbiamo:– Cosa dobbiamo cercare: i concetti importanti – Dove cercarlo: i testi scritti in linguaggio

naturale– Il trait-d’union: la nozione di termine

Page 11: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

11FMZ

Nozione di termine: riflessioni

• Rappresentazione superficiale– Proprietà osservabile nel mondo testuale

• Importanza per il dominio– Proprietà osservabile nel modello esteso del dominio

• La rappresentazione superficiale (termine) non è il concetto soggiacente

Page 12: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

12FMZ

Rappresentando in XI

• Per ogni concetto vogliamo rappresentare una forma interna e le sue proprietà

/* hard_diskC(X) è il concetto*/

prop(hard_diskC(X),

[name(X,[hard,disk])]).

Page 13: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

13FMZ

Nozione di termine: riflessioni

• Rappresentazione superficiale– Sequenza di 1 o 2 parole

• Importanza per il dominio– Frequenza con cui è osservata la sequenza

• Si assume che esiste una relazione uno a uno tra termine e concetto

Page 14: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

14FMZ

Costruzione del modello/sistema

• Specifiche:

– Costruire una procedura che dato un insieme di testi in ingresso, mostri le forme superficiali in ordine di importanza

• Ci vogliamo del male e lo implementiamo in ProLog

Page 15: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

15FMZ

Conta su di un testo

/*

concetti_importanti(Testo,Concetti_Ordinati)

Testo = [w1,w2,...,wn]

Concetti_Ordinati = [(c1,freq1),..., (cn,freqn)]

*/

Page 16: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

16FMZ

Conta su di un testo

I concetti devono essere rappresentati dalla sequenza di parole intervallata da _ e terminano con C

ed hanno come proprietà quella di manifestarsi nel testo con la forma superficiale rappresentata dalle parole stesse

Es. Forma superficiale Rappresentazione

hard disk hard_diskC

pre-tax profit pre-tax_profitC

Page 17: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

17FMZ

Conta su di un testo

concetti_importanti(Testo,Concetti_Ordinati):-

singoli(Testo,ConcettiSemplici),

importanza(ConcettiSemplici,ConcettiSempliciVal),

coppie(Testo,ConcettiCompl),

importanza(ConcettiCompl,ConcettiComplVal),

append( ConcettiSempliciVal,

ConcettiComplVal,

ConcettiVal),

sorted(ConcettiVal, Concetti_Ordinati).

Page 18: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

18FMZ

Singoli e coppie

singoli([],[]).singoli([W|RT],[C|RC]):-

atomconcat(W,’C’,C),!,singoli(RT,RC).

coppie([],[]). coppie([W1,W2|RT],[C|RC]):-

atomconcat([W1,’_’,W2,’C’],C),!,coppie([W2|RT],RC).

Page 19: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

19FMZ

Importanza

importanza([],[]).importanza([C|RC],[(C,FREQ)|RCFREQ]):-

compare(C,[C|RC],FREQ,RCREST)!,importanza(RT,RC).

compare(_,[],0,[]). compare(A,[A|REST],FREQ,REST1):-

compare(A,REST,F1,REST1),FREQ is F1 + 1.

compare(A,[B|REST],FREQ,[B|REST1]):-compare(A,REST,FREQ,REST1).

Page 20: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

20FMZ

Esempio

??????

Page 21: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

21FMZ

Esercizi

• Trasformare un testo in ingresso (sequenza di caratteri) in sequenza di parole (si utilizzi il concetto di stringa in prolog)

• Scrivere un predicato che ordini per importanza i concetti in più testi.

Page 22: FMZ 1 Sistemi basati su conoscenza Costruzione automatica di ontologie di dominio Dott. Fabio Massimo Zanzotto a.a. 2001-2002.

22FMZ

Limiti dell’algoritmo presentato

• Forme superficiali povereVengono proposti concetti non convincenti

• Nozione di importanza troppo poco informativaSalgono concetti generici