Protege Tutorial แนวทางการศึกษา protege บนพื้นฐานของ ProtegeOWL.

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
EEET0391 Electrical Engineering Lab.II Rev Introduction & PSPICE.
Advertisements

โดย คุณครูทานตะวัน เทียมถนอม กลุ่มสาระฯภาษาต่างประเทศ ชั้นมัธยมศึกษา ปีที่ 4 โรงเรียนอุบลรัตนราชกัญญาราชวิทยาลัย กรุงเทพมหานคร.
ปรับปรุงล่าสุด 28/08/53 โดย... ประภาศรี ฟุ้งศรีวิโรจน์ แผนกสนับสนุนฝ่ายทรัพยากร อิเล็กทรอนิกส์ทางการศึกษา บริษัท บุ๊ค โปรโมชั่น แอนด์
Lecturer: Kanjana Thongsanit
แผนกฝึกอบรมฐานข้อมูล บริษัท บุ๊ค โปรโมชั่น แอนด์ เซอร์วิส จำกัด
ASP:ACCESS Database.
ASP:ACCESS Database.
Enhanced Entity-Relationship Model
คู่มือการใช้งานโปรแกรม EndNote
ปรับปรุงล่าสุด 31/01/54 โดย... ประภาศรี ฟุ้งศรีวิโรจน์ แผนกสนับสนุนฝ่ายทรัพยากร อิเล็กทรอนิกส์ทางการศึกษา บริษัท บุ๊ค โปรโมชั่น แอนด์
Menu and Interactive with Powerpoint ให้นำเรื่อง Input /Output Technology มา จัดทำ การนำเสนอ โดยใช้หลักการ Menu and Interactive with powerpoint มาประยุกต์
Enhanced Entity-Relationship Model © Pearson Education Limited 1995, 2005.
การสร้างเหตุการณ์ click ให้กับปุ่มกด Button
Endnote V.X2 โปรแกรมจัดการบรรณานุกรม ประไพ จันทร์อินทร์ สำนักทรัพยากรการเรียนรู้คุณหญิงหลง อรรถกระวีสุนทร
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved JTextArea Constructors 
การวิเคราะห์และออกแบบระบบเชิงวัตถุ (OOAD)
ผัก. หน่อไม้ ฝรั่ง กะหล่ำ ปลี แค รอท กะหล่ำ ดอก.
Knowledge- Base Systems XML. Agents FRODO - เป็นการรวมกันของ - การพัฒนาการแก้ไขปัญหาความทรงจำ ขององค์กรและระบบเดิมขององค์กร ( ฐานข้อมูล ) ที่ทำแยกกัน.
ที่เมนู Start - All Programs - TURBO C++ V4.5 และ TURBO C++
Static Libraries ธวัชชัย เอี่ยมไพโรจน์. Static Libraries It is the simplest form of library. It is a collection of object files kept together in a ready-to-use.
การทำแผนที่ zoning Add vector เลือกแผนที่ zoning ตามพืชที่เราต้องการทำ จากนั้นกดที่ชั้นข้อมูล เลือก ชั้นข้อมูล rice57_C_edit.shp คลิกขวาเลือก properties.
บทที่ 1 เริ่มต้นสร้าง jQuery Mobile Page
Timed Math Quiz. โปรแกรมสุ่มคำนวณเลขแข่งกับ เวลา.
ระบบสารสนเทศภูมิศาสตร์ (GIS : Geographic Information System)
การออกแบบส่วนต่อประสาน
Karaoke (flash). 1. เข้าโปรแกรม Flash สร้าง Layer Sound พร้อมกับ Insert Frame ( ประมาณเฟรม 25 เพื่อจะได้เห็นเส้นเสียง )
MEE 231 Computer Programming สัปดาห์ที่ 7 ทดลองใช้คำสั่งภาษา C โปรแกรม Code::Blocks.
การพัฒนา Ontology 101 : คู่มือการสร้าง Ontology ชิ้นแรก Natalya F. Noy and Deborah L. McGuinness Stanford University, Stanford, CA,
บทเรียน Protege พื้นฐานของการเรียนรู้ ProtegeOWL บนเว็บไซต์ protege.
The Multiple Document Interface (MDI) การประสานเอกสาร หลายรูปแบบ.
หน้าต่างหลัก ของโปรแกรม Project Management เป็นโปรแกรมที่ ช่วยดูแล การ จัดการของงาน ต่างๆ ให้มี ความเป็น ระเบียบ และ ตรวจสอบการ ทำงานได้ง่าย ยิ่งขึ้น.
การพัฒนา Ontology 101 คู่มือการสร้าง First Ontology.
Hands-On: Semantic MediaWiki
Microsoft Excel เบื้องต้น
บทที่ 5 การสร้างแผนภาพความคิด
1. วิธีการ Set ค่าคอมพิวเตอร์ก่อนติดตั้ง
"วิธีวิเคราะห์แบบสอบถาม หรือแบบประเมิน ด้วยโปรแกรม SPSS"
Object and classes.
ขั้นตอนการติดตั้งโปรแกรม Visual Studio 2013 Express
Microsoft Visual Basic 2010
Introduction to VB2010 EXPRESS
Inheritance and Method Overriding
Introduction to Arduino UNO
ยินดีต้อนรับ.
Object-Oriented Programming Paradigm
เมื่อเข้าสู่โปรแกรมจะแสดงหน้าจอสำหรับตรวจสอบสิทธิผู้ปฏิบัติงาน รหัสที่ใช้ต้องเป็นรหัสนายทะเบียนหรือผู้ช่วยนายทะเบียน และต้องมีสิทธิในการใช้งานฐานข้อมูลทะเบียนราษฎร.
ประภาศรี ฟุ้งศรีวิโรจน์ แผนกสนับสนุนฝ่ายทรัพยากร
Object Roles and the Importance of Polymorphism
ขั้นตอนการร้องเรียน.
ศาลาว่าการกรุงเทพมหานคร
นายสำราญ สาราบรรณ์ รองอธิบดีกรมส่งเสริมการเกษตร วันที่ 1 กรกฏาคม 2560
ศาลาว่าการกรุงเทพมหานคร
สู่ความเป็นโรงเรียนวิถีพุทธ ปีที่ ๙
สมเด็จพระเทพรัตนราชสุดาฯ สยามบรมราชกุมารี (อพ.สธ.)
นายสำราญ สาราบรรณ์ รองอธิบดีกรมส่งเสริมการเกษตร วันที่ 1 กรกฏาคม 2560
การรัน-การใช้ IntelliSense-แก้ข้อผิดพลาด
Starting JAVA : JAVA PROGRAMMING (การ โปรแกรมภาษาจาวา) มัลลิกา เกลี้ยงเคล้า | SC1419.
Picture Viewer.
จาก Recommendation สู่การพัฒนาคุณภาพ
Inheritance Chapter 07.
การดำเนินงานเว็บไซต์สำนักงานพัฒนาชุมชนอำเภอ
วิธีลงประกาศบนเว็บ รร.
Installer Project Prawit Pimpisan Computer Science RERU.
Integrated Mathematics
สรุปผลการดำเนินงานประจำปี 2558 กองทุนหลักประกันสุขภาพ
Class Inheritance and Interfaces.
การประชุมสรุปงานสภาอาจารย์ วิทยาเขตปัตตานี ประจำปีงบประมาณ 2561
เพิ่มเรื่อง (post) ลงเวิร์ดเพรส
Introduction to Ontology
การเขียนแบบและออกแบบด้วยคอมพิวเตอร์
ใบสำเนางานนำเสนอ:

Protege Tutorial แนวทางการศึกษา protege บนพื้นฐานของ ProtegeOWL

Protege คือ - protege เป็น open-source ที่ใช้ฟรีไม่เสียค่าใช้จ่ายใดๆทั้งสิ้น เป็นแพลตฟอร์มที่ใช้ในการสร้าง แบบจำลองโดเมน -  Ontologies เป็นการแบ่งประเภทตามรายการต่างๆที่อยู่ใน ฐานข้อมูลตามทฤษฎีของ axiomatized ได้อย่างถูกต้อง

การติดตั้ง Protege - สามารถหา Download ได้ที่ Protege OWL editor จะถูกสร้างขึ้นระหว่างการติดตั้ง โปรแกรม Protege ในระหว่างการติดตั้ง นี้ ให้เลือก “Basic+OWL - ดูรายละเอียดเพิ่มเติมได้ที่ protege.stanford.edu/doc/owl/getting-started.html

Protege - วิธีการสร้างแบบจำลอง ontologies มีดังนี้ Frame-based OWL - แต่ละวิธีมีส่วนติดต่อผู้ใช้ของตัวเอง Protege frames : ช่วยให้ผู้ใช้สามารถสร้างและเติม ontologies ตามกรอบใน OKBC (Open Knowledge Base Connectivity Protocol) Protege OWL editor : เพื่อช่วยให้ผู้ใช้สร้าง ontology สำหรับ เว็บโดยเฉพาะอย่าง OWL -Classes -reasoning -Properties -Instances

การสร้าง OWL Ontology - E2: สร้าง OWL project ขึ้นมาใหม่ 1. เปิดโปรแกรม Pretege ขึ้นมา 2. ไปที่ File –> New Project –> OWL/RDF files –> Ontology URI ( Protege สร้างขึ้นใหม่ 4. บันทึก.owl เช่น pizza.owl

ชื่อของคลาสต่างๆ - ไปที่แท็ป OWL Classes - มี class ว่างหนึ่ง class เรียกว่า owl ซึ่งเป็น superclass ของ ทั้งหมด - E3: สร้าง subclasses Pizza, PizzaTopping and PizzaBase. ทั้งหมดจะเป็น subclasses ของ owl - การตั้งชื่อ - การตั้งชื่อต้องไม่มีตัวอักษรพิเศษ (no special naming convention) - ความมั่นคง (consistency)

Disjoint classes - E4: วิธีการดูว่า คลาส Pizza, คลาส PizzaTopping และ คลาส PizzaBase เป็น disjoint 1. เลือกที่คลาส Pizza 2. เลือกที่ปุ่ม “ add siblings” บนแถบของ Disjoints 3. เพิ่ม PizzaBase และ PizzaTopping 4. เลือก PizzaTopping 5. เพิ่ม Pizza และ PizzaBase ไปที่ Disjoints

E5: สร้างกลุ่มของคลาส - สร้าง ThinAndCrisyBase and DeepPanBase เป็น subclasses ของ PizzaBase และแต่ละ subclasses จะไม่เกี่ยวข้องกัน - เลือก PizzaBase คลิกขวาเลือก “createsubclasses” - ตัวช่วยในการสร้าง 2 classes ที่ไม่เกี่ยวข้องกัน - ประหยัดเวลาเมื่อมีความจำเป็นต้องสร้าง classes จำนวนมาก

E6 : สร้างคลาสย่อย บางส่วนของ PizzaTopping - เลือก PizzaTopping สร้าง subclaesses เป็น MeatTopping, VegetableTopping, CheeseTopping และ SeafoodTopping. ตรวจสอบให้แน่ใจว่า classes เหล่านี้ไม่มีสมาชิกร่วมกัน - เลือก class MeatTopping, เพิ่ม disjoint subclasses: SpicyBeefTopping, PepperoniTopping, SalamiTopping and HamTopping - เลือก VegetableTopping: เพิ่ม disjoint subclasses: TomatoTopping, OliveTopping, MushroomTopping, PepperTopping, OnionTopping, CaperTopping

E6 : การสร้างคลาสที่ไม่ เกี่ยวข้องกัน - เลือก PizzaTopping : สร้างคลาสย่อยชื่อว่า MeatTopping, VegetableTopping, CheeseTopping และ SeafoodTopping - เลือกที่คลาส MeatTopping : เพิ่มคลาสย่อย disjoint : SpicyBeefTopping, PepperoniTopping, SalamiTopping และ HamTopping - เลือกที่คลาส VegetableTopping : เพิ่มคลาสย่อย disjoint : TomatoTopping, OliveTopping, MushroomTopping,PepperTopping, OnionTopping และ CaperTopping

คุณสมบัติของ OWL - คุณสมบัติของ OWL แสดงความสัมพันธ์ระหว่างสองวัตถุ - มีสองคุณสมบัติหลักคือ : วัตถุเชื่อมโยงไปยังวัตถุ วัตถุเชื่อมโยงไปยัง XML Schema ประเภทข้อมูล หรือ RDF เป็นแบบ อักษร - คุณสมับติอื่นๆ : การบันทึกใช้เพื่อเพิ่มข้อมูลคำอธิบาย ของคลาสต่างๆ, บุคคลต่างๆ และคุณสมบัติต่างๆ

E7 : สร้างคุณสมบัติของ วัตถุ - เปลี่ยนไปที่แถบ “Properties” - คลิกที่ปุ่ม “Create Object Property” เพื่อใช้สร้างคุณสมบัติ ของวัตถุใหม่ - ทำการเปลี่ยนชื่อเป็น hasIngredient

E8 : การสร้างคุณสมบัติ ย่อย - เลือก hasIngredient property - เพิ่ม hasTopping และ hasBase as the subproperties

คุณสมบัติการผกผัน - คุณสมบัติของแต่ละวัตถุที่มีความสอดคล้องกันอาจมีคุณสมบัติ ผกผันกันก็ได้ - เช่น การเชื่อมวัตถุ A ไปยังวัตถุ B ดังนั้นทิศทางตรงข้ามกันคือ วัตถุ B ไปยังวัตถุ A

E9 : สร้างคุณสมบัติที่ ผกผัน - การสร้างคุณสมบัติจองวัตถุใหม่ เรียกว่า isIngredientOf คลิกที่ปุ่ม “Set inverse property” เลือก “hasIngredient” แล้วความสัมพันธ์ของการผกผันก็จะได้รับการตั้งค่า - เลือก hasBase สร้าง isBaseOf ให้เป็นคุณสมับติการผกผันของ hasBase - เลือก hasTopping สร้าง ToppingOf ให้เป็นคุณสมับติการผกผันของ hasTopping

คุณสมบัติการทำงาน - ถ้าคุณสมบัติของฟังก์ชัน, สำหรับบุคคลที่กำหนด การเกี่ยวของ กันของแต่ละบุคคลต้องผ่านคุณสมบัติที่กำหนด สำหรับการกำหนดโดเมนช่วงที่กำหนดต้องไม่ซ้ำกัน - คุณสมบัติของฟังก์ชันจะต้องมีเพียงค่าเดียว

คุณสมบัติการทำงานแบบ ผกผัน - ถ้าคุณสมบัติเป็นผกผันการทำงานยังคงสามารถทำงานได้ - สำหรับ range ที่กำหนด domain จะต้องไม่ซ้ำกัน

คุณสมบัติของฟังก์ชัน กับ ฟังก์ชันผกผัน

คุณสมบัติการถ่ายทอด - ถ้าคุณสมบัติเป็นการถ่ายทอดและคุณสมบัติที่เกี่ยวข้องจาก A ไปยัง B และนอกจากนี้ยังมีจาก B ไปยัง C เราสามารถอนุมาน ว่า A มีความสัมพันธ์กับ C ด้วยตามคุณสมบัติ P.

คุณสมบัติสมมาตร - ถ้า P มีคุณสมบัติการสมมาตร และ คุณสมบัตินั้นมีสัมพันธ์ จาก a ไป b แล้ว b จะมีความสัมพันธ์กับ a โดยคุณสมบัติของ P

E10 : ตรวจคุณสมบัติการ ถ่ายทอด hasIngredient - การเลือกคุณสมบัติที่ hasIngredient - ทำเครื่องหมายที่ช่อง tick box - การเลือกคุณสมบัติที่ isIngredientOf ตรวจสอบให้แน่ใจว่า tick box เป็น ticked

E11 : ตรวจคุณสมบัติการ ทำงานของ hasBase - เลือก has Base property - คลิกเลือกที่ “functional” - OWL-DL ไม่อนุญาติให้ datatype มีคุณสมบัติของการถ่ายทอด การสมมาตร หรือ คุณสมบัติการผกผัน

คุณสมบัติของ domains และ ranges - คุณสมบัติของการเชื่อมโยงจากโดเมนไปยังช่วง - OWL ใช้ domains และ ranges เป็นหลักการในการให้เหตุผล

E12 : ระบุช่วงของ hasTopping - เลือก hasTopping 1. กดปุ่ม range 2. เลือก PizzaTopping 3. กดปุ่ม OK 4. PizzaTopping จะปรากฏในรายการช่วง 5. เมื่อหลาย classes เพิ่มช่วงเข้าไป จะแสดงให้เห็นจำนวน ของ classes ทั้งหมด

E13: Specify Pizza as the domain of the hasTopping property - เลือกคุณสมบัติ hasTopping 1. กดปุ่ม add domain 2. เลือก Pizza 3. กด OK 4.Pizza จะปรากฏในรายชื่อโดเมน - เมื่อหลาย classes เพิ่มช่วงเข้าไป จะแสดงให้เห็นจำนวนของ classes ทั้งหมด

E14 : ระบุโดเมนและช่วง สำหรับคุณสมบัติ isToppingOf - เลือก isToppingOf property - การตั้งค่าโดเมนของคุณสมบัติ isToppingOf เพื่อ PizzaTopping - ตั้งค่าช่วงของคุณสมบัติ isToppingOf เพื่อ Pizza.

E15: ระบุโดเมนและช่วงสำหรับ คุณสมบัติ hasBase และคุณสมบัติ การผกผันของ isBaseOf - Select the hasBase property - เลือก hasBase property ระบุโดเมน เป็น Pizza ระบุช่วงเป็น PizzaBase - เลือก isBaseOf property ระบุโดเมนเป็น PizzaBase ระบุช่วงเป็น Pizza

ข้อจำกัด ของการให้บริการ - OWL ใช้คุณสมบัติในการสร้างข้อจำกัด - ข้อจำกัดจะถูกใช้เพื่อจำกัดสิทธิที่อยู่ในคลาส - 3 ข้อ จำกัด : - ข้อจำกัดของ ตัวบ่งปริมาณ - ตัวบ่งปริมาณสำหรับตัวมี จ ริง - ตัวบ่งปริมาณต้องเป็นสากล - ข้อจำกัดจำนวนสมาชิกในเซ็ต - ข้อจำกัด hasValue

E16 : เพิ่มข้อจำกัด ไปที่ Pizza - เพิ่มข้อจำกัดให้กับ Pizza ที่ระบุว่าจะต้องมี PizzaBase - เลือก Pizza - เลือก header เพื่อสร้างเงื่อนไขที่จำเป็น - เลือกสร้างตัวช่วยสร้างข้อ จำกัด - เลือก hasBase เป็นคุณสมบัติที่ถูกจำกัด - เลือก someValueFrom เป็นข้อจำกัด - ใส่ลงใน PizzaBase

เพิ่มข้อจำกัดให้ Pizza

E18 : การสร้างชนิดที่ แตกต่างจาก Pizzas - สร้างคลาสย่อยของ PIZZA ที่เรียกว่า NamedPizza และสร้าง คลาสย่อยของ NamedPizza ที่เรียกว่า MargheritaPizza - เพิ่มความคิดเห็น MargheritaPizza : พิซซ่าที่มีเพียง Mozarella และรสชาติมะเขือเทศ

E19 : ข้อจำกัด การเพิ่ม MargheritaPizza - ในการระบุว่าเป็น MargheritaPizza ควรจะมี MozzarellaTopping อย่างน้อย 1 อย่าง 1. เลือก MargheritaPizza 2. ไปที่ “Asserted Conditions”, สร้างข้อจำกัดใหม่ 3. เลือก someValueFrom 4. เลือก hasTopping เป็นคุณสมบัติที่จะถูกจำกัด Enter ใส่ MozzarellaTopping เป็นฟิลเลอร์ 5. กดปุ่ม OK

E20 : การสร้าง AmericanPizza - สร้าง AmericanPizza with toppings of pepperoni, mozzarella and tomato. - การปรับเปลี่ยนรายละเอียดของ MargheritaPizza - เลือก MargheritaPizza เลือกสร้าง clone เพิ่มข้อ จำกัด เพิ่มเติมเพื่อ AmericanaPizza เพิ่ม PepperoniTopping กด OK.

E22 : การสร้าง SohoPizza AmericanHotPizza - AmericanHotPizza เกือบจะเหมือนกับ AmericanaPizza แต่มี JalapenoPepperTopping - SohoPizza เกือบเหมือน MargheritaPizza แต่มี OliveTopping และ ParmezanTopping เพิ่มเติม

E23: Make subclasses of NamedPizza disjoint from each other - เลือก MargheritaPizza - กดปุ่ม “add all siblings” บน Disjoints widget เพื่อทำให้ Pizzas แยกออกจากกันและกัน

การใช้ Reasoner - ontology อธิบายไว้ใน OWL - DL สามารถประมวลผลโดย Reasoner - ไปที่ owl—preference, เพื่อให้แน่ใจว่า OWL-DL ถูกเลือก - บริการหลักที่นำเสนอโดย Reasoner คือการทดสอบหรือหนึ่ง คลาสไม่เป็นคลาสย่อย ของคลาสอื่น - โดยการดำเนินการทดสอบดังกล่าวในทุกคลาสนั้นเป็นไปได้ สำหรับ Reasoner เพื่อคำนวณ ontology ลำดับชั้นของคลาสที่ อ้างถึง - บริการการให้เหตุผลอีกประการหนึ่งคือตรวจสอบความ สอดคล้อง -- เพื่อตรวจสอบหรือไม่ก็เป็นไปได้สำหรับการเรียน ที่จะมีกรณีใด ๆ - คลาส จะถือว่าจะไม่สอดคล้องกันถ้ามันไม่มีบางกรณี

การใช้ Racer - เพื่อให้เหตุผลที่มากกว่า ontology ใน Protege – OWL ซึ่ง เป็นไปตามมาตรฐาน DIG Reasoner ควรจะติดตั้งและเริ่มต้น - ในที่นี้ เราใช้ Racer - สามารถดาวน์โหลดที่ : systems.com/products/download/index.phtml - ดับเบิ้ลคลิกที่ RacerPro เพื่อเริ่มการใช้งาน Racer

การขอร้อง Reasoner - ต้องเริ่มต้นที่ Racer ที่ ontology สามารถส่งไปยัง Reasoner โดยอัตโนมัติคำนวณการจำแนกลำดับชั้นและยังตรวจสอบความ สอดคล้องเชิงตรรกะของ ontology - ใน Protege, ลำดับชั้นที่สร้างด้วยตนเองจะเรียกว่าลำดับชั้นของ การยืนยัน (asserted hierarchy) ที่คำนวณโดยอัตโนมัติโดย Reasoner จะเรียกว่าลำดับชั้นของอนุมาน (inferred hierarchy) - ไปที่ OWL – classify taxonomy – การเรียก reasoner - ถ้าชั้นได้รับการจัดประเภทรายการใหม่แล้วชื่อชั้นจะปรากฏ ในสีฟ้าในลำดับชั้นอ้างถึง - ไปที่ OWL – Check consistency – เพื่อเรียก Reasoner - ถ้าชั้นได้รับการพบที่จะปีนเกลียว, ไอคอนมันจะเป็นวงกลมสี แดง การคำนวณลำดับชั้นเรียนอ้างถึงเป็นที่รู้จักกันจำแนก ontology

Invoke the reasoner

E24: classes ที่ไม่สอดคล้อง กัน - เพื่อแสดงถึงการใช้งานของ Reasoner ในการตรวจสอบความไม่ สอดคล้องกันใน ontology ที่เราจะสร้าง class ProbeInconsistentTopping - ซึ่งเป็น subclass ของ CheeseTopping - เลือก ProbeInconsistentTopping ไปที่ยืนยันที่จะเพิ่ม class ที่มีชื่อให้เลือก VegetableTopping แล้วกดตกลง - ไปที่ OWL – check consistency

E25 : การแบ่ง ontology อีก ครั้ง - ทำเพื่อให้ ProbeInconsistentTopping ไม่สอดคล้องกัน

E26: ลบคำสั่งที่ผิดพลาด - ระหว่าง CheeseTopping และ VegetableTopping เพื่อเห็นว่า อะไรเกิดขึ้น - เลือก CheeseTopping - ไปที่ disjoint ส่วนหนึ่ง - เลือก VegetableTopping, คลิกขวาและ “ ลบแถวที่เลือก ” - จัด taxonomy - ความไม่สอดคล้องกันนั้นไม่มีอยู่แล้ว

E27: แก้ไข Ontology - ด้วยการทำให้ CheeseTopping และ VegetableTopping แยก ออกจากกันและกัน

แหล่งข้อมูล - Protege Ontology Libraries - _Library - Protege tutorial Protege Website