งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

แนะนำการพัฒนาโปรแกรมประยุกต์ออนโทโลยี Introduction to Ontology Application Development ดร.มารุต บูรณรัช ห้องปฏิบัติการวิจัยเทคโนโลยีภาษาและความหมาย ศูนย์เทคโนโลยีอิเล็คทรอนิกส์และคอมพิวเตอร์แห่งชาติ

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "แนะนำการพัฒนาโปรแกรมประยุกต์ออนโทโลยี Introduction to Ontology Application Development ดร.มารุต บูรณรัช ห้องปฏิบัติการวิจัยเทคโนโลยีภาษาและความหมาย ศูนย์เทคโนโลยีอิเล็คทรอนิกส์และคอมพิวเตอร์แห่งชาติ"— ใบสำเนางานนำเสนอ:

1 แนะนำการพัฒนาโปรแกรมประยุกต์ออนโทโลยี Introduction to Ontology Application Development ดร.มารุต บูรณรัช ห้องปฏิบัติการวิจัยเทคโนโลยีภาษาและความหมาย ศูนย์เทคโนโลยีอิเล็คทรอนิกส์และคอมพิวเตอร์แห่งชาติ marut.bur@nectec.or.th marut.bur@nectec.or.th

2 หัวข้อบรรยาย แนะนำมาตรฐานข้อมูลเว็บเชิงความหมาย (Introduction to Semantic Web Standards) การพัฒนาโปรแกรมประยุกต์ออนโทโลยีโดยใช้ ซอฟแวร์ OAM (Ontology Application Management) 2

3 แนะนำมาตรฐานข้อมูลเว็บเชิงความหมาย (Introduction to Semantic Web Standards) Peter Haase and Denny Vrandečić, AIFB, Universität Karlsruhe (TH) Asian School for the Semantic Web ASSW2008, Bangkok, Thailand – December 2008

4 Slide 4 Universal Access to All Knowledge

5 5

6 6

7 7

8 8

9 9 Angola Africa located in Zambia located in borders Country Continent

10 10 Angola Africa located in Zambia located in borders Country Continent type Country Continent

11 11 Angola Africa located in Zambia located in borders Country Continent

12 12 Angola Africa located in Zambia located in borders Country Continent type

13 Slide 13RDF  A set of triples  Triples are Subject, Predicate, Object

14 14

15 http://semanticweb.org/id/Denny_Vrandecic URIs / IRIs  URIs are “Uniform Resource Identifiers” –IRI: Unicode-based “Internationalized Resource Identifiers”  Every URI identifies one entity  Semantic Web URIs usually use HTTP –HyperText Transfer Protocol –Can be resolved to get more data (ideally) –Linked data  QName as abbreviation (Qualified Name) Protocol Domain Local name thing:Denny_Vrandecic Prefix Namespace

16 16 Angola Africa located in Zambia located in borders Country Continent type

17 17 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in Angola http://www.w3.org/2000/01/rdf-schema#label Africa Located in Zambia Country Borders Continent http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://www.w3.org/1999/02/22/rdf-syntax-ns#type

18 18 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in ประเทศแองโกลา http://www.w3.org/2000/01/rdf-schema#label ทวีปแอฟริกา แห่ง ประเทศแซมเบีย ประเทศ ชายแดน ทวีป http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://www.w3.org/1999/02/22/rdf-syntax-ns#type

19 19 ประเทศแองโกลา ทวีปแอฟริกา แห่ง ประเทศแซมเบีย แห่ง ชายแดน ประเทศ ทวีป

20 20 Angola Africa located in Zambia located in borders Country Continent

21 Slide 21RDF  A set of triples  Triples are Subject, Predicate, Object  Subjects and Predicates are URIs  Objects are URIs or Literals –Literals are concrete data values –e.g. the integer 27 or the date Dec 1, 2008

22 22 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in Angola http://www.w3.org/2000/01/rdf-schema#label Africa Located in Zambia Country Borders Continent http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://www.w3.org/1999/02/22/rdf-syntax-ns#type

