Ознайомлення з експертними системами. Створення власної простої бази знань для вирішення задачі класифікації

Контрольная работа - Компьютеры, программирование

Другие контрольные работы по предмету Компьютеры, программирование

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

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

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

  3. Далі через кому йде ряд повторюваних полів із трьох елементів: перший елемент (

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

  4. Приклад:

Грип, 0.01, 1,0.9,0.01, 2,1,0.01, 3,0,0.01

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

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

Для другого симптому маємо запис 2,1,0.01. У цьому випадку , тобто якщо в людини грип, то цей симптом обовязково повинен бути присутнім. Відповідний симптом може мати місце і при відсутності грипу , але ця ймовірність складає 1%.

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

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

 

.

 

Далі наведено декілька прикладів простих баз знань.

Побудова бази знань із чіткою логікою, що вирішує завдання класифікації

 

Ти геймер?

Автор: Олексій Бухнин.

Питання:

Ти граєш у компютерні ігри по 6 і більше годин на добу?

Ти кидаєш всі справи заради нової гри?

Від 3D-action ігор у тебе крутиться голова?

Ти нізащо не потягнеш свій компютер до друга для організації змагань по мережі?

Ти в основному витрачаєш гроші або на новий ігровий диск або на апгрейд компютера?

Ти не користуєшся мишкою в 3D-action іграх?

Геймер, 0.5, 1,1,0, 2,1,0, 3,0,1, 4,0,1, 5,1,0, 6,0,1

Не геймер, 0.5, 1,0,1, 2,0,1, 3,1,0, 4,1,0, 5,0,1, 6,1,0

У цій базі знань 6 запитань (згідно формату бази знань їх сім, але питання Питання: не згадується в жодному правилі) та всього два результати. Апріорні ймовірності обох результатів рівні 0.5, тобто гіпотези, що випадково обрана людина є або не є геймером, є рівноймовірні (при цьому сума апріорних імовірностей дорівнює 1, тобто в базі знань наведені всі можливі результати).

Можна помітити, що та для кожного запитання рівні 1 або 0. При цьому в другому правилі ці значення інвертуються відносно першого правила. Це приводить до того, що максимально впевнена відповідь (Точно так або Точно ні) на будь-яке запитання однозначно класифікує користувача як геймера або не геймера.

експертний база класифікація програма

Побудова бази знань із нечіткою логікою, що вирішує завдання класифікації

 

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

Ти геймер?

Автор: Олексій Бухнин.

Питання:

Ти граєш у компютерні ігри по 6 і більше годин на добу?

Ти кидаєш всі справи заради нової гри?

Від 3D-action ігор у тебе крутиться голова?

Ти нізащо не потягнеш свій компютер до друга для організації змагань по мережі?

Ти в основному витрачаєш гроші або на новий ігровий диск або на апгрейд компютера?

Ти не користуєшся мишкою в 3D-action іграх?

Геймер, 0.5, 1,1,0.5, 2,1,0.5, 3,0,0.5, 4,0,0.5, 5,1,0.5, 6,0,0.5

Не геймер, 0.5, 1,0,0.5, 2,0,0.5, 3,1,0.5, 4,1,0.5, 5,0,0.5, 6,1,0.5

Коли не всі можливі результати наперед відомі експерту (наприклад, не можна перелічити всі хвороби, які можу