1 / 22

Razvoj algoritma za avtomatsko generiranje ontologij

Razvoj algoritma za avtomatsko generiranje ontologij. Aleksander Pivk fakultetni m entor: akademik prof. dr. Ivan Bratko institutski mento r : prof. dr. Matjaž Gams. Ontologija. Ocenjevanje (ekspert). Mno žica dokumentov. Sistem. ni OK. OK. Vhodni dokument. Ontologija.

peers
Download Presentation

Razvoj algoritma za avtomatsko generiranje ontologij

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Razvoj algoritma za avtomatsko generiranje ontologij Aleksander Pivk fakultetni mentor: akademik prof. dr. Ivan Bratko institutski mentor: prof. dr. Matjaž Gams

  2. Ontologija Ocenjevanje (ekspert) Množica dokumentov Sistem ni OK OK Vhodni dokument Ontologija Odgovor agost ShinA* Teza doktorata • na množici vhodnih dokumentov se poskuša sistem avtomatsko naučiti znanja o domeni, tj. ontologijo, ki se uporabi za avtomatsko luščenje informacij. • doprinos – sistem za avtomatsko generiranje ontologij (strojno in človeško berljivih) iz spletnih dokumentov. Ena izmed temeljnih nerešenih nalog semantičnega spleta.

  3. Postopek delovanja sistema PREDZNANJE primeri iz določene domene(npr. CFP, e-nakupovanje, …) ONTOLOGIJA POSTOPKOVNI OPIS: a) s pomočjo predznanja procesiraj primere in pripravi podatke za učni algoritem b) uporabi učni algoritem za generiranje pravil (znanja) c) iz pravil zgradi ontologijo - <h#|b|i|title>- kw={workshop, conference, CFP} • dokumenti/primeri so zapisani v HTML • primere poda človek

  4. zahtevnost znanja Predznanje (1) • pet vrst predznanja: • html oznake in strukture • lastna imena • pripadnost vnaprej definiranemu seznamu (imena oseb, držav, mest, ustanov, mesecev, dni, …) • osnovne entitete • sintaktična analiza besedila (shallow language processing) • orodje GATE (ogrodje za razvoj komponent pri procesiranju naravnega jezika) • obstoječe splošne ontologije • Wordnet

  5. Predznanje (2) • HTML OZNAKE in STRUKTURE • sintaksa jezika HTML • ELEMENT: par ujemajočih seoznak (<a>…</a>), enostavna oznaka (<br>)ali tekst • BLOK: (lahko) sestavljen iz več elementov, ločnico predstavljajo skupine oznak: • interne povezave v dokumentu (#anchor) • mejniki (<h#>,<br>,<p>,<hr>,<blockquote>,…) • SEZNAM: vsebina elementa(<table>, <ul>, <ol>, <dt>) • pomembnost oznak • oznake z večjo informacijsko vrednostjo (<h#>, <font>, <i>, <b>,<u>,<center>…)

  6. Predznanje (3) • OSNOVNE ENTITETE • (hevristična) sintaktična pravila: • tel, fax: (tel|fax|gsm|phone) +?\\(?X\\)?\\(X\\)?(-?X)+ X=[0-9]+ • e-mail: (e?-?mail(to)?)? Y(\\.Y)*@Y(\\.Y))+ Y=[0-9a-zA-Z]+ • datum: [DDDD|MMMM] d{2}W*d{2} W*d{4} W=[.,/ ] • ura: d{2}Z*d{2} Z=[:] • temperatura: [T|temp] d{3}°?[C|F]

  7. Podrobnejši opis delovanja • vhodni parametri • dokumenti/primeri iz izbrane domene • izbira predznanj • procesiranje in priprava podatkov za učenje • procesiranje in obdelava primerov na podlagi predznanja in strukturne analize • priprava učnih atributov • učna faza • učni algoritmi: povezovalna pravila, ILP sistem (HYPER?), HINT? • induciranje pravil in dopolnjevanje atributov • grajenje ontologije iz pravil • zapis ontologije v formalen jezik (RDF/S, OWL)

  8. ponavljaj Učna faza(alg: povezovalna pravila) • osnovni korak(bottom-up pristop) • iz učnih atributov induciramo pravila • sortiramo glede na (confidendce, support) • izluščimo pravila nad pragom • združevanje pravil v hierarhično strukturo (drevo) • koraki višjih nivojev • dodamo/dopolnimoučne atribute (agregacija, razbitje) • iz učnih atributov induciramo nova pravila • drevo nadgradimo z izbranimi novimi pravili • postopek učenja pravil na višjih nivojev ponavljamo, dokler ne zgradimo celotnega drevesa (povežemo vsa poddrevesa) • generirano drevo predstavlja ontologijo

  9. Simulacija konkretnega primera • trije dokumenti/primeri iz domene CFP • predznanje: a) - c) • po strukturni analizi dobimo:

  10. Simulacija konkretnega primera • učni primeri • učni algoritem (povezovalna pravila) • izluščimo pravila • TITLE,DATE, LOC, PC, PC_LIST,DATES, DAT_LIST, DL_TYP=L2 (c=1) • TOPICS,TOP_LIST -> TL_TYP=6 (c=1) • LOC -> LOC_TYP=L5 (c=2/3) • OC,OC_LIST -> OCL_TYP=L1 (c=1/2) • … • spravili (nad pragom) gradimo ontologijo

  11. CFP - <h2|h3> + LIST- kw={date} - <h2|h3> + LIST- kw={comittee} TITLE DATE TOPIC LOCATION COMITTEE - kw={program} - kw={organize} • <h2|h3> + LIST- kw= {topic, theme, area} - <h#|b|i|title>- kw={workshop, conference, CFP} - <h#|b|i> D1 D2 D3 D4 D5 NAME - pravila inducirana iz predznanja D1: <h#|b|i> D2: kw={submission} D3: kw={notification} D4: kw={camera ready} D5: kw={abstract} ORGANIZE PROGRAM UNIVERSITY CITY COUNTRY Simulacija konkretnega primera • iz pravil generiramo ontologijo • zapis v formalen jezik (RDF, OWL)

  12. Dileme • PREDZNANJE • pri kateri stopnji predznanja sistem začne funkcionirati? • ali obstoječe ontologije kaj pripomorejo? • UČENJE • kako izkoriščati strukturno indukcijo? • poskus hevrističnega grupiranja za povezovalna pravila • primernostsistema HYPER?

  13. Delitev množice HTML oznak • tekstni nivo (vrstica) • <font, tt, i, b, big, small, sub, sup, em, strong, dfn, code, samp, kbd, var, cite, q, a> • bločni nivo • <h#, address, p, pre, div, center, blockqoute, form, isindex, hr, table, caption, tr, th, ul, ol, li, dt, dd, br, frame, frameset, body>

  14. množica HTML dokumentov sistem ontologija AGOSD ontologija vhodni dokument ShinA* odgovor Slika 1

  15. skrbnik ontologija AGOD množica spletnih dokumentov ontologija vhodni dokumenti ShinA* VUSP uporabnik odgovor Slika 1a

  16. skrbnik AGOD množica spletnih dokumentov množica okvirjev(F-Logic) ontologija OntoBroker vhodni dokumenti VUSP ShinA* uporabnik odgovor uporabnik odgovor Slika 1c

  17. predznanje HTML dokumentiizizbranedomene(npr. turizem, e-nakupovanje, …) ontologija POSTOPKOVNI OPIS: a) s pomočjo predznanja procesiraj dokumente, izlušči relevantne tabele in jih pripravi za procesiranje/obdelavo b) obdelaj relevantne tabele (poravnava) c) uporabi obstoječe (splošne) ontologije za ugotavljanje/določanje semantike d) iz obdelanih tabel in določene semantike zgradi ontologijo - primerki konceptov Slika 2

  18. ontologija predznanje HTML dokumentiizizbranedomene(npr. turizem, e-nakupovanje, …) POSTOPKOVNI OPIS: a) s pomočjo predznanja procesiraj dokumente, izlušči relevantne tabele in jih pripravi za procesiranje/obdelavo b) obdelaj relevantne tabele c) uporabi obstoječe (splošne) ontologije za ugotavljanje/določanje semantičnih kategorij d) iz obdelanih tabel in določene semantičnih kategorij zgradi ontologijo e) preslikaj ontologijo v formalizem F-Logic primerki konceptov okvirji(jezik F-Logic) Slika 2b

  19. Semantični Semantični 4 Semantično oplemenitenje FTM 4 Semantično oplemenitenje FMT Funkcijski Funkcijski 3Grajenje FTM 3Grajenje FTM Strukturni Strukturni 2Odkrivanje strukture 2Odkrivanje strukture Fizični Fizični 1Čiščenje & Normalizacija 1Čiščenje & Normalizacija vhod vhod tabelarični model tabelarični model metodološki koraki metodološki koraki izhod izhod okvirF-Logic dokumentHTML Okvir HTML Slika 3

  20. Semantični Semantični 4 Semantično oplemenitenje FMT 4 Semantično oplemenitenje FMT Funkcijski Funkcijski 3Grajenje FTM 3Grajenje FTM Strukturni Strukturni 2Odkrivanje strukture 2Odkrivanje strukture Fizični Fizični 1Čiščenje & Normalizacija 1Čiščenje & Normalizacija vhod vhod tabelarični model tabelarični model metodološki koraki metodološki koraki izhod izhod tabelaHTML okvirF-Logic tabelaHTML konceptF-Logic

  21. Tour [ Code => ALPHANUMERIC; DateValid => DATE; EconomicExtension (PersonClass, RoomClass) => LARGE_NUMBER; ExtendedExtension (PersonClass, RoomClass) => LARGE_NUMBER; ]. FORALL X,Y,P <- EXISTS T T:Tour[EconomicExtension@(X,Y) -> P]. X = adult, Y = single_Room, P = 35.450; X = adult, Y = double_Room, P = 32.500; X = adult, Y = extra_Bed, P = 30.550; X = child, Y = occupation, P = 25.800; X = child, Y = no_Occupation, P = 23.850; X = child, Y = extra_Bed, P = 22.900; FORALL X <- EXISTS T T:Tour[Code@ -> X]. X = DP9LAX01AB;  FORALL X,Y,P <- EXISTS T T:Tour[Code@ -> X and DateValid -> Y ExtendedExtension@(adult, single_Room) -> P]. X = DP9LAX01AB, Y = 01.05.04-30.09.04, P = 2.510;

  22. - FORALL X,Y,P <- EXISTS T T:Tour[EconomicExtension@(X,Y) -> P]. X = adult, Y = single_Room, P = 35.450; X = adult, Y = double_Room, P = 32.500; X = adult, Y = extra_Bed, P = 30.550; X = child, Y = occupation, P = 25.800; X = child, Y = no_Occupation, P = 23.850; X = child, Y = extra_Bed, P = 22.900; - FORALL X <- EXISTS T T:Tour[Code@ -> X]. X = DP9LAX01AB;  - FORALL X,Y,P <- EXISTS T T:Tour[Code@ -> X and DateValid -> Y and ExtendedExtension@(adult, single_Room) -> P]. X = DP9LAX01AB, Y = 01.05.04-30.09.04, P = 2.510;

More Related