23 Slide 23

24 Slide 24RDF  A set of triples  Triples are Subject, Predicate, Object  Subjects and Predicates are URIs  Objects are URIs or Literals –Literals are concrete data values –e.g. the integer 27 or the date Dec 1, 2008  Several serialization formats like RDF/XML, N3, etc.

25 25

26 Slide 26 SPARQL : RDF Query Language PREFIX rdfs: PREFIX thing: PREFIX relation: SELECT ?label WHERE { thing:Angola relation:Located_in ?c. ?c rdfs:label ?label }

27 27 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in Angola http://www.w3.org/2000/01/rdf-schema#label Africa Located in Zambia Country Borders Continent http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://www.w3.org/1999/02/22/rdf-syntax-ns#type

28 28

29 RDF Schema  Define relations between terms to give formal semantics  In RDF(S): –subClassOf –subPropertyOf –And others (domain, range, list, collection, etc.)  Example: –Country subClassOf Location –Continent subClassOf Location  Allows inferences –Angola type Country –Country subClassOf Location –-> Angola type Location

30 30 Angola Africa located in Zambia located in borders Country Continent Location

31 31 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in Angola http://www.w3.org/2000/01/rdf-schema#label Africa Located in Zambia Country Borders Continent http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://ontoworld.org/id/Category:Location Location http://www.w3.org/2000/01/rdf-schemas#subClassOf http://www.w3.org/1999/02/22/rdf-syntax-ns#type

32 Slide 32 RDF Schema  Define relations between terms to give formal semantics  In RDF(S): –subClassOf –subPropertyOf –And others (domain, range, list, collection, etc.)  Example: –Country subClassOf Location –Continent subClassOf Location  Allows inferences –Angola type Country –Country subClassOf Location –-> Angola type Location

33 33 http://ontoworld.org/id/Angola http://ontoworld.org/id/Africa http://ontoworld.org/id/Relation:Located_in http://ontoworld.org/id/Zambia http://ontoworld.org/id/Relation:Located_in Angola http://www.w3.org/2000/01/rdf-schema#label Africa Located in Zambia Country Borders Continent http://ontoworld.org/id/Relation:Borders http://ontoworld.org/id/Category:Country http://ontoworld.org/id/Category:Continent http://ontoworld.org/id/Category:Location Location http://www.w3.org/2000/01/rdf-schemas#subClassOf http://www.w3.org/1999/02/22/rdf-syntax-ns#type

34 34 Angola Africa located in Zambia located in borders Country Continent Location

35 Slide 35 Semantic Web Angola Zambia Africa Continent African Elephant Indian Elephant Mammal Animal Gorilla Egypt Pig Alexandria Memphis Alexander the Great China Ceylon India Airline Asia Hotel Restaurant Enterprise Airport Vacation Plant Vegeterian restaurant Europe Earth Inchineon Mumbay Airport Mumbay Cell DNA Genom Lao Tse Aristotle Philosophy

36 36

37 37

38 38 Universal Access to All Knowledge

39 แนะนำเครื่องมือสนับสนุนการพัฒนาโปรแกรม ประยุกต์ออนโทโลยี Ontology Application Management (OAM) Framework 39 Language and Semantic Technology Laboratory (LST), NECTEC

40 ปัญหาของการพัฒนาซอฟแวร์ในปัจจุบัน ทรัพยากรของบริษัทพัฒนาซอฟแวร์มีจำกัด – เวลา - งานต้องส่งมอบเร็ว – โปรแกรมเมอร์ – มีงานเยอะโปรแกรมเมอร์น้อย ซอฟแวร์ดูแลรักษายาก – มีการเปลี่ยนโปรแกรมเมอร์ การแก้ไขโปรแกรม อาจต้องเขียนใหม่ Business logic ฝังอยู่ในโปรแกรม – มีช่องว่างในการสื่อสารระหว่างนักวิเคราะห์กับ โปรแกรมเมอร์ ต้องมีการแปลง Business logic ให้เป็นโปรแกรม 40

