Owlizr

1,217 views
1,168 views

Published on

In this paper we present OWLizr, a
system that constructs formal knowledge
representations using the Web Ontology Language
(OWL) from natural language text in bahasa
Indonesia.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,217
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Owlizr

  1. 1. Knowledge Representation System for Bahasa Indonesia Based on Web Ontology Language Description Logic (OWL DL) Fariz Darari Adila Alfa Krisnadhi Hisar Maruli Manurung Faculty of Computer Science Universitas Indonesia ICACSIS 2010 Download paper: ir.cs.ui.ac.id/publication/2010/owlizr.pdf
  2. 2. Outline <ul><li>Background </li></ul><ul><li>Knowledge Representation </li></ul><ul><li>Architecture </li></ul><ul><li>Evaluation Results </li></ul><ul><li>Conclusions </li></ul>
  3. 3. Challenge ? KNOWLEDGE TEXT
  4. 4. Why? Automated Knowledge Representation & Reasoning!! <ul><li>We always love automated things: </li></ul><ul><li>Automated Door </li></ul><ul><li>Automated Teller Machine </li></ul><ul><li>Automated Motorbike </li></ul>
  5. 5. Goal KNOWLEDGE TEXT
  6. 6. Background
  7. 7. Previous Works <ul><li>Larasati's </li></ul><ul><li>Model a syntactic and semantic processing system for QA in Bahasa </li></ul><ul><li>Mahendra's </li></ul><ul><li>Extend the system with the axiom addition, e.g., NLP axiom & world knowledge axiom </li></ul>
  8. 8. NLP and Event Representation <ul><li>Reification </li></ul><ul><li>Turning non-object thing into object </li></ul><ul><li>Using Neo-davidsonian approach, with thematic roles (agent, patient, theme, time, location) </li></ul>
  9. 9. Description Logic <ul><li>Consists of two components: </li></ul><ul><li>Previous research by Franconi with KODIAK, representing knowledge from natural language using Description Logic </li></ul>
  10. 10. <ul><li>OWLizr </li></ul><ul><li>Knowledge Representation </li></ul>
  11. 11. Event Modelling Event Patient Agent Action hasAgent hasAction hasPatient
  12. 12. Event Modelling (cont) event_1 car budi buy_action hasAgent hasAction hasPatient “ Budi buys a car” or “Budi membeli mobil”
  13. 13. Background Knowledge
  14. 14. DL Model <ul><li>Class: Thing, PhysicalObject, AbstractObject, LivingPhysicalObject, NonLivingPhysicalObject </li></ul><ul><li>Class Definition </li></ul>
  15. 15. DL Model (cont)
  16. 16. <ul><li>OWLizr </li></ul><ul><li>Architecture </li></ul>
  17. 17. Architecture
  18. 18. Two Modes <ul><li>Knowledge-assertion Mode </li></ul><ul><li>NLP Semantic Analyzer -> KB Generator -> KB Reasoner </li></ul><ul><li>Query Mode </li></ul><ul><li>NLP Semantic Analyzer -> SPARQL Query Generator </li></ul>
  19. 19. NLP Semantic Analyzer <ul><li>Reusing Mahendra's program </li></ul><ul><li>Analysis using syntax-driven semantic analysis with lambda calculus </li></ul><ul><li>Divided into 4 parts (Lexicon, Grammar, Lexical Semantics, Semantic Attachment Rules) </li></ul><ul><li>Example: </li></ul><ul><li>“ Pabrik memproduksi mobil” or “The factory produces the car” becomes </li></ul><ul><li>[location(x5,pabrik), event(x1,memproduksi), agent(x1,x5), patient(x1,x6), objectx(x6,mobil)] </li></ul>
  20. 20. KB Generator <ul><li>Transforms semantic notations into OWL </li></ul><ul><li>Implemented in Java with library Protege-OWL API </li></ul><ul><li>Two main functions, instance and property assertions </li></ul>
  21. 21. Example Instance Assertion: from [location(x5,pabrik), event(x1,memproduksi), agent(x1,x5), patient(x1,x6), objectx(x6,mobil)] to Factory(factory_1), Event(event_1), Car(car_1) Property Assertion:
  22. 22. Instance assertion
  23. 23. Property Assertion
  24. 24. KB Reasoner <ul><li>Two Main Uses: </li></ul><ul><li>Consistency Checking </li></ul><ul><li>Check if there is a contradiction, for example “Mobil membeli radio” or “The car buys the radio” will produce an error. But, of course people can buy the radio. </li></ul><ul><li>Instance Checking </li></ul><ul><li>Function to obtain inferred knowledge. It will check whether an instance could be classified in some classes or not. </li></ul>
  25. 25. SPARQL Query Generator <ul><li>Translates semantic notations into SPARQL Query </li></ul><ul><li>Formed by two components, SELECT and WHERE clause </li></ul><ul><li>Then, execute query on KB </li></ul>
  26. 26. Example
  27. 27. <ul><li>Evaluation Results </li></ul>
  28. 28. Evaluation <ul><li>Serves as a proof-of-concept </li></ul><ul><li>Using a specific, domain ontology , that is economic activity </li></ul><ul><li>Example terms are &quot; price &quot; or &quot;harga&quot;, &quot; expensive &quot; or &quot;mahal&quot;, &quot; buy &quot; or &quot;membeli&quot;, &quot; sell &quot; or &quot;menjual&quot;, &quot; buyer &quot; or &quot;pembeli&quot;, and &quot; shop &quot; or &quot;toko&quot; </li></ul><ul><li>The evaluation tests the ontology features , such as subclass, intersection, union. So, we define each terms in the ontology using various ontology features. For example, buyer is defined as: </li></ul>
  29. 29. Knowledge Assertion Mode <ul><li>Input: “Anto buys the car in the shop” or “Anto membeli mobil di toko” </li></ul><ul><li>NLP Semantic Analyzer: </li></ul><ul><li>[person(x6,anto), event(x4,membeli), agent(x4,x6), patient(x4,x3), objectx(x3,mobil), di(x4,x1), location(x1,toko)] </li></ul><ul><li>Asserted Knowledge (Instance): </li></ul>
  30. 30. Assertion Mode (cont) <ul><li>Asserted Knowledge (Property) </li></ul>
  31. 31. Assertion Mode (cont) <ul><li>Inferred Knowledge </li></ul>
  32. 32. Query Mode <ul><li>Input: “Who buys the car?” or “Siapa yang membeli mobil?” </li></ul><ul><li>NLP Semantic Analyzer: </li></ul><ul><li>[ans(x7), person(x5,x7), event(x4,membeli), agent(x4,x5), patient(x4,x2), objectx(x2,mobil)] </li></ul><ul><li>SPARQL Query Form: </li></ul><ul><li>ans(x7) -> SELECT ?x7 </li></ul><ul><li>person(x5,x7), event(x4,membeli), agent(x4,x5), patient(x4,x2), objectx(x2,mobil ) -> WHERE { ?event :hasAction :buy_action . ?event :hasAgent ?x7 . ?event :hasPatient ?ins . ?ins rdf:type :Car } </li></ul>
  33. 33. Conclusions <ul><li>This research works as a bridge between NLP (Mahendra's) and DL (Franconi's) </li></ul><ul><li>The research value is in the formalization attempt to natural language text </li></ul><ul><li>The resulting knowledge can be shared and reused across the web </li></ul><ul><li>Next , implementing TBox assertion and increasing OWL version to OWL 2 </li></ul>

×