![](/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
5.2. Ідентифікація класів і об’єктів
5.2.1. Класичний і сучасний підходи
Із часів Платона проблему класифікації досліджували філософи, лінгвісти, когнітивісти, математики. Тому було б розумно вивчити нагромаджений досвід і застосувати його в об’єктно-орієнтовному проектуванні. Історично відомі тільки три підходи:
класична категоризація;
концептуальна кластеризація;
теорія прототипів.
Класична категоризація. У класичному підході всі речі, що мають деяку властивість або сукупність властивостей, формують деяку категорію. Причому, наявність цих властивостей є необхідною й достатньою умовою, що визначає категорію. Наприклад, неодружені – це категорія: кожна людина або неодружена, або одружена, і ця ознака достатня для розв’язання задачі, до якої категорії належить той чи інший індивідуум. З іншого боку, високі люди не визначають категорії, якщо, звичайно, ми спеціально не уточнимо критерій, що дає змогу чітко відрізняти високих людей від низьких.
Класична категоризація прийшла до нас від Платона й Аристотеля. Останній у своїй класифікації рослин і тварин користувався технікою міркувань, що нагадує сучасну дитячу гру на 20 запитань (Це мінерал, тварина чи рослина? Це покрито хутром чи пір’ям? Чи може воно літати? Чи пахне воно?). Такий підхід підтримали послідовники, найвидатнішими серед яких були: Фома Аквінський, Декарт, Локк. За твердженням Фоми Аквінського: “Ми можемо йменувати речі відповідно до наших знань про їх природу, яку отримуємо через пізнання їх властивостей і дій”.
Принципи класичної категоризації відображені у сучасній теорії розвитку дитини. Пьяже стверджує, що після першого року життя дитина усвідомлює існування об’єктів і потім починає набувати навичок їх класифікації, спочатку користуючись базовими категоріями, такими, як собаки, кішки й іграшки. Пізніше дитина усвідомлює, з одного боку, загальні (тварини), а з іншого боку, часткові категорії (коллі, доги, вівчарки).
Отже, класичний підхід як критерій подібності об’єктів використовує спорідненість їх властивостей. Зокрема, об’єкти можна розбивати на множини, що не перетинаються, залежно від наявності або відсутності деякої ознаки. Кращими є такі набори властивостей, елементи яких мало взаємодіють між собою. Цим пояснюються такі загальноприйняті критерії, як розмір, колір, форма й матеріал. Тому що ці критерії не перетинаються, про деякий предмет можна стверджувати, що він великий, сірий, круглий і дерев’яний. Загалом, властивості не обов’язково мають бути вимірюваними, як властивості можна використати поведінку. Та обставина, що птахи літають, а риби ні, дає змогу відрізнити орла від форелі.
Які конкретно властивості треба брати до уваги? Це залежить від задачі. Наприклад, кольори автомобіля треба зафіксувати в задачі обліку продукції автомобілебудівного заводу, але він не цікавий програмі, що керує вуличним світлофором. Ось чому ми говоримо, що немає абсолютного критерію класифікації, та сама структура класів може використовуватися для однієї задачі й бути непридатною для іншої. Не можна стверджувати, що деяка схема класифікації краще за інші відображає структуру й стан речей у природі. Деякі класифікації дійсно важливіші за інші, але тільки у зв’язку з нашими інтересами, а не тому, що вони найправильніше або найповніше відображають реальність.
Сучасне мислення найчастіше використовує класичну категоризацією, однак, як показує приклад з високими й низькими людьми, цей підхід не завжди працює. Природні категорії не чітко відмежовані. Більшість птахів літає, але не всі. Стілець може бути дерев’яним, металевим або пластмасовим, а кількість ніжок у нього цілком залежить від примхи конструктора. Практично неможливо перелічити визначальні властивості природної категорії так, щоб не було винятків. Це насправді проблема класичної категоризації, яку й спробували виправити в сучасних підходах. Розглянемо їх.
Концептуальна кластеризація. Це найсучасніший варіант класичного підходу. Він виник зі спроб формального подання знань. За такого підходу спочатку формуються концептуальні описи класів (кластерів об’єктів), а потім ми класифікуємо сутності відповідно до цих описів. Наприклад, візьмемо поняття “пісня про кохання”. Це поняття, а не ознака або властивість, оскільки ступінь кохання в пісні визначити неможливо. Але якщо стверджувати, що пісня скоріше про кохання, ніж про щось інше, то вміщуємо її в цю категорію.
Концептуальну кластеризацію можна зв’язати з теорією нечітких (багатозначних) множин, в якій об’єкт може належати до декількох категорій одночасно з різним ступенем точності. Концептуальна кластеризація використовує у класифікації абсолютні судження, ґрунтуючись на найкращій згоді.
Теорія прототипів. Класична категоризація й концептуальна кластеризація – доволі виразні методи, цілком придатні для проектування складних програмних систем. Але є ситуації, в яких ці методи не працюють. Розглянемо найсучасніший метод класифікації, теорію прототипів, передумови якої можна знайти у книзі з психології сприйняття [21].
Існують деякі абстракції, які не мають ні чітких властивостей, ні чіткого визначення. За твердженням Віттгенстейна (Wittgenstein), існують категорії (наприклад, ігри), які не відповідають класичним зразкам, тому що немає ознак, які властиві всім іграм... З цієї причини їх можна об’єднати за сімейною подібністю... Віттгенстейн стверджує, що в категорії ігор немає чіткої межі. Категорію можна розширити й ввести нові види ігор за умови, що вони нагадують вже відомі ігри. Ось чому цей підхід називається теорією прототипів: клас визначається одним об’єктом-прототипом, і новий об’єкт можна зарахувати до класу за умови, що він істотно подібний з прототипом.
Застосуємо класифікацію на основі прототипів до згаданої вище проблеми стільців. Ми вважаємо м’який пуф, перукарське крісло й складальне кріселко стільцями не тому, що задовольняють деякий фіксований набір ознак прототипу, а тому, що мають достатню фамільну подібність із прототипом... Не треба ніякого загального набору властивостей для прототипу, щоб він надавався і для пуфика, і для перукарського крісла, але вони обидва – стільці, тому що кожний з них окремо схожий на типовий стілець, нехай навіть кожний по-своєму. Властивості, зумовлені взаємодією з об’єктом (властивості взаємодії), є головними для визначення сімейної подібності.
Поняття властивостей взаємодії – центральне для теорії прототипів. У концептуальній кластеризації ми групуємо об’єкти відповідно до різних концепцій. У теорії прототипів класифікація об’єктів здійснюється за ступенем їх подібності до конкретного прототипу.
Застосування класичних і нових теорій. Три розглянуті підходи до класифікації мають безпосереднє відношення до об’єктно-орієнтовного проектування.
На практиці ми ідентифікуємо класи й об’єкти спочатку за властивостями, які є важливими у певній ситуації, тобто намагаємося виділити й відібрати структури й типи поведінки за допомогою словника ПО. Потенційно можливих абстракцій, як правило, дуже багато. Якщо так не вдалося побудувати необхідну структуру класів, тоді використовуємо концептуальний підхід. У цьому разі в центрі уваги є поведінка об’єктів, коли вони взаємодіють один з одним. Нарешті, ми пробуємо виділити прототипи й асоціювати з ними об’єкти.
Ці три способи класифікації становлять теоретичну основу об’єктно-орієнтовного підходу до аналізу, який пропонує багато практичних порад і правил, які можна застосувати для ідентифікації класів і об’єктів під час проектування складної програмної системи.