![](/user_photo/2706_HbeT2.jpg)
- •В.В. Литвин технології менеджменту знань
- •Розділ 1 основні поняття менеджменту знань
- •1.1. Основні означення менеджменту знань
- •1.1.1. Структура менеджменту знань
- •Маркетинґ Проектування Підготовка виробництва Виробництво Збут
- •1.1.2. Формування знань
- •1.1.3. Введення даних
- •1.1.4. Адміністрування
- •1.1.5. Мотивація
- •1.1.6. Особливості впровадження мз
- •1.2. Менеджмент знань
- •1.3. Базові поняття менеджменту знань
- •1.3.1. Видобування знань
- •1.3.2. Системи пізнання
- •1.3.3. Організація доступу до знань
- •1.3.4. Інновації в області автоматизації
- •1.3.5. Менеджмент знань та інформації
- •1.3.6. Менеджмент знань та Інтернет
- •1.4. Онтологічний інжиніринг
- •1.4.1. Системи керування знаннями
- •1.4.2. Онтологія
- •1.5. Висновки
- •Запитання для повторення та контролю знань
- •Розділ 2 теоретичні аспекти менеджменту та інженерії знань
- •2.1. Поле знань
- •2.1.1. Мова опису поля знань
- •2.1.2. Семіотична модель поля знань
- •2.1.3. “Піраміда” знань
- •2.2. Стратегії одержання знань
- •2.3. Теоретичні аспекти видобування знань
- •2.3.1. Психологічний аспект
- •2.3.2. Лінгвістичний аспект
- •2.3.3. Гносеологічний аспект видобування знань
- •2.4. Теоретичні аспекти структурування знань
- •2.4.1. Історична довідка
- •2.4.2. Ієрархічний підхід
- •2.4.3. Традиційні методології структуризації
- •2.4.4. Об’єктно-структурний підхід (осп)
- •Стратифікація знань предметної області
- •Матриця об’єктно-структурного аналізу
- •Запитання для повторення та контролю знань
- •Розділ 3 технології менеджменту та інженерії знань
- •3.1. Класифікація методів практичного видобування знань
- •3.2. Комунікативні методи
- •3.2.1. Пасивні методи
- •Порівняльні характеристики пасивних методів видобування знань
- •3.2.2. Активні індивідуальні методи
- •Порівняльні характеристики активних індивідуальних методів видобування
- •3.2.3. Активні групові методи
- •3.3. Текстологічні методи
- •3.3.1. Методи структурування
- •Дані концептуалізації
- •3.3.2. Еволюція систем одержання знань
- •Запитання для повторення та контролю знань
- •Завдання для самостійного розв’язування
- •Розділ 4 прикладні аспекти менеджменту та інженерії знань
- •4.1. Латентні структури знань і психосемантика
- •4.1.1. Семантичні простори і психологічне градуювання
- •Опис зв’язку між поняттями
- •4.1.2. Методи багатовимірного градуювання
- •4.1.3. Використання метафор для виявлення “прихованих” структур знань
- •4.2. Метод репертуарних решіток
- •4.2.1. Основні поняття
- •4.2.2. Методи виявлення конструктів. Метод мінімального контексту
- •4.2.3. Аналіз репертуарних решіток
- •4.2.4. Автоматизовані методи
- •4.3. Керування знаннями
- •4.3.1. Що таке “керування знаннями”?
- •4.3.2. Керування знаннями і корпоративна пам’ять
- •4.3.3. Системи omis
- •4.3.4. Особливості розроблення омis
- •4.4. Візуальне проектування баз знань як інструмент пізнання
- •4.4.1. Від понятійних карт до семантичних мереж
- •4.4.2. База знань як пізнавальний інструмент
- •4.5. Проектування гіпермедіа бд і адаптивних навчальних систем
- •4.5.1. Гіпертекстові системи
- •4.5.2. Від мультимедіа до гіпермедіа
- •4.5.3. На шляху до адаптивних навчальних систем
- •Запитання для повторення та контролю знань
- •Розділ 5 Класифікація даних та знань
- •5.1. Важливість правильної класифікації
- •5.1.1. Класифікація й об’єктно-орієнтовне проектування
- •5.1.2. Труднощі класифікації
- •5.2. Ідентифікація класів і об’єктів
- •5.2.1. Класичний і сучасний підходи
- •5.2.2. Об’єктно-орієнтований аналіз
- •5.3. Ключові абстракції й механізми
- •5.3.1. Ключові абстракції
- •5.3.2. Ідентифікація механізмів
- •5.4. Висновки
- •Запитання для повторення та контролю знань
- •Розділ 6 онтології й онтологічні системи
- •6.1. Поняття онтології
- •6.2. Моделі онтології й онтологічної системи
- •Класифікація моделей онтології
- •6.3. Методології створення і “життєвий цикл”онтології
- •6.4. Мови опису онтологій
- •6.4.1. Види owl
- •6.4.2. Структура онтологій
- •Запитання для повторення та контролю знань
- •Розділ 7 Програмні засоби побудови онтологій
- •7.1. Онтологія як засіб формалізації та алгоритмізації знань в інтелектуальній системі
- •7.1.1. Аналіз підходів до навчання онтологій
- •7.1.2. Загальні принципи проектування онтологій
- •7.1.3. Формати та стандарти подання інформації
- •7.1.4. Засоби для створення онтології
- •7.2. Технологія розроблення онтологій в редакторі Protégé
- •7.2.1. Еволюція Protégé
- •7.2.2. Protégé-owl. Мова Web онтологій owl
- •7.2.3. Основні терміни та поняття у Protégé-owl
- •Терміни та їх синоніми
- •7.2.4. Методика розроблення онтології засобами Protégé
- •Створення й експлуатація онтології
- •7.2.5. Створення онтології
- •Запитання для повторення та контролю знань
- •Завдання для самостійного розв’язування
- •Література
- •Литвин Василь Володимирович технології менеджменту знань
- •V lp.Com.Ua, ел. Пошта: vmr@vlp.Com.Ua
Створення й експлуатація онтології
Сьогодні у світі гостро стоїть питання створення інтелектуальних систем в певних галузях науки та промисловості, які могли б значною мірою спростити інженерам та науковцям пошук і доступ до величезних об’ємів інформації. Багато наявних онтологій призначені для використання у промисловості у складі інтелектуальних систем, функцією яких є прийняття рішень під час вирішення конкретних завдань. Як приклад можна навести побудову та використання онтології у складі системи керування знаннями в металопромисловості в Тайвані. Ця онтологія використовується в системі керування знаннями на етапі маніпулювання і підтримки задачі керування та пошуку. Однак вона охоплює лише певну частину області матеріалознавства – металургію, а також не забезпечує повного подання властивостей матеріалів, хоча достатньо в повній мірі містить знання про методи та технології їх виготовлення. Існує мало універсальних інтелектуальних систем, онтологія яких охоплювала б всю предметну область науки, в якій працює ця система, а в наукових дослідженнях треба мати якнайповнішу інформацію про об’єкт досліджень. Тому інтелектуальна система має забезпечити користувачу вичерпну інформацію, при цьому необхідно передбачити своєчасне поновлення бази знань новими знаннями.
Розроблена онтологія слугуватиме ядром бази знань для інтелектуальної системи, яка забезпечуватиме пошук та семантичне розпізнавання інформації, що надходить, зокрема з мережі Інтернет, нагромадження і класифікацію отриманої інформації та її використання в наукових дослідженнях. Використання такої системи в поєднанні з можливостями Інтернету дасть змогу науковцям та інженерам з певної ПО різних наукових установ мати доступ до інформації, здійснювати швидкий та ефективний пошук і отримувати експертні висновки від інтелектуальної системи на основі запитів. Особливістю бази знань розроблюваної інтелектуальної системи є можливість динамічного наповнення її новими знаннями та наявність алгоритмів оптимізації структури знань. Це дасть змогу мінімізувати час і затрати на розвиток та модернізацію системи в процесі її використання.
Онтологія як основа бази знань такої інтелектуальної системи розробляється з використанням інструментів редактора 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é
Після
цього відкривається головне вікно
проекту, в якому безпосередньо
відбувається створення та редагування
онтології. Для збереження нової
онтології необхідно вибрати в головному
меню File/Save Project As, після чого задати ім’я
проекту в полі Project, вказавши повний
шлях розміщення його на диску. При цьому
автоматично створюються назви файлів
класів та екземплярів. У разі внесення
змін в наявний проект, для його збереження
достатньо натиснути клавішу
на панелі інструментів або вибрати в
меню File/Save Project.
Створення нових класів та присвоєння їм імен
У процесі створення нової онтології або відкриття наявної з’являється головне вікно проекту Protégé-OWL на закладці OWLClasses (рис. 7.10), де створюються та додаються нові класи і підкласи онтології. Для переходу в діалогові вікна введення властивостей, форм, об’єктів та метаданих треба скористатися відповідними закладками у верхній частині вікна.
Рис. 7.10. Головне вікно редактора Protégé – створення класів
Закладка OWLClasses складається з двох частин. Перша – це вікно ієрархії класів (Subclass Relationship), де відображаються у вигляді дерева всі введені класи та підкласи онтології. Друга частина (Class Editor) містить вікна, в яких відображається інформація про вибраний клас або підклас онтології – назва, властивості, умови, коментарі.
Порожня онтологія містить лише один клас owl: Thing – цей клас відображає множину всіх об’єктів, оскільки всі наступні класи є його підкласами. Це системний клас, котрий встановлюється за замовчуванням і в процесі створення онтології не змінюється. Для додавання в онтологію нового підкласу у вікні ієрархії класів необхідно виділити наявний клас, і натиснути клавішу “Create Subclass” (рис. 7.11). При цьому створиться підклас до виділеного класу. У вікні введення назви класу, розміщеному в частині “Class Editor” (рис. 7.12) справа від ієрархії класів, змінюємо ім’я, встановлене за замовчуванням, на потрібне, наприклад, “Метал”. Нижче є можливість введення додаткового коментаря для цього класу.
Для введення класу одного рівня з вибраним, необхідно натиснути клавішу “Create sibling class”. Для видалення класу з ієрархії існує клавіша “Delete Class”. Однак перед видаленням необхідно вилучити будь-які об’єкти (екземпляри класу), котрі стосуються цього класу. Отже, після введення класу “Матеріалознавство” як основного для онтології матеріалів, використовуючи вищенаведені підходи, можна ввести всі її підкласи (рис. 7.13).
Рис. 7.11. Вікно ієрархії класів
Рис. 7.12. Вікно введення назви класу
Рис. 7.13. Ієрархія класів онтології матеріалів
Спростити процедуру створення класів можна за допомогою майстра, який дає змогу одночасно вводити декілька класів. Запускається майстер вибором у меню команд Tools/Quick OWL/Create multiply subclasses.
Коли створено декілька класів онтології, можна вказати, що вони розділені (disjoint), тобто об’єкти одного з них не можуть бути об’єктами іншого. Для цього існує вікно “Disjoints Widget” у правому нижньому куті закладки “OWLClasses”. У цьому вікні додаванням класів з ієрархії вибираються ті класи, які необхідно розділити.
OWL-властивості. Створення властивостей класів
Після введення нового класу в онтологію треба задати його властивості для того, щоб поняття предметної області були наповнені певним змістом і перебували в певних зв’язках один з одним. Існують два основні види властивостей: властивості об’єктів (зв’язують об’єкт з об’єктом) та властивості типів даних (зв’язують об’єкт зі значенням типу даних XML-схеми або rdf літералом). Мова OWL забезпечує також третій тип властивостей, які називаються властивостями анотацій. Їх використовують для додавання інформації до класів, екземплярів класів і властивостей об’єкт/тип даних. Приклади трьох типів властивостей подано на рис. 7.14.
а б в
Рис. 7.14. Різні типи OWL властивостей
Рис. 7.15. Приклад інверсії властивостей
Так, на рис. 7.14, а властивість “має домішку” зв’язує об’єкт “сталь” класу “метали” з об’єктом “сірка” класу “неметали”; на рис. 7.14, б властивість “має питому вагу” зв’язує об’єкт “сталь” із числовим значенням “7 800 кг/м3”; а на рис. 7.14, в як додаткова інформація застосовується описова властивість “використовується в”, яка зв’язує клас “сталь” з текстовими даними, наприклад, “будування літаків”. Створюючи нові властивості класу або об’єкта в Protégé треба вибрати відповідний їх тип (рис. 7.14).
Інверсія властивостей. Властивість кожного об’єкту може мати відповідну їй обернену властивість. Якщо якась властивість з’єднує об’єкт а з об’єктом b, тоді об’єкт b з об’єктом а буде зв’язувати обернена до неї властивість (рис. 7.15).
Характеристики OWL-властивостей
Зміст і значення властивостей можна конкретизувати використанням відповідних характеристик властивостей. У Protégé-OWL проекті виділяють такі властивості: функціональні, обернено-функціональні, транзитивні та симетричні.
1. Функціональна властивість (особливість) деякого об’єкта використовується для встановлення зв’язку з не більш ніж одним іншим об’єктом або типом даних. За допомогою функціональних властивостей задаються характерні особливості об’єкта, що відрізняють його від інших. Якщо об’єкт пов’язаний однією функціональною властивістю з різними об’єктами або даними, тоді їх можна вважати однаковими, або такими самими. В іншому випадку це призведе до неузгодженості в базі знань, що не допустимо.
2. Обернено-функціональні властивості. Функціональні властивості також можуть бути оберненими. Тобто, якщо два окремі об’єкти зв’язані однією функціональною властивістю з деяким третім об’єктом, то можна стверджувати, що ці два об’єкти є ідентичними або однаковими.
3. Транзитивні властивості. Якщо властивість є транзитивною, і вона зв’язує деякий об’єкт а з об’єктом b, а об’єкт b, своєю чергою, зв’язаний такою самою властивістю з об’єктом с, тоді можна стверджувати, що об’єкт а зв’язаний цією властивістю з об’єктом с. Так, відомо, що залізо за питомою вагою важче за мідь, а мідь, своєю чергою, важча за алюміній. Звідси можна стверджувати, що залізо є важчим за алюміній (рис. 7.16).
Рис. 7.16. Приклад застосування транзитивної властивості
Зауважимо, що обернена до транзитивної властивість також транзитивна. А також транзитивна властивість не може одночасно бути функціональною.
4. Симетричні властивості. Якщо об’єкт а пов’язаний з об’єктом b симетричною властивістю, тоді об’єкт b також зв’язаний з об’єктом а через таку саму властивість. Наприклад, залізо взаємодіє з сірчаною кислотою, але ми можемо сказати, що і сірчана кислота взаємодіє з залізом (рис. 7.17). У цьому разі властивість “взаємодіє з” – симетрична.
Рис. 7.17. Приклад застосування симетричної властивості
Створення властивостей і присвоєння їх класам
Для створення нової властивості використовується закладка “Properties” головного вікна програми (рис. 7.18).
Як і попереднє, вікно створення властивостей складається з двох частин – Списку властивостей (Property Browser) та Редактора властивостей (Property Editor). У вікні Списку властивостей відображають усі створені властивості, а за допомогою клавіш керування, розташованих у верхній частині цього вікна, є можливість створювати нові (рис. 7.19).
Так, для додавання нової властивості в онтологію, залежно від її типу, необхідно натиснути відповідну клавішу, після чого у вікнах редактора властивостей ввести її назву, опис, коментар та діапазон можливих значень. Для вибору характеристики властивості (функціональна, обернено-функціональна, транзитивна, симетрична) треба поставити галочку навпроти відповідної характеристики в нижньому правому куті вікна. Зауважимо, що створюючи властивості типу даних, у ній не можна задати характеристики транзитивності, симетрії та інверсії. У разі необхідності введення інверсії для об’єктної властивості використовується вікно введення інверсії (рис. 7.20), в якому за допомогою керівних клавіш додаємо або видаляємо інверсію до вибраної властивості.
Рис. 7.18. Вікно створення властивостей
Рис. 7.19. Клавіші керування властивостями
Рис. 7.20. Вікно інверсії властивостей
Присвоєння властивості певному класу відбувається у вікні класів (Domain U) на закладці “Properties”, в якому вказується перший клас, до якого належить ця властивість (рис. 7.18). Згідно з принципом успадкування така властивість присвоюється всім підкласам цього класу. Натискаючи клавіші “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), де задають параметри властивості.
Опис та визначення класів
Після того, як було введено певну кількість класів та властивостей, можемо використовувати ці властивості для опису та визначення класів нашої онтології. Це робиться для встановлення зв’язків між об’єктами різних класів онтології.
В OWL властивості використовують для створення обмежень. Обмеження поділяють на три групи:
кванторні обмеження;
числові обмеження;
обмеження типу “має_значення”.
Для початку розглянемо кванторні обмеження. Цей тип обмежень складається із квантора, властивості та деякого класу об’єктів. У кванторних обмеженнях використовуються два квантори – квантор існування (), котрий можна прочитати як “принаймні один” або “деякі”, та універсальний квантор (), котрий означає “тільки”. Наприклад, вираз типу “ Використовують Конструкційні сталі” складається із квантора існування (), властивості “Використовують” та класу об’єктів “Конструкційні сталі” і визначає набір об’єктів або клас, які зв’язані та можуть використовувати об’єкти із класу “Конструкційні сталі”. А вираз типу “ має_легаційний_елемент Чистийметал” визначає набір об’єктів або клас, всі елементи якого є зв’язаними з елементами класу “Чистий метал”. Цей вираз застосований, наприклад, до класу “Леговані сталі”, означає, що всі об’єкти цього класу мають легаційні елементи, які належать до класу “Чисті метали”.
Обмеження, присвоєні об’єктам деякого класу, виводяться у вікні умов (рис. 7.22), котре розташоване на закладці Створення класів (OWL Classes) (рис. 7.10).
Вікно умов містить дві закладки – Введені Умови (Asserted) та Виведені Умови (Inferred). У вікні Asserted формується список усіх введених умов та обмежень для вибраного класу. Своєю чергою, список умов розділений на дві частини: Necessary – список умов, що належать саме вибраному класу онтології; Inferred – в цій частині виводяться умови, присвоєні надкласам (суперкласам) до вибраного, які згідно з принципом успадкування присвоюються й об’єктам цього класу. У правій частині рядка зі списку Inferred можна побачити, до об’єктів якого надкласу була присвоєна ця умова. Як і більшість вікон Protégé, вікно умов має клавіші керування, за допомогою яких можна вводити вирази умов. Введення умов можливо здійснити двома способами: перший – натиснувши на кнопку введення за допомогою рядкового редактора “Create New Expression”. У цьому разі весь вираз умови необхідно буде вводити вручну, що в більшості випадків є незручним. Другий спосіб введення умови дає змогу зробити це в окремому вікні, де є можливість вибрати потрібний квантор, властивість зі списку властивостей, потрібний клас об’єктів та додаткові символи, необхідні для формування виразу.
Рис. 7.22. Вікно умов (введення та редагування обмежень)
Для введення обмеження для деякого класу об’єктів в окремому вікні треба у вікні ієрархії класів виділити потрібний клас, після чого у вікні умов натиснути клавішу “Create Restriction...”. Далі у вікні (рис. 7.22) у списку властивостей виділити потрібну властивість (наприклад, “має_Домішку”), а у сусідньому віконечку – вибрати тип обмеження (наприклад, someValuesFrom). Після цього набрати в полі побудови назву класу, об’єкти якого будуть зв’язані вибраною властивістю (наприклад, “Неметал”), або натиснути клавішу “Insert class” на панелі створення виразу і вибрати потрібний клас з ієрархії. За допомогою панелі створення виразу є можливість створювати вирази, що містять логічні операції (об’єднання, перетин, логічне заперечення), булеві оператори та дужки. Після натискання клавіші “OK” вікно закриється і сформований вираз обмеження автоматично додасться до списку умов (рис. 7.23).
Рис. 7.23. Вікно введення виразу обмежень
Рис. 7.24. Приклад застосування числового обмеження для класу“Чисті метали”
Числові обмеження. В OWL є можливість описати клас об’єктів, що мають не менш ніж, не більш ніж або чітко визначену кількість зв’язків між іншими об’єктами або даними. Обмеження, за допомогою яких встановлюють такі умови, називаються числовими (Cardinality restrictions). Тобто для певної властивості можна задати мінімальне, максимальне або визначене число зв’язків, якими вона буде зв’язана з об’єктами деякого класу. Наприклад, за допомогою такої умови можна задати відсотковий вміст та максимальну кількість домішок у чистому металі, за якої цей метал ще можна вважати чистим (рис. 7.24). Принцип створення таких обмежень аналогічний до попереднього, тільки у цьому разі для опису використовують типи “Cardinality”, “min Cardinality” і “max Cardinality”, а в полі побудови виразу вказується певне числове значення.
Обмеження типу “має значення”. Ці обмеження позначаються символом і визначають клас або набір об’єктів, що, використовуючи деяку властивість, мають принаймні один зв’язок з конкретним об’єктом. Наприклад, вираз “має_Домішку з Сірка” (де “Сірка” – об’єкт класу “Неметали”) визначає набір об’єктів (наприклад, металів), які можуть мати домішку саме сірки. Тобто, якщо попередніми обмеженнями ми зв’язували за допомогою властивостей один набір об’єктів (клас) з іншим набором (класом) або деякими даними, то в цьому разі ми вказуємо конкретний об’єкт, який безпосередньо пов’язаний такою властивістю з деяким класом або набором об’єктів.
Механізм міркувань
Однією з важливих особливостей використання мови OWL для побудови онтологій є можливість опрацьовувати їх за допомогою механізму міркувань (reasoner). Під опрацьовуванням онтології в такому разі розуміється перевірка правильності присвоєння підкласів певним класам, внаслідок чого автоматично формується виведена ієрархія класів онтології. У Protégé-OWL ієрархія класів, внесена вручну, називається заявленою ієрархією, а вирахована механізмом міркувань – виведеною ієрархією. Також за допомогою механізму міркувань перевіряється логічна узгодженість (несуперечність) класів і підкласів онтології. На основі введених умов для кожного класу механізм міркувань дає можливість встановити, чи певні об’єкти (екземпляри) можуть належати вказаним класам.
Використання механізму міркувань є особливо зручним у роботі з громіздкими онтологіями (декілька тисяч класів). Виникає реальна необхідність автоматично визначати і відстежовувати взаємозв’язки в ієрархії “клас – суперклас”. У таких випадках без використання механізму міркування надзвичайно важко підтримувати онтологію великих розмірів логічно узгодженою. Цей механізм забезпечує відповідність створеної онтології іншим онтологіям та прикладним програмам, а також мінімізує вплив людських помилок.
Для реалізації механізму міркувань у середовищі Protégé-OWL необхідно встановити і запустити додатковий модуль, зокрема, це може бути RACER, розроблений групою розробників інструментів описової логіки (DIG – Description Logic Implementers Group). Цей модуль та інструкція з його встановлення доступні на сайті http://www.sts.tu-harburg.de/~r.f.-moeller/racer/.
Після того, як встановлено і налагоджено відповідний механізм міркувань, введену вручну онтологію можна “відіслати до механізму міркувань” для автоматичної класифікації та перевірки узгодженості. Це можливо здійснити, вибравши в головному меню програми пункт OWL, а в ньому – дію “Classify taxsonomy... ” (рис. 7.25). Аналогічно, за допомогою дії “Check consistency...” перевіряється онтологія на суперечність. Ці дії також можна здійснити натисканням відповідних кнопок на панелі інструментів.
Рис. 7.25. OWL меню
Коли виведена ієрархія обчислена, то вікно виведеної ієрархії відкриється поряд з вікном заявленої ієрархії під назвою “Inferred Hierarchy”. Структура класів може значно відрізнятися від введеної вручну. Ця різниця залежатиме, насамперед, від умов, присвоєних певним класам та їх екземплярам. Деякі класи внаслідок автоматичної класифікації можуть змінити свій суперклас. Тоді цей клас у виведеній ієрархії буде виділено синім кольором.
У разі виявлення суперечливого класу в онтології, він буде виділений у заявленій ієрархії червоним кольором. Це може бути у разі, якщо попередньо було вказано, що об’єкти одного класу не можуть належати іншому класу (задається у вікні “Disjoint” (рис. 7.10). Тобто, якщо механізм міркувань виявив, що деякий підклас належить одночасно різним класам, що були розділені, то він виділить цей клас як суперечливий. Для видалення суперечності необхідно відмінити розділення між класами, в яких виникла ця суперечність, внаслідок видалення суперечливого класу у вікні “Disjoint”.
Введення екземплярів класів
Після того, як введено основні класи нашої онтології, визначено їх властивості та встановлено умови їх взаємозв’язку, для забезпечення конкретизації предметної області вводяться екземпляри (об’єкти) класів (рис. 7.26). Об’єкти вважаються найнижчим рівнем онтології, вони успадковують усі властивості класів, до яких вони належать. Прикладами об’єктів в онтології матеріалів можуть бути конкретні марки сталей або назви чистих металів (наприклад: Ст3, сталь 20, 15Х2МФА, мідь, залізо). У разі, якщо об’єкт має під собою інші об’єкти, він автоматично стає класом.
Об’єкти в Protégé-OWL можна створювати і редагувати у вікні об’єктів на закладці “Individuals” головного вікна програми (рис. 7.26).
Вікно екземплярів складається з трьох основних частин. Зліва розташоване вікно ієрархії класів онтології (Class Browser), в якому вибирається клас, екземпляр якого створюється. Навпроти кожного класу в дужках вказується кількість об’єктів, що належать саме цьому класу. Виділяючи певний клас, в центральному вікні (Instance Browser) виводиться список об’єктів, що належать такому класу. За допомогою клавіш керування, що розташовані над списком екземплярів, можна створити новий екземпляр у виділеному класі, скопіювати наявний екземпляр або видалити вибраний екземпляр зі списку. Вибираючи певнй об’єкт зі списку або створюючи новий в крайній правій частині вікна відкривається редактор екземплярів (Individual Editor), за допомогою якого можна змінити ім’я об’єкта, додати опис та коментар, а також внести значення властивостей об’єкта. У редакторі об’єкта виводять усі властивості, успадковані ним від батьківського класу. Також є можливість додавати або видаляти певні властивості цього класу (самі об’єкти власних властивостей не мають). Кожна властивість має окреме поле, в якому вноситься її значення для конкретного об’єкта. Введення нової або видалення наявної властивості відбувається за допомогою відповідних клавіш керування у верхній частині вікна, а внесення значення властивості – за допомогою клавіш, розташованих біля її назви або з випадного списку.
Рис. 7.26. Вікно екземплярів
Описавши всі класи, властивості, обмеження і об’єкти предметної області, одержуємо базу знань, що є основою для побудови інтелектуальних систем, здатних здійснювати операції над інформацією. Створену онтологію в редакторі Protégé-OWL можна тепер експортувати у формат, зрозумілий для інших редакторів, які займаються безпосередньо розробленням інтелектуальних систем (CLIPS, HTML, RDF, OWL). У складі інтелектуальної системи базова онтологія повинна постійно розширюватися і модифікуватися. Це може відбуватися в автоматичному режимі, завдяки спеціально розробленим алгоритмам; в іншому разі онтологію необхідно редагувати вручну (використовуючи редактори типу Protégé-OWL).