- Ontology เป็นสิ่งที่สามารถจับเอาสารสนเทศและความรู้ (Information and Knowledge) มาสร้างเป็นฐานความรู้ (Knowledge-based) (Fishwick, P.A., Miller, J.A. , 2004). โดยมีภาษา XML เป็นพื้นฐานสำคัญ โดยเฉพาะที่เกี่ยวกับการจัดการสนามรบได้มีการพัฒนาภาษา BML ขึ้นมา (J. Mark Pullen, Krishna Makineni, Priscilla McAndrews., 2007) โปรแกรมประยุกต์ทางทหารพยายามทำให้คอมพิวเตอร์สามารถเข้าใจความหมาย (Semantic) และยังสร้างปัญญาประดิษฐ์ (Artificial Intelligence) ซึ่งสามารถนำไปใช้ในการประยุกต์ใช้งานของทหารเพื่อการตัดสินใจในระดับสูง (High level military application)ได้ (Bowman, M., Lopez, A., and Tecuci, G., 2001)
- ความหมายของ Ontology Martin Hepp, Pieter De Leenheer, Aldo de Moor and York Sure. (2008) ได้รวบรวมไว้ ดังนี้
Ontology เป็นปรัชญาว่าด้วยกฎระเบียบข้อบังคับ (Philosophical discipline)
Ontology เป็นระบบกรอบความคิดซึ่งไม่เป็นทางการ (Informal conceptual system)
Ontology เป็นการบรรยายความหมายอย่างเป็นทางการ (formal semantic account)
Ontology เป็นคุณลักษณะเฉพาะของการสร้างกรอบความคิด (specification of a conceptualization)
Ontology เป็นตัวแทนของระบบกรอบความคิดด้วยโดยทางทฤษฎีทางตรรกะ (representation of a conceptual system via a logical theory) มี 2 ลักษณะพิเศษ (1. ลักษณะตามคุณลักษณะที่เป็นทางการเฉพาะ (Specific formal properties), 2. ลักษณะตามวัตถุประสงค์เฉพาะ (Specific purposes))
Ontology เป็นคำศัพท์ที่ถูกใช้โดยทฤษฎีทางตรรกะ (Vocabulary used by a logical theory)
Ontology เป็นคุณลักษณะเฉพาะ (meta-level) ของทฤษฎีทางตรรกะ (Specification of a logical theory) (Guarino and Giaretta, 1995)
- จากการศึกษาของ Grigoris Antoniou and Frank van Harmelen. (2004) ได้สรุปว่า Ontology หมายถึงวิธีการบรรยายแนวความคิดตามขอบเขตที่สนใจ หรือข้อกำหนดที่เกี่ยวกับแนวคิด (The Specification of a Conceptualization) โดยที่ Ontologyเป็นการสร้างโครงสร้างฐานความรู้ทางด้านใดด้านหนึ่ง หรือขอบเขต (Domain) ใดขอบเขตหนึ่ง ซึ่งมีแนวคิดและความเข้าใจตรงกัน Ontology ใช้ในการอธิบายความหมายของสิ่งต่าง ๆ และสามารถจัดหมวดหมู่เอกสารของข้อมูลได้ในขอบเขตความสนใจหนึ่ง ๆ ซึ่งในปัจจุบัน Ontology ได้ถูกนำมาประยุกต์ใช้งานมากยิ่งขึ้น สามารถประยุกต์กับงานหลาย ๆ ด้าน เช่น เว็บ เชิงความหมาย (Semantic Web) การจัดการองค์ความรู้ (Knowledge Management) ธุรกิจอิเล็กทรอนิกส์ (e-Business) พาณิชย์อิเล็กทรอนิกส์ (e-Commerce) และการค้นคืนสารสนเทศ และได้แบ่งประเภทของ Ontology เป็น 4 ประเภท คือ Top-Level Ontology, Domain Ontology, Task Ontology และ Application Ontology
- Ontology ถูกสร้างขึ้นมาเพื่อจำกัดองค์ความรู้ (Knowledge) ของขอบเขตข้อมูลนั้น ๆ โดยมีความสามารถในการใช้ข้อมูลร่วมกัน (Share) สามารถนำข้อมูลกลับมาใช้ได้ (Reuse) และมีความสามารถในการถ่ายทอดคุณสมบัติ (Inheritance) การนำ Ontology มาใช้งานจึงเป็นทางเลือกหนึ่งในการแชร์ข้อมูล และแยกองค์ความรู้ออกจากฐานข้อมูล
- Ontology เป็นลักษณะภาษาที่นำมาใช้บรรยายโครงสร้างและความสัมพันธ์ของระบบผ่านโหนด (Node) แบบลำดับชั้น (Hierarchies) ภาษาดังกล่าวถูกนำมาใช้ในงานหลายด้าน โดยเฉพาะด้านปัญญาประดิษฐ์ (AI) ในปัจจุบันได้กำหนดภาษามาตรฐานที่ใช้จำลองและออกแบบโครงสร้างของเอกสาร (eXtensible Markup Language: XML) โดยใช้นิยามแนวคิดให้อยู่ในรูปของกฎ (Role) คลาส (Class) ความสัมพันธ์ระหว่างคลาส (Relation) และคุณสมบัติของคลาส (Properties) แล้วนำเสนอออกมาในรูปของโหนด และความสัมพันธ์แบบลำดับชั้น
* เนื่องจากว่าหลายคนคิดว่า ontology คือทั้งหมดของ semantic web ซึ่งส่วนของ ontology นั้นจะใช้สำหรับผูกความสัมพันธ์ของ thing (data) หรืออีกนัยหนึ่งมันก็คล้ายๆกับ database ซึ่งก็ไม่แปลกที่หลายคนจะเข้าใจแค่นั้น แต่เนื่องจาก ontology นั้นมีสิ่งที่แตกต่างจาก database ทั่วไปอย่างน้อยๆก็เรื่องรูปแบบของข้อมูลซึ่งเป็นแบบ Hierarchy form และนอกจากนั้นยังมีข้อมูลความสัมพันธ์ของ Thing ติดอยู่ด้วย ทีนี้หลายๆคน ยังเข้าใจว่าเวลาใช้ ontology ก็จะใช้แบบ database เลยต้องหาอะไรมา query มัน แล้วนั่นเราจะได้ประโยชน์เพิ่มขึ้นตรงไหน? ทำไมไม่ใช้เทคโนโลยีเก่าล่ะ? สิ่งที่เราจะได้ประโยชน์จากเทคโนโลยีนี้คือ การเพิ่มความฉลาดให้มัน(หมายถึงระบบคอมพิวเตอร์) ใส่สมองให้มัน (Logic) ซึ่งแน่นอน Logic นี้ยังสามารถ query ข้อมูลใน ontology ได้อีกด้วย ผมกำลังพูดถึง SWRL: Semantic Web Rule Language ซึ่งเราต้องพัฒนาหลังจากที่เราสร้าง ontology แล้ว แต่ก่อนนั้นเราจะให้โปรแกรมเราฉลาดขึ้นได้นั้นเราก็จะเขียน Logic ฝังไว้ในตัวโปรแกรม พอมีความต้องการพัฒนาเพิ่มเติมก็ต้องเอาโปรแกรมทั้งหมดหรือบางส่วนมาแก้ แต่ถ้าเราใช้ SWRL แทน โปรแกรมก็จะทำหน้าที่เพียง Interface Logic Programming แล้วให้ SWRL ทำหน้าที่ Logic ของระบบทั้งหมด เราสามารถพัฒนาแก้ไขได้ตลอดทั้งส่วน Ontology และ SWRL โดยแทบไม่ต้องไปแตะส่วนของโปรแกรมเลย พูดมาซะยืดยาว ผมจะขอยกตัวอย่างล่ะกัน สมมุติว่าใน ontology เรามีข้อมูลที่ผูกความสัมพันธ์ว่า A เป็นพี่ชายกับ B, B1 เป็นลูกของ B, (ฉะนั้น B1 เป็นหลานของ A และ A เป็นลุงของ B1) ส่วนในวงเล็บนั้นข้อมูลจะไม่มีปรากฎใน ontology แต่เราจะเขียนไว้ใน SWRL แทน เพียงแค่นี้ระบบของเราก็จะฉลาดขึ้น ไม่ใช่แค่ query ธรรมดา..
*** การใช้ ontology นั้นมันเป็นการใส่สมองให้กับคอมพิวเตอร์ครับ เวบที่ทำขึ้นก็ต้องถูกออกแบบมาเพื่อทำงานกับ ontology โดยเฉพาะ ไม่งั้นถ้าใช้ ontology เป็นแค่ database ก็อย่าไปใช้ ontology เลย implement ยากเปล่าๆ แต่ทำเวบแล้วเขียน meta data ก็พอสำหรับ search engine ทั่วไป ปัจจุบัน search engine พยายามทำความเข้าใจเวบที่ถูกสร้างมากขึ้นโดยสามารถจัดกลุ่มเป็นประเภทเวบต่างๆ ได้ ซึ่งใช้ ontology ในการเพิ่มความสามารถในการจัดกลุ่มเป็นอัตโนมัติ แต่ก็ยังทำได้ไม่ดีเท่าที่ควร แต่ในอนาคตจะดีขึ้นๆ เพราะเขาสามารถพัฒนาสมองให้คอมพิวเตอร์ผ่าน ontology เข้าไปได้เรื่อยๆ
- หลายๆ คนเข้าใจผิดเรื่อง ontology อย่างมาก คิดว่ามันเป็นเวบที่ทำข้อมูลแสดงผลให้คนอ่าน ซึ่งนั่นเป็นแค่เทคโนโลยี web 1.0 และ web 2.0 ไม่ใช่ web 3.0 การใช้ Web 3.0 Application ตัวอย่างนึงคือ การเป็นเวบให้คำปรึกษา ให้คำแนะนำ เหมือนเป็นระบบ expert system เช่น เวบถามเกี่ยวกับพฤติกรรมและข้อมูลสุขภาพของเรา แล้วมันให้คำแนะนำว่าเรามีความเสี่ยงเป็นโรคอะไรบ้าง และเราควรปฏิบัติตัวอย่างไร การที่เวบจะสามารถทำแบบนี้ได้ไม่ใช่เวบมีข้อมูลเท่านั้น แต่มันต้องมีความรู้และตรรกะอีกด้วย - บางท่านอาจบอกว่าการบริการลักษณะนี้ก็น่าจะมีอยู่แล้วในยุคของเวบเดิมๆ คำตอบคือ ใช่ แต่การพัฒนาระบบนั้นมีแนวความคิดที่แตกต่างกันอย่างสิ้นเชิง ระบบเดิมนั้นอาจใช้ฐานข้อมูล และเขียนความสามารถส่วนความรู้ผ่านภาษาโปรแกรม เช่น java รวมถึงตรรกะลงไปในนั้นด้วย ไม่ได้แยกด้วยซ้ำว่าเป็นส่วน UI หรือ Knowledge เมื่อจะมีการพัฒนาความรู้หรือตรรกะเพิ่มเติม คือ ต้องทำโปรแกรมใหม่นั่นเอง จะเติมความรู้และตรรกะลงไปเฉยๆ ไม่ได้ นอกจากนี้ยังไม่สามารถเชื่อมโยงความรู้ไปยังแขนงอื่นๆ ที่เกี่ยวข้องได้ง่ายๆ เว้นเสียแต่จะเขียนเป็นแบบ web service แต่ก็ต้องไปทำในระดับโปรแกรมใน service layer ไม่ใช่ระดับความรู้ - สรุป ontology นั้นพัฒนามาเพื่อใส่สมองให้กับคอมพิวเตอร์ในกลไกของเวบ ไม่ใช่ทำเพื่อนำเสนอข้อมูลให้มนุษย์อ่าน
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
1 ความคิดเห็น:
กรุณาอ้างที่มาของข้อความด้วยครับ เขา CC3.0 อยู่ครับ
แสดงความคิดเห็น