Основні поняття, компоненти та архітектура


ЕКСПЕРТНІ ТА НАВЧАЛЬНІ СИСТЕМИ

ТЕМА 11

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

І лише наприкінці 70-х років була прийнята принципово нова концепція — для того, щоб інтелектуалізувати програму, необхідно надати їй множину високоякісних фахових знань із деякої предметної галузі. Це було наслідком зрозуміння того факту, що ефективність систем ШІ залежить не лише від формалізмів та схем виведення, які вона використовує, а насамперед від знань, які вона має в своєму розпорядженні. Почали розвиватися спеціалізовані системи, кожна з яких була експертом в певній предметній галузі, які отримали назву експертних систем (EC). На початку розробка та побудова експертної системи більшою мірою нагадувала досягнення в мистецтві програмування, ніж наукову розробку. На сучасному етапі процес побудови тієї чи іншої експертної системи став набагато чіткішим та зрозумілішим внаслідок його впорядкування та на деяких етапах формалізації. Експертні системи становлять найсуттєвішу складову систем ШІ. По суті експертні системи є комп’ютерними програмами, що моделюють дії людини-експерта в вузькій предметній галузі на ґрунті накопичених знань, що складають базу знань (БЗ). Сформувалася технологія побудови експертних систем, що отримала назву інженерії знань. Процес побудови експертної системи не дав сподіваних результатів внаслідок своєї загальності — розробка універсальних програм виявилася неефективною, оскільки чим ширше коло задач, які може розв’язувати програма, тим, більше вимагає специфічної форми взаємодії розробника EC — інженера знань — з одним або декількома експертами в предметній галузі, для якої створюється система. Інженер знань "видобуває" з експертів процедури, стратегії, емпіричні правила, які вони використовують при розв’язуванні задач та "вбудовує" ці знання в експертну систему.

Загальна структура такої системи показана на малюнку (рис. 11.1).

 

Рис. 11.1. Узагальнена структура експертної системи

З нього видно, що до складу експертних систем входять типові блоки: діалоговий процесор, база знань, планувальник Новим блоком є підсистема пояснення Її поява пов’язана з характером експертних систем. Їх основною задачею є допомога фахівцям за рахунок використовування знань про проблемну галузь, одержаних з найрізноманітніших джерел: книг, статі, науково-технічної документації, експертів-фахівців тощо. Таким чином, в експертних системах зберігається колективний досвід, накопичений в даній проблемній галузі, наприклад, в медицині або геології, археології або історії. Експертні системи виступають як експерти-консультанти, коли фахівець звертається до них за допомогою. Це може бути, наприклад, молодий археолог, що веде самостійні польові дослідження, або молодий лікар, що зіткнувся з незрозумілими йому симптомами захворювання. Задача експертної системи - пояснити користувачу незрозуміле для нього явище.

Пошук інформації для консультації за запитом користувача здійснює планувальник. Але якщо фахівцю повідомити лише кінцевий результат пошуку (наприклад, передбачуваний діагноз захворювання або висновок про датування даного культурного шару), то він навряд чи цьому результату так просто повірить. Він повинен сам переконатися в обґрунтованості висновків, одержаних машиною. Для розсіювання його сумнівів із цього приводу передбачена підсистема пояснення. Вона стежить за роботою планувальника і описує його діяльність у стислій формі, зручній для аналізу людиною. Опускаючи опис невизначальних і неістотних кроків у роботі планувальника, підсистема чітко фіксує всі міркування, прийняті ним при альтернативних виборах.

На малюнку, окрім кінцевого користувача, показаний ще й експерт (Е). У реальних системах це може бути і цілий колектив експертів або інформаційний вхід для введення текстів з книг.

У галузі роботи зі знаннями існують наступні напрямки

· здобування знань із різних джерел;

· здобування знань від фахівців;

· подання знань;

· оперування знаннями;

· підтримка прийняття рішень.

Дослідження в напрямку видобування знань реалізуються двома розділами: формування якісних знань та інтеграція знань.

Формалізація якісних знань полягає у створенні методів, що дозволяють переходити від знань у текстовій формі до їх аналогів, ‘ придатних для введення в пам’ять та використання інтелектуальною системою. З розв’язанням цієї проблеми пов’язаний розвиток не лише класичних методів опрацювання експериментальних даних, але й відносно нового напрямку - нечіткої математики. Нечітка математика та її методи суттєво вплинули на багато областей штучного інтелекту, і практично на весь комплекс проблем, пов’язаний з переробкою та поданням якісної інформації.

