Штучний інтелект і представлення знань

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

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

Результати досліджень із штучного інтелекту використовуються в інтелектуальних системах – технічних чи в програмних мережах, здатних вирі­шувати завдання, що вважаються творчими, належать до конкретної предме­тної галузі, знання про яку зберігаються в пам'яті інтелектуальної системи. Системи штучного інтелекту складаються з 3 основних блоків: бази знань, розв'язника й інтелектуального інтерфейсу. Типовим представником систем штучного інтелекту є експертні системи.

У цілому системи штучного інтелекту орієнтовані на розв'язування ве­ликого і дуже важливого класу задач:

- які мають одну чи декілька з наступних властивостей;

- алгоритмічний розв'язок задачі невідомий (хоча можливо й існує), чине може бути використаний через обмеженість ресурсів ЕОМ;

- задача не може бути визначена (задана) у числовій формі (потрібне символьне представлення);

- цілі розв'язку задачі не можуть бути виражені термінами з точно ви­значеною цільовою функцією;

- велика розмірність простору розв'язку;

- динамічно змінюються дані і знання.

Як правило, важко формалізовані задачі мають неповні, неоднозначні і/чи суперечливі вихідні дані та знання про предметну галузь.

-27-

У дослідженнях зі штучного інтелекту можна виділити два основних напрямки.

Програмно-прагматичішй напрямок ("не має значення, як улаштований "мислячий" пристрій, головне, щоб він реагував на задані вихідні впливи, як людський мозок") займається створенням програм, за допомогою яких можна розв'язувати задачі, розв'язок яких до цього вважався винятково прерогативою людини. Сюди відносяться задачі, що розпізнають й ігрові програми для розв'язання логічних задач, пошуку, класифікації і ін. Цей напрямок орієнто­ваний на пошуки алгоритмів для розв'язку інтелектуальних задач на існую­чих моделях комп'ютерів.

Біоничний напрямок ("єдиний об'єкт, здатний мислити – це людський мозок, тому будь-який "мислячий" пристрій повинний будь-яким чином від­творювати його структуру") займається проблемами штучного відтворення тих структур і процесів, які характерні для живого людського мозку і які ле­жать в основі процесу розв'язання задач людиною. У рамках біонічного під­ходу до проблеми штучного інтелекту сформувалася нова наука нейроінформатика, практичним виходом якої є створення нейрокомп'ютера – обчислювальної машини VI покоління.

Сьогодні традиційним (класичним) прийнято вважати програмно-прагматичний напрямок, при якому не ставиться питання про адекватність використовуваних структур і методів тим, якими користуються в аналогічних випадках люди, а розглядається лише кінцевий результат розв'язання задач. У рамках цього напрямку спочатку велися пошуки моделі і алгоритму люд­ського мислення. Жодна з існуючих наук (філософія, психологія, лінгвістика) не змогла запропонувати такого алгоритму. Тоді фахівці в галузі штучного інтелекту запропонували власні моделі:

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

- евристичне програмування. Евристика – правило, яке теоретично не обгру

-28-

нтоване, але дозволяє скоротити кількість переборів в просторі пошуку;

- використання методів математичної логіки. На основі методу резо­люцій, що дозволив автоматично доводити теореми за допомогою ви­хідних аксіом, у 1973 р. була створена мова Пролог.

Істотний прорив у практичних додатках штучного інтелекту відбувся, коли на зміну пошукам універсального алгоритму мислення прийшла ідея моделювати конкретні знання фахівців-експертів. У США з'явилися перші комерційні системи, засновані на знаннях, - експертні системи. Сформувався новий підхід до вирішен­ня інтелектуальних задач - представлення і використання знань.

