Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ТЕХНОЛОГІЇ МЕНЕДЖМЕНТУ ЗНАНЬ

.pdf
Скачиваний:
152
Добавлен:
07.02.2016
Размер:
3.02 Mб
Скачать

структури знань. Це дасть змогу мінімізувати час і затрати на розвиток та модернізацію системи в процесі її використання.

Онтологія як основа бази знань такої інтелектуальної системи розробляється з використанням інструментів редактора Protégé, і перша її версія була написана українською мовою. Але, оскільки переважна частина інформації отримується системою з мережі Інтернет, вирішено перекласти онтологію англійською мовою.

Далі будуть детальніше описані етапи процесу створення онтології з використанням інструментів Protégé-OWL як найгнучкішого та найпридатнішого засобу для розв’язування такого класу задач.

7.2.5. Створення онтології

Створення та збереження нового проекту Protégé -OWL

Для створення нового проекту необхідно увійти в середовище Protégé (запустити програму Protégé.ехе) та у відкритому вікні вибрати закладку “Create New Project”. Після цього у списку “Project Format”

вибрати тип створюваної онтології “OWL Files” та натиснути клавішу “Finish”. Для відкриття наявного проекту треба натиснути клавішу “Open Existing Project”, вибрати потрібний файл збереженої онтології та натиснути “OK”. Для швидкого відкриття нещодавно створеної або редагованої онтології є можливість її відкрити, скориставшись вікном

“Recently Accessed Projects” (рис. 7.9).

Рис. 7.9. Стартове вікно програми Protégé

Після цього відкривається головне вікно проекту, в якому безпосередньо відбувається створення та редагування онтології. Для збере-

231

ження нової онтології необхідно вибрати в головному меню File/Save Project As, після чого задати ім’я проекту в полі Project, вказавши повний шлях розміщення його на диску. При цьому автоматично створюються назви файлів класів та екземплярів. У разі внесення змін в наявний проект, для його збереження достатньо натиснути клавішу

на панелі інструментів або вибрати в меню File/Save Project.

Створення нових класів та присвоєння їм імен

У процесі створення нової онтології або відкриття наявної з’являється головне вікно проекту Protégé-OWL на закладці OWLClasses (рис. 7.10), де створюються та додаються нові класи і підкласи онтології. Для переходу в діалогові вікна введення властивостей, форм, об’єктів та метаданих треба скористатися відповідними закладками у верхній частині вікна.

Створення

Властивості Форми

Об’єкти

Метадані

класів

 

 

 

Вікно створення та

Коментар

редагування класу

 

Вікно ієрархії

Перелік класів властивостей

класу

Вікно умов

Вікно розділення класів

Рис. 7.10. Головне вікно редактора Protégé – створення класів

232

Закладка OWLClasses складається з двох частин. Перша – це вікно ієрархії класів (Subclass Relationship), де відображаються у вигляді дерева всі введені класи та підкласи онтології. Друга частина (Class Editor) містить вікна, в яких відображається інформація про вибраний клас або підклас онтології – назва, властивості, умови, коментарі.

Порожня онтологія містить лише один клас owl: Thing – цей клас відображає множину всіх об’єктів, оскільки всі наступні класи є його підкласами. Це системний клас, котрий встановлюється за замовчуванням і в процесі створення онтології не змінюється. Для додавання в онтологію нового підкласу у вікні ієрархії класів необхідно виділити наявний клас, і натиснути клавішу “Create Subclass” (рис. 7.11). При цьому створиться підклас до виділеного класу. У вікні введення назви класу, розміщеному в частині “Class Editor” (рис. 7.12) справа від ієрархії класів, змінюємо ім’я, встановлене за замовчуванням, на потрібне, наприклад, “Метал”. Нижче є можливість введення додаткового коментаря для цього класу.