Інтеграція знань полягає в необхідності (насамперед для інженера знань) створення на ґрунті отриманих знань із різних джерел несуперечливої та взаємопов’язаної системи знань про предметну галузь. Здобування знань від фахівців необхідне тому, що знання, отримані з різних джерел відчужено від фахівця-експерта не дозволяють побудувати ефективну інтелектуальну систему. Це пояснюється тим, що значна частина знань набувається експертами у вигляді професійного досвіду, вміння та інтуїції, і значну частину саме цих знань фахівці не можуть висловити словесно або тeкcтoвo. Для того, щоб здобути такі знання, необхідні спеціальні прийоми та методи, які використовуються в інструментальних системах здобування знань, створення яких є одним із завдань інженерії знань. Знання, отримані від експертів, необхідно оцінити з точки зору відповідності їх до тих знань, що накопичені системою раніше, та формалізувати (підготувати до введення в систему). Окрім того знання, що отримані від різних експертів, можуть бути взаємно суперечливими, і тому виникає завдання їх узгодження. Інженер знань шляхом роботи з експертами (наприклад шляхом повторного опитування) повинен забезпечити несперечливість знань, які отримує ЕС. Архітектура обробки знань в інтелектуальних експертних системах наведена на рис. 11.2.

 

Рис. 11.2. Архітектура обробки знань в інтелектуальних експертних системах

Моделі продукції та логічні системи — ґрунтуються на класичній логічній моделі доведення. Це з одного боку логічні, числення на кшталт числення предикатів та його розширень, або ж системи продукцій, що задають елементарні кроки перетворень або умовиводів. Внаслідок орієнтації цих двох моделей на процедури вони найкраще описують процедурні знання, а моделі знань, що спираються на семантичні мережі — декларативні знання. І процедурні, і декларативні знання можуть співіснувати (наприклад, значеннями деяких слотів у фреймі можуть бути продукції).

Вищенаведені моделі знань за своєю суттю є нормативними, тобто не спираються на аналоги когнітивних структур подання знань, якими користуються люди, а є наслідком теоретичних побудов та досліджень. Тому, внаслідок недостатнього вивчення форм подання знань у людини, у психології під впливом досліджень в галузі штучного інтелекту виник новий напрямок — когнітивна психологія.

Для зберігання та використання знань у ЕС створюються спеціальні системи оперування та подання знань, що включають до свого складу сукупність процедур, які необхідні для запису знань, отримання їх з пам’яті та підтримки їх в робочому стані. Системи оперування знаннями та подання знань по суті є базами знань — природним розвитком концепції баз даних. Саме в базах знань зосереджені основні процедури оперування (маніпулювання) знаннями.

Процедури оперування знаннями підрозділяються наступні основні класи:

a) поповнення знань;

b) класифікація знань;

c) узагальнення (агрегування) знань;

d) виведення за допомогою знань.

Абсолютна більшість знань людей, які є в текстовому вигляді, принципово неповні. Сприймаючи тексти, ми ніби поповнюємо їх за рахунок відомої нам інформації, яка має відношення до тексту (йому релевантна). Процедури аналогічного типу повинні реалізовуватись й в базах знань. Нові знання, що надходять до БЗ разом з уже наявними в базі після роботи процедур поповнення знань повинні сформувати розширення наявних знань, що зовсім не еквівалентне простому накопиченню інформації. Особливе місце серед цих процедур посідають псевдофізичні логіки (часу, простору, дій і таке інше), які спираючись на закони зовнішнього світу поповнюють інформацію в БЗ.

Процедури класифікації забезпечують системне зберігання знань у ЕС, тобто утворення певних структур, що полегшує пошук потрібних знань та забезпечує підтримання працездатності БЗ. Ці процедури є двох основних типів:

1) родовидова класифікація (за типом "частина — ціле");

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

У цій галузі штучного інтелекту дослідження тісно пов’язані з кластерним аналізом — теорією класифікації, яка існує в якості самостійної науки.

Процедури агрегації та абстрагування приводять до абстрактних знань, що не мають прямого прообразу в реальному світі. У багатьох випадках абстрагування від окремих елементів опису, окремих фрагментів знань про об’єкти або явища реалізується в процесі класифікації. Узагальнення може відбуватися на протязі декількох кроків. Маніпулювання абстрактними знаннями підвищує інтелектуальні можливості систем, дозволяючи оперувати загальними категоріями і отримувати загальні результати.