Під знаннями розуміють високо структуровану (класифіковану, з вияв­леними логічними, семантичними й асоціативними зв'язками) інформацію, що має практичну значимість для бізнесу.

Явно виражені знання відбиваються у формальній мові (природній чи штучній) і розповсюджуються серед співробітників фірми.

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

Залежно від способу використання звичайно виділяють дві категорії знань. Перша – кодифіковані знання, що усвідомлені у вигляді інформації і без утрати змісту передаються на різних носіях формулами, символами, текс­тами. Друга — знання, втілені в людині і невіддільні від неї: здібності, навич­ки, інноваційні риси характеру, відшліфовані тренуванням.

За змістом і функціональним призначенням виділяють нові і суб'єктивно но­ві. Перші раніше не були відомі суспільству. Вони створювалися особистостями (колективами), здатними генерувати знання, у сфері науки. До суб'єктивно нових відносяться ті знання, які раніше були невідомі виконавцям інтелектуальної праці. За своїм обсягом вони значно перевершують перші і безупинно осягаються в про-

-29-

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

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

Форма представлення знань упливає на характеристики і властивості системи. Для того щоб маніпулювати всілякими знаннями з реального світу за допомогою комп'ютера, необхідно їх моделювати.

Представлення знань – це їхні формалізація і структурування (з метою полегшення задачі), за допомогою яких проявляються характерні ознаки: внутрішня інтерпретація, структурованість, зв'язність, семантична метрика й активність. Представлення знань – «ця угода про те, як описувати реальний світ». У рамках цього напрямку зважуються задачі, пов'язані з формалізацією і представленням знань у пам'яті інтелектуальної системи за допомогою спе­ціально розроблених моделей представлення знань.

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

- Логічний (формальний) підхід, при якому основна увага приділяється вивченню і застосуванню теоретичних методів представлення знань, фо­рмалізації, а також логічній повноті (наприклад, створення моделей представлення знань на основі деяких логічних обчислень).

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

Основна ідея підходу при побудові логічних моделей представлення знань полягає в тому, що вся інформація, необхідна для розв'язання приклад­них задач, розглянута як сукупність фактів і тверджень, що представляються як формули деякої логіки. Знання відображаються сукупністю таких формул, а одержання їх зводиться до реалізації процедур логічного висновку.

-30-

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

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

У продукційних системах, заснованих на знаннях, процес обробки інформації здійснюється двома способами. Перший припускає обробку інформа­ції в прямому напрямку (метод зіставлення), коли зразком для пошуку є ліва , частина продукційного правила – умова, тобто задача, зважується в напрямку від вихідного стану до цільового (стратегія «від даних до мети»).

За допомогою другого підходу обробка інформації здійснюється в зворотному напрямку – метод «генерації» чи висування гіпотези і її перевірок (стратегія «від мети до даних»).

Продукційні моделі мають:

- модульність;

- простоту інтерпретації (прозора структура продукційних правил по­легшує їхню значеннєву інтерпретацію);

- природність (знання у виді «що робити і коли» є природними);

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

-31-

своєю наочністю, високою модульністю, легкістю внесення змін і простотою логічного висновку.

Спосіб представлення знань за допомогою мережних моделей близький до того, як вони представлені в текстах природною мовою. Залежно від типів зв'язку мережні моделі поділяються на:

- класифіційні мережі - у них використовуються відносини структуризації, вони дозволяють вводити в бази знань різні ієрархічні відноси­ни між елементами безлічі.

- функціональні мережі – обчислювальні моделі, що характеризуються наявністю функціональних відносин. Вони дозволяють описувати процедури обчислень одних інформаційних одиниць через інші.

- сценарії - у них використовуються каузальні відносини (причинно-наслідкові), а також відносини типів «засіб - результат», «знаряддя - дія».

Якщо в мережній моделі допускаються зв'язки різного типу, то її нази­вають семантичною.

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

Мережні моделі є дуже наочними і досить універсальними засобами представлення знань. Однак їхня формалізація в конкретних моделях пред­ставлення, використання і модифікація знань досить трудомісткі.

Фреймова модель - систематизована у вигляді теорії технологічна мо­дель пам'яті людини.

Фрейм - структура представлення даних для описування деякого концеп­туального об'єкта. Інформація, що відноситься до цього фрейму, міститься в

-32-

складових фрейму - слотах. На відміну від моделей інших типів, у фреймових моделях фіксується тверда структура, що називається фреймом-зразком.

Приклад:

ім'я фрейму:

(ім'я 1-го слота: значення 1-го слота)

(ім'я 2-го слота: значення 2-го слота)

Фрейм-екземпляр створюється для відображення реальних ситуацій на основі даних, що надходять.

Фрейм-структура створюється для позначень об'єктів і понять (позика, застава).

Фрейм-роль (менеджер, касир). Фрейм-сценарій (банкрутство, збори акціонерів). Фрейм-ситуація (тривога, аварія та ін.).

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

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

-33-

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

У даний час підвищення продуктивності комп'ютерів пов'язують із система­ми, що володіють властивостями масового паралелізму. Одна з таких систем - нейрокомп'ютер, основу якого складає штучна нейромережа, реалізована апаратно на електронних чи оптичних елементах. Кожен нейрон є лише найпростішим ана­логовим перетворюючий елементом. Штучна нейромережа - принципово рівнобіжна структура, яка природним чином реалізує принцип потоку даних.

Нейронна мережа - це структура, яка складається зі зв'язаних між со­бою нейронів.

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

Існує кілька типів класифікації нейромереж.

Вони відрізняються наступним. На всій мережі на одному її шарі задаються у визначений момент часу вихідні стани нейронів х=(х12,...,хn), тобто задається вхідний образ. Потім цей образ трансформується відповідно до функцій перетворення елементів. Інформація поширюється по мережі, відбувається її обробка. В односпрямованих мережах інформація поширюється від шару до шару, і вихід­ний шар видає результуючий вектор у=(у12,…,уm)- (В одношарових мережах відбувається стабілізація мережі в одному стані). Потім зчитуються значення ву­злів мережі, що представляють вихідний вектор.

Оскільки в основі пристрою нейронних комп'ютерів лежить штучна нейромережа, то процесом навчання є настроювання параметрів цієї нейро-мережі. Навчання - це процес зміни ваг зв'язків між нейронами.

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

-34-

годженості виходів.

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

Без вчителя. Мережа сама виробляє правила навчання шляхом виді­лення оцінних ознак з набору вхідних даних.

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

Стохастичні методи ґрунтуються на використанні випадкових змін ваги у ході навчання.

На сьогодні запропоновано і вивчено велику кількість моделей нейромереж. Однак основними є тільки три принципово різні типи мереж. Біль­шість інших розповсюджених неиромереж складаються з елементів, характе­рних для мереж трьох основних типів:

- мережі прямого поширення (багатошарові персептрони);

- повнозв'язні мережі Хопфілда;

- карти (грати) Кохонена.