Для введення класу одного рівня з вибраним, необхідно натиснути клавішу “Create sibling class”. Для видалення класу з ієрархії існує клавіша “Delete Class”. Однак перед видаленням необхідно вилучити будь-які об’єкти (екземпляри класу), котрі стосуються цього класу. Отже, після введення класу “Матеріалознавство” як основного для онтології матеріалів, використовуючи вищенаведені підходи, можна ввести всі її підкласи (рис. 7.13).

Дослідити виведену ієрархію

Створити підклас

 

(до вибраного класу)

Видалити

 

клас

Дослідити існуючі

Створити клас одного

 

зв'язки

рівня з вибраним

 

 

 

Рис. 7.11. Вікно ієрархії класів

233

Рис. 7.12. Вікно введення назви класу

Рис. 7.13. Ієрархія класів онтології матеріалів

Спростити процедуру створення класів можна за допомогою майстра, який дає змогу одночасно вводити декілька класів. Запускається майстер вибором у меню команд Tools/Quick OWL/Create multiply subclasses.

234

Коли створено декілька класів онтології, можна вказати, що вони розділені (disjoint), тобто об’єкти одного з них не можуть бути об’єктами іншого. Для цього існує вікно “Disjoints Widget” у правому нижньому куті закладки “OWLClasses”. У цьому вікні додаванням класів з ієрархії вибираються ті класи, які необхідно розділити.

OWL-властивості. Створення властивостей класів

Після введення нового класу в онтологію треба задати його властивості для того, щоб поняття предметної області були наповнені певним змістом і перебували в певних зв’язках один з одним. Існують два основні види властивостей: властивості об’єктів (зв’язують об’єкт з об’єктом) та властивості типів даних (зв’язують об’єкт зі значенням типу даних XML-схеми або rdf літералом). Мова OWL забезпечує також третій тип властивостей, які називаються властивостями анотацій. Їх використовують для додавання інформації до класів, екземплярів класів і властивостей об’єкт/тип даних. Приклади трьох типів властивостей подано на рис. 7.14.

має домішку

має питому вагу

використовується в

сталь

сірка сталь

7800 кг/м3

сталь

“будування літаків”

а

 

б

 

в

Рис. 7.14. Різні типи OWL властивостей

має більшу міцність

залізо

мідь

має меншу міцність

Рис. 7.15. Приклад інверсії властивостей

Так, на рис. 7.14, а властивість “має домішку” зв’язує об’єкт “сталь” класу “метали” з об’єктом “сірка” класу “неметали”; на рис. 7.14, б властивість “має питому вагу” зв’язує об’єкт “сталь” із числовим значенням “7 800 кг/м3”; а на рис. 7.14, в як додаткова інформація застосовується описова властивість “використовується в”, яка зв’язує клас “сталь” з текстовими даними, наприклад, “будування

235

літаків”. Створюючи нові властивості класу або об’єкта в Protégé треба вибрати відповідний їх тип (рис. 7.14).

Інверсія властивостей. Властивість кожного об’єкту може мати відповідну їй обернену властивість. Якщо якась властивість з’єднує об’єкт а з об’єктом b, тоді об’єкт b з об’єктом а буде зв’язувати обернена до неї властивість (рис. 7.15).

Характеристики OWL-властивостей

Зміст і значення властивостей можна конкретизувати використанням відповідних характеристик властивостей. У Protégé-OWL проекті виділяють такі властивості: функціональні, обернено-функціо- нальні, транзитивні та симетричні.

1.Функціональна властивість (особливість) деякого об’єкта використовується для встановлення зв’язку з не більш ніж одним іншим об’єктом або типом даних. За допомогою функціональних властивостей задаються характерні особливості об’єкта, що відрізняють його від інших. Якщо об’єкт пов’язаний однією функціональною властивістю з різними об’єктами або даними, тоді їх можна вважати однаковими, або такими самими. В іншому випадку це призведе до неузгодженості в базі знань, що не допустимо.

2.Обернено-функціональні властивості. Функціональні влас-