41 แอพพลิเคชันเฟรมเวิร์ค (Application Framework) ลดงานของโปรแกรมเมอร์ – ส่วนฟังก์ชันที่ใช้งานบ่อยๆ ทำให้เรียกใช้ง่าย ขึ้น – การแก้ไขโปรแกรมแบ่งเป็นส่วนๆ ที่ไม่มี ผลกระทบต่อกัน เช่น MVC การดูแลรักษาโปรแกรมได้ง่ายขึ้น – แยกส่วนข้อมูลที่ปรับเปลี่ยนได้ (customize) ออกจากโปรแกรม เช่น มีส่วนการตั้งค่า (config file) อยู่นอกโปรแกรม 41

42 OAM Framework ช่วยการพัฒนาโปรแกรมประยุกต์ที่ใช้ความรู้ใน การตัดสินใจ (Knowledge-based Application) ได้ง่ายยิ่งขึ้น ลดเวลาพัฒนา โดยมิจำเป็นต้องเขียนโปรแกรมในการพัฒนา โปรแกรมต้นแบบ ผู้พัฒนาเพียงเชื่อมโยงข้อมูลที่มีอยู่เข้ากับ โครงสร้างข้อมูลแบบ ออนโทโลยี (ontology) เน้นที่โปรแกรมประยุกต์ในแบบของ – ระบบสืบค้นข้อมูลเชิงความหมาย (Search system) – ระบบแนะนำข้อมูล (Recommender system) 42

43 จุดเด่นของ OAM Framework 43 OAM ลดเวลา พัฒนา โปรแกร ม มาตรฐา นเว็บเชิง ความหม าย ทำงาน โดยอิง กับ ฐานควา มรู้ ลดภาระ ดูแล รักษา โปรแกร ม สร้าง Web API สร้าง ระบบ สืบค้น ข้อมูล สร้าง ระบบ แนะนำ ข้อมูล

44 โปรแกรม OAM – เครื่องมือสนับสนุนการพัฒนา โปรแกรมประยุกต์ออนโทโลยี สนับสนุนทั้งการสร้างข้อมูล RDF/ OWL Data จาก ฐานข้อมูลที่มีอยู่ (publishing) และการใช้ประโยชน์จาก ข้อมูลที่สร้างขึ้น (consumption) ในแบบระบบสืบค้น เชิงความหมาย และระบบแนะนำข้อมูล ช่วยลดความซับซ้อนในการพัฒนาโปรแกรมประยุกต์ ของออนโทโลยี –ผู้ใช้ไม่จำเป็นต้องมีพื้นฐานการเขียนโปรแกรมในการพัฒนาต้นแบบ โปรแกรมประยุกต์ออนโทโลยี –มีต้นแบบโปรแกรม (application template) ที่สามารถประมวลผล ข้อมูลนำเข้าในแบบ RDF ได้ 44

45 การสร้าง Tool ร่วมไปกับการสร้างชุมชนวิจัย 45

46 กิจกรรมอบรม Semantic-based Knowledge Management Tools 46

47 กิจกรรม Semantic-based Knowledge Management Tools Workshops for Developers 47 Coding marathon activity, December 2010

48  โปรแกรมช่วยสนับสนุนการสร้างองค์ความรู้เฉพาะ ทาง (Ontology Development Tool)  โปรแกรมจัดการการเชื่อมโยงข้อมูลที่มีอยู่เข้ากับองค์ ความรู้เฉพาะทาง (Database-Ontology Mapping Tool)  โปรแกรมประยุกต์ที่นำองค์ความรู้เฉพาะทางมาใช้ ประโยชน์ (Ontology Applications) เช่น  การสืบค้นข้อมูลเชิงความหมาย (Semantic Search)  ระบบแนะนำข้อมูล (Recommender System) เครื่องมือสนับสนุนการจัดการความรู้เชิง ความหมาย (Semantic-based Knowledge Management Tools) 48