Виведення на ґрунті знань реалізується за допомогою методу резолюцій, квазіаксіоматичних систем та систем правдоподібного виведення і залежить від моделі, що використана для подання знань. Якщо для подання знань використовуються логічні системи або продукції, чи знання, подані в казуальній формі, то виведення на знаннях буде близьким до стандартного логічного виведення, і в цьому випадку в ЕС використовуються методи, що ґрунтуються на ідеї резолюції.

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

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

Відкритість — це не лише немонотонність виведений, але й відсутність строгої аксіоматичності, як наслідок подання знань про предметні галузі. В класичних логічних системах аксіоми описують "вічні" логічні істини, істинні для будь-якої предметної галузі. На відміну від цього в ЕС кожна предметна галузь використовує власні, специфічні, істинні лише в ній твердження. Тому такі системи є по суті квазіаксіоматичні, в яких у процесі тривалого виведення можлива зміна вихідних аксіом, і як наслідок зміна результату виведення.

Характерною для відкритих ЕС є неповнота та нечіткість інформації про предметну галузь та процеси, що в ній відбуваються, неточність вхідної інформації, неповна впевненість в правильності квазіаксіом Як наслідок виведення в інтелектуальних системах принципово мають наближений, правдоподібний характер на відміну від класичних формально-логічних систем. Таким чином достовірне виведення є лише складовою теорії виведення, що інтенсивно розвивається.

З іншого боку в ЕС доцільно застосувати основні особливості роздумів та аргументації, характерних для людей, міркування за аналогією та асоціаціями, досвід фахівців з їх професійними вміннями в певній предметній галузі, формування висновків в системі наявних прагматичних цінностей та багато інших прийомів, якими люди користуються в своїй повсякденній практиці. Впровадження таких прийомів забезпечить більшу гнучкість, "людяність" та адаптованість ЕС.

 

11.2. Функціональні можливості й характеристика експертних систем (ЕС)

Основними характеристиками ЕС є:

· накопичення й організація знань – одна з найважливіших характеристик ЕС;

· знання – основа ЕС, вони є явними і доступними, що відрізняє ці системи від більшості традиційних програм;

· ЕС застосовує для вирішення проблем високоякісний досвід кваліфікованих експертів. Саме високоякісний досвід у поєднанні з умінням його застосовувати робить систему рентабельною. Цьому також сприяє гнучкість системи;

· Наявність прогностичних здібностей. ЕС може пояснити яким чином нова ситуація привела до змін;

· Провідні фахівці йдуть, але їх, досвід залишається й використовується в ЕС;

· ЕС можна використовувати для навчання й тренування.

Переваги ЕС.

Чи не краще звернутися до людського досвіду як це було у минулому. Приведемо аргументи на користь ЕС.

Таблиця 11.1

Порівняння людської й штучної компетентності

Людська компетентність Штучна компетентність
Неміцна Важка для подання Важко документована Непередбачувана Дорога Постійна Легко для подання Легко документована Стійка Прийнятна за витратами

 

Тут очевидні переваги штучної компетентності. Крім того, експерт – людина може ухвалювати різні рішення в тотожних ситуаціях через емоційні чинники (вплив дефіциту часу, вплив стресу).

Необхідність людини в контурі управління. Чому необхідно залишити для людини місце в системі?

Якщо штучна компетентність настільки краща людської, чом би повністю не відмовитися від експертів – людей, замінивши їх ЕС? Про неприйнятність подібних пропозицій і міркувань говорять багато доводів. Приведемо деякі з них:

· Хоча ЕС добре справляються зі своєю роботою, але в деяких областях діяльності людська компетентність перевершує будь-яку штучну. Це не відображення фундаментальних обмежень, але характеристика сучасного його стану. Наприклад, творчості.

· Навчання: людська компетентність поки перевершує штучну. Експерти адаптуються до умов, що змінюються, пристосовують свої стратегії до нових обставин. ЕС мало пристосовані до навчання новим концепціям і правилам. Навчальні програми, розроблені для простих задач і мало придатні, коли вимагається враховувати всю складність реальних задач.

· Експерти можуть безпосередньо сприймати комплекс вхідної сенсорної інформації (візуальної, звукової, дотикової, нюхової й тактильної). ЕС – тільки символи. Хоча в окремих напрямах розробки інженерних і виробничих інтелектуальних систем одержані реальні результати певної обробки сенсорної інформації.

· Експерти – люди можуть охопити картину в цілому, всі аспекти проблеми і зрозуміти, як вони співвідносяться з основною задачею. ЕС прагне зосередитись на самій задачі, хоча суміжні задачі можуть вплинути на рішення основної.

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

Тому ЕС найчастіше використовуються як порадники, як консультанти або помічники ОПР.

Функціональні можливості ЕС визначаються двома її головними системними частинами: середовищем розвитку й середовищем рекомендацій (рис. 11.3). Середовище розвитку використовується розробником ЕС для побудови компонентів і розміщення знань в БЗ. Середовище рекомендацій використовується не експертами для отримання експертних знань і порад.

Три головні компоненти, котрі виявляються в кожній ЕС – це БЗ, механізм висновку і призначений для користувача інтерфейс. Хоча взагалі ЕС можуть містити наступні компоненти:

· підсистема видобування знань;

· БЗ;

· механізм висновку;

· призначений для користувача інтерфейс;

· робоча область;

· підсистема пояснення;

· підсистема верифікації знань.

Звичайно, більшість ЕС не містить підсистему верифікації знань. Існують також великі коливання в змісті й здібностях кожної компоненти.

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

Рис. 11.3. Структура ЕС і її оточення

Видобування знань з експертів є складною задачею, яка часто створює «вузькі місця» при побудові ЕС.

Сучасні умови вимагають від знань і здібностей взаємодіяти з одним або більше людьми – експертами при побудові БЗ. Інженер знань допомагає експерту структурувати проблемну ufkepm шляхом інтерпретації й об’єднання відповідей людини на питання, проводячи аналогії, пропонуючи приклади і, виявляючи концептуальні труднощі.

База знань містить знання, необхідні для розуміння, формулювання й рішення задач. Вона включає два основні елементи: факти, такі як проблемна ситуація, і теоретичні знання про проблемну ufkepm; і спеціальні евристики – ті правила, які спрямовують використання знань при рішенні специфічних задач в окремій галузі. Крім того, механізм висновку, тісно пов’язаний з БЗ, містить стандартні правила рішення задач і ухвалення рішень. Евристики виражають неформальні знання й думки в прикладній галузі. Глобальні стратегії, які можуть бути як евристиками, так і частиною теорії проблемної галузі, звичайно, включаються в БЗ. Знання, а не просто факти, є первинним необробленим матеріалом експертних систем. Інформація й знання в БЗ подані й включені в комп’ютерну програму шляхом реалізації процесу, званого «подання знань».

Механізм висновку є мозком ЕС, його також називають «керуюча структура» або «інтерпретатор правил» (в ЕС, заснованих на правилах).

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

Механізм висновку має два головні елементи:

· інтерпретатор, який виконує вибрані позиції оренди, використовуючи відповідні правила БЗ.

· Планувальник, який підтримує управління агендою. Він оцінює результати правил висновку, що використовуються, в світлі їх, пріоритетів або інших критеріїв в агенді.

Призначений для користувача інтерфейс. ЕС містять мовний процесор для дружнього, проблемно-орієнтованого спілкування між користувачем і комп’ютером. Спілкування найкращим чином виконується на природній мові. Іноді воно доповнюється меню й графікою.

Робоча область – це область, розташована окремо для опису поточної задачі, як визначено вхідними даними. Вона також використовується для запам’ятовування проміжних результатів. В робочій області запам’ятовуються проміжні гіпотези й рішення. Можна запам’ятати три типи рішень: план (як розв’язувати задачу), агенда (потенційні дії, що чекають виконання) і рішення (гіпотези–кандидати й альтернативні напрями дій, які система згенерувала дотепер).

Підсистема пояснення. Здатність відстежувати відповідність висновків їх джерелам є вирішальною і при проведенні експертизи, і при рішенні задачі. Підсистема пояснення може відстежувати таку відповідність і пояснювати поведінку експертної системи інтерактивно, відповідаючи на питання.

Підсистема верифікації й удосконалення знань. Експерти володіють здібностями верифікувати й удосконалювати знання. Тобто, вони можуть аналізувати свої власні знання і їх використовування, навчатися від них і покращувати їх для майбутніх консультацій. Аналогічно, така еволюція необхідна в комп’ютеризованому навчанні: так, щоб програма могла аналізувати міркування під кутом їх успіху або невдачі. Це може привести до покращень і, як результату, до точніших БЗ і ефективнішого міркування. Такої складової у даний час поки немає в комерційних ЕС, але вона розробляється в експериментальних ЕС.