тивості також можуть бути оберненими. Тобто, якщо два окремі об’єкти зв’язані однією функціональною властивістю з деяким третім об’єктом, то можна стверджувати, що ці два об’єкти є ідентичними або однаковими.

3.Транзитивні властивості. Якщо властивість є транзитивною,

івона зв’язує деякий об’єкт а з об’єктом b, а об’єкт b, своєю чергою, зв’язаний такою самою властивістю з об’єктом с, тоді можна стверджувати, що об’єкт а зв’язаний цією властивістю з об’єктом с. Так, відомо, що залізо за питомою вагою важче за мідь, а мідь, своєю чергою, важча за алюміній. Звідси можна стверджувати, що залізо є важчим за алюміній (рис. 7.16).

важчий від важчий від

залізо

мідь

алюміній

 

 

важчий від

 

Рис. 7.16. Приклад застосування транзитивної властивості

236

Зауважимо, що обернена до транзитивної властивість також транзитивна. А також транзитивна властивість не може одночасно бути функціональною.

4. Симетричні властивості. Якщо об’єкт а пов’язаний з об’єктом b симетричною властивістю, тоді об’єкт b також зв’язаний з об’єктом а через таку саму властивість. Наприклад, залізо взаємодіє з сірчаною кислотою, але ми можемо сказати, що і сірчана кислота взаємодіє з залізом (рис. 7.17). У цьому разі властивість взаємодіє з” – симетрична.

взаємодіє з

залізо

сірчана

взаємодіє з

кислота

Рис. 7.17. Приклад застосування симетричної властивості

Створення властивостей і присвоєння їх класам

Для створення нової властивості використовується закладка Properties” головного вікна програми (рис. 7.18).

Як і попереднє, вікно створення властивостей складається з двох частин – Списку властивостей (Property Browser) та Редактора властивостей (Property Editor). У вікні Списку властивостей відображають усі створені властивості, а за допомогою клавіш керування, розташованих у верхній частині цього вікна, є можливість створювати нові (рис. 7.19).

Так, для додавання нової властивості в онтологію, залежно від її типу, необхідно натиснути відповідну клавішу, після чого у вікнах редактора властивостей ввести її назву, опис, коментар та діапазон можливих значень. Для вибору характеристики властивості (функціональна, обернено-функціональна, транзитивна, симетрична) треба поставити галочку навпроти відповідної характеристики в нижньому правому куті вікна. Зауважимо, що створюючи властивості типу даних, у ній не можна задати характеристики транзитивності, симетрії та інверсії. У разі необхідності введення інверсії для об’єктної властивості використовується вікно введення інверсії (рис. 7.20), в якому за допомогою керівних клавіш додаємо або видаляємо інверсію до вибраної властивості.

237

Список

властивостей НазваНазва властивості

Опис Коментар властивості

 

 

 

 

 

 

 

 

 

 

Класи, до

 

 

 

 

 

 

 

 

Діапазон

 

 

 

Створення

 

 

 

 

 

супервластивості

 

яких належить

 

значень

 

Характеристика

 

властивість

 

 

властивості

 

 

властивості

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 7.18. Вікно створення властивостей

Створити властивість анотації типу-даних Створити властивість анотації об’єктів

Вилучити властивість

Створити властивість типу-даних Створити об’єктну властивість

Створити підвластивість

Рис. 7.19. Клавіші керування властивостями

Рис. 7.20. Вікно інверсії властивостей

Присвоєння властивості певному класу відбувається у вікні класів (Domain U) на закладці “Properties”, в якому вказується перший клас, до якого належить ця властивість (рис. 7.18). Згідно з принципом

238

успадкування така властивість присвоюється всім підкласам цього класу. Натискаючи клавіші “Create named class...” або “Add named class(es)”, можна відповідно створити новий або додати наявний клас до списку. За допомогою клавіш “Remove selected class(es) from Domain” вибрані класи видалять зі списку.