49 Ontology-based Applications

50 OAM Framework INPUT: –ฐานข้อมูล (MySQL) –ออนโทโลยี (.owl) –Business Logic (.xls)* OUTPUT : –เว็บเซอร์วิสชนิด RESTFul (Web API) –โปรแกรมต้นแบบสำเร็จรูป (Application Template) * เฉพาะการประยุกต์ใช้แบบ Recommender System 50

51 Ontology-based application development 51

52 Ontology-based Application Development Tools Apache Jena –A Java framework for building Semantic Web Application –http://jena.apache.org/ D2RQ –D2RQ is a declarative language to describe mappings between relational database schemata and OWL/RDFS ontologies –Developed by the University of Berlin –http://d2rq.org/ Reasoner –Jena’s Inference Engine

53 Architecture of Ontology Application Management (OAM) Framework

54 Database-Ontology Data Mapping Tool

55 Database Schema and Vocabulary to Ontology Mapping 55 1 X 10,000 2 … … … … b) Database

56 Example Ontology 56

57 Example database and mapping config persons pidnamepos_id 1A1 ……… 57 professions prof_idname 1neurosurgeon 2plastic surgeon 3orthodontist 4attorney 5solicitor positions position_idnamesalaryprofession_id 1X10,0002 …………

58 Example RDF Data Output 1 A … 58

59 Example RDF Data Output (2) … 2 Plastic Surgeon … 59

60 Relational Database to RDF Mapping Languages D2RQ Mapping Language o http://d2rq.org/d2rq-language http://d2rq.org/d2rq-language o Used in D2RQ System o Developed by University of Berlin R2RML: RDB to RDF Mapping Language o http://www.w3.org/TR/r2rml/ http://www.w3.org/TR/r2rml/ o W3C Recommendation (September 2012) 60

61 Semantic Search Application Template

62 Application Templates With application template, the user only needs to define application configuration and does not need programming skill in building an application. –Suitable for researchers who want to experiment on research ideas that can be realized by means of the semantic web technology. –Typically ideal for rapid prototyping and hypotheses testing. 62

63 Application Templates (2) Currently, two application templates are provided: –semantic search application –recommender system application The semantic search application template provides a faceted search interface. –The user’s search condition is automatically transformed to a SPARQL query for retrieving the instance data from an RDF database. 63

64 Example SPARQL Query PREFIX xsd: SELECT ?x ?id WHERE{ ?x ?a0. ?a0. ?x ?a1. ?a1. ?x ?id. ?x. }ORDER BY ASC(xsd:integer(?id)) 64

65 Example SPARQL Query (2) PREFIX xsd: SELECT ?x ?has_name ?has_age ?has_goals … WHERE { ?x ?pkey. FILTER( ?pkey = '1' || ?pkey = '2‘ ). ?x. OPTIONAL { ?x ?has_name } OPTIONAL { ?x ?has_age } OPTIONAL { ?x ?has_goals }... }ORDER BY ASC(xsd:integer(?pkey)) 65

66 Recommendation Rule Management

67 67 IS-A CarModel brand IS-A JapaneseBrand price < “600000” IS-A Customer nation IS-A Asian and age IS-A YoungAdult Jena’s Rule Syntax “Honda Jazz” “Honda City” “Toyota Vios” “Nissan March” “Suzuki Swift” “Nobita” “Kim” “Somchai” Recommendation Results

68 กรณีศึกษาการประยุกต์ใช้งานระบบ OAM 68 ระบบสืบค้นข้อมูล (Search system) 1.ระบบสืบค้นฐานข้อมูลกฎหมายของประเทศในกลุ่ม อาเซียน 2.ระบบสืบค้นฐานข้อมูลมาตรฐานคุณวุฒิวิชาชีพ 3.ระบบจัดการชุดข้อมูลแบบเปิดสำหรับ Data.go.th

69 ระบบสืบค้นฐานข้อมูลกฎหมายของประเทศในกลุ่ม อาเซียน 69

70 ระบบสืบค้นฐานข้อมูลกฎหมายของประเทศในกลุ่ม อาเซียน http://asean-law.senate.go.th 70

71 ระบบสืบค้นฐานข้อมูลมาตรฐานคุณวุฒิวิชาชีพ 71 http://tpqi-net.tpqi.go.th/

72 ระบบจัดการชุดข้อมูลแบบ RDF สำหรับ Data.go.th http://demo-api.data.go.th/ Search Application Template Search Web API 72

73 กรณีศึกษาการประยุกต์ใช้งานระบบ OAM ระบบแนะนำข้อมูล (Recommender system) 1.ระบบสนับสนุนการตัดสินใจทางคลินิกสำหรับ โรคธาลัสซีเมีย 2.ระบบช่วยประเมินพิกัดภาษีสินค้า กรมสรรพสามิต 3.ระบบรู้จำกิจกรรมของบุคคลในบ้านอัจฉริยะ (Activity Recognition in Smart Home) 73

74 ระบบสนับสนุนการตัดสินใจทางคลินิกเพื่อช่วยการ ควบคุมและป้องกันการแพร่กระจายของโรคธาลัสซีเมีย 74

75 ระบบช่วยประเมินพิกัดภาษีสินค้ากรมสรรพสามิต 75

76 ระบบช่วยประเมินพิกัดภาษีสินค้ากรมสรรพสามิต (2) ส่วนจัดการ Business Logic เว็บเซอร์วิส (RESTFul Web API) 76

77 77 Recommendation Rule Management Semantic Search Application Template Ontology-Database Mapping ระบบรู้จำกิจกรรมของบุคคลในบ้านอัจฉริยะ

78 เอกสารอ้างอิง ( บางส่วน ) Buranarach, M., Supnithi, T., Thein, Y.M., Rattanasawad, T., Wongpatikaseree, K., Lim, A. O., Tan Y., Ruangrajitpakorn, T., and Assawamakin, A., OAM: An Ontology Application Management Framework for Simplifying Ontology-based Semantic Web Application Development, To appear in International Journal of Software Engineering and Knowledge Engineering (IJSEKE), 2015. Buranarach, M., Ruangrajitpakorn, T., Anutariya, C., and Wuwongse, V., Ontology Design Approaches for Development of an Excise Duty Recommender System, To appear in Proc. of ISIP2013, CCIS, Springer, 2014. Buranarach, M., Thein, Y. M., and Supnithi, T., A Community-driven Approach to Development of an Ontology-based Application Management Framework, Proc. of the 2nd Joint International Semantic Technology Conference (JIST2012), LNCS, Springer, December 2012. Wongpatikaseree, K., Ikeda, M., Buranarach, M., Supnithi, T., Lim, A. O., and Tan Y., Location- based Concept in Activity Log Ontology for Activity Recognition in Smart Home Domain, Proc. of the 2nd Joint International Semantic Technology Conference (JIST2012), LNCS, Springer, December 2012. Wongpatikaseree, K., Ikeda, M., Buranarach, M., Supnithi, T., Lim, A. O., and Tan Y., Activity Recognition using Context-Aware Infrastructure Ontology in Smart Home Domain, Proc. of the 7th International Conference on Knowledge, Information and Creativity Support Systems (KICSS2012), November 2012. 78


ดาวน์โหลด ppt แนะนำการพัฒนาโปรแกรมประยุกต์ออนโทโลยี Introduction to Ontology Application Development ดร.มารุต บูรณรัช ห้องปฏิบัติการวิจัยเทคโนโลยีภาษาและความหมาย ศูนย์เทคโนโลยีอิเล็คทรอนิกส์และคอมพิวเตอร์แห่งชาติ

งานนำเสนอที่คล้ายกัน


Ads by Google