Також для кожної властивості можна задати діапазон об’єктів або значень, з якими вона зв’язуватиме клас, до якого ця властивість належить. Так, у разі, якщо деякий клас має об’єктну властивість, то можна задати клас (або класи), об’єкти якого (яких) будуть зв’язані цією властивістю з об’єктами цього класу. Для цього використовується вікно діапазону значень (рис. 7.21, а). За допомогою керівних клавіш створюються нові або додаються з ієрархії класів ті класи, об’єкти яких будуть зв’язані такою властивістю. Так, наприклад, якщо ми в цьому вікні для деякої об’єктної властивості виберемо клас “Сталь”, то вона зв’язуватиме об’єкти класу, до якого вона належить, тільки з об’єктами класу “Сталь”. У разі властивостей типу даних у вікні діапазону значень вказують дозволені значення та їх тип, яких може набувати ця властивість. Наприклад, значення деякої властивості, що описує певний клас, має бути 10 000 або 0 (рис. 7.21, б).

а

б

 

Рис. 7.21. Застосування діапазону значень властивостей

В OWL властивості можуть мати свої підвластивості, так можна також будувати ієрархію властивостей (підвластивість до вибраної властивості створюється за допомогою відповідної клавіші керування (рис. 7.19)). Супервластивість до вибраної підвластивості виводиться у вікні “Super Properties” (рис. 7.18).

Властивості вибраному класу можна присвоювати також безпосередньо з вікна створення класів. Для цього у вікні переліку властивостей (Properties) вибраного класу (рис. 7.10) існують відповідні клавіші керування, натискаючи які, відкривають вікно редактора властивостей (Property Editor), де задають параметри властивості.

239

Опис та визначення класів

Після того, як було введено певну кількість класів та властивостей, можемо використовувати ці властивості для опису та визначення класів нашої онтології. Це робиться для встановлення зв’язків між об’єктами різних класів онтології.

В OWL властивості використовують для створення обмежень. Обмеження поділяють на три групи:

кванторні обмеження; числові обмеження;

обмеження типу “має_значення”.

Для початку розглянемо кванторні обмеження. Цей тип обмежень складається із квантора, властивості та деякого класу об’єктів. У кванторних обмеженнях використовуються два квантори – квантор існування ( ), котрий можна прочитати як “принаймні один” або “деякі”, та універсальний квантор ( ), котрий означає “тільки”. Наприклад, вираз типу “ Використовують Конструкційні сталі” складається із квантора існування ( ), властивості “Використовують” та класу об’єктів “Конструкційні сталі” і визначає набір об’єктів або клас, які зв’язані та можуть використовувати об’єкти із класу “Конструкційні сталі”. А вираз типу “ має_легаційний_елемент Чистийметал” визначає набір об’єктів або клас, всі елементи якого є зв’язаними з елементами класу “Чистий метал”. Цей вираз застосований, наприклад, до класу “Леговані сталі”, означає, що всі об’єкти цього класу мають легаційні елементи, які належать до класу “Чисті метали”.

Обмеження, присвоєні об’єктам деякого класу, виводяться у вікні умов (рис. 7.22), котре розташоване на закладці Створення класів

(OWL Classes) (рис. 7.10).

Вікно умов містить дві закладки – Введені Умови (Asserted) та Виведені Умови (Inferred). У вікні Asserted формується список усіх введених умов та обмежень для вибраного класу. Своєю чергою, список умов розділений на дві частини: Necessary – список умов, що належать саме вибраному класу онтології; Inferred – в цій частині виводяться умови, присвоєні надкласам (суперкласам) до вибраного, які згідно з принципом успадкування присвоюються й об’єктам цього класу. У правій частині рядка зі списку Inferred можна побачити, до об’єктів якого надкласу була присвоєна ця умова. Як і більшість вікон Protégé, вікно умов має клавіші керування, за допомогою яких можна

240