No history yet

Побудова Байєсівських мереж

Структура знань: Графи

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

В основі кожної Байєсівської мережі лежить структура, яка називається (DAG). Давайте розберемо цю назву:

  • Граф: Це набір вузлів (вершин) та ребер (ліній), що їх з'єднують. У нашому випадку кожен вузол — це випадкова змінна (наприклад, «дощ», «ввімкнений дощувач», «трава мокра»).
  • Орієнтований: Ребра мають напрямок, зображений стрілками. Стрілка від вузла А до вузла Б означає, що А безпосередньо впливає на Б. Це причинно-наслідковий зв'язок.
  • Ациклічний: У графі немає замкнених циклів. Ви не можете, слідуючи за стрілками, вийти з якогось вузла і повернутися до нього ж. Це логічно, адже подія не може бути власною причиною.

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

Наповнення мережі: Ймовірності

Сам по собі граф — це лише скелет. Щоб модель ожила, нам потрібно наповнити її числами. Для кожної змінної (вузла) ми повинні визначити її локальний умовний розподіл, який описує, як вона залежить від своїх батьків. Для дискретних змінних це зазвичай роблять за допомогою таблиць умовних ймовірностей (Conditional Probability Tables, CPT).

  1. Вузли без батьків (кореневі): Для них ми задаємо апріорні ймовірності. Наприклад, яка ймовірність дощу сьогодні? P(Дощ=T)=0.2P(Дощ=T) = 0.2.

  2. Вузли з батьками: Для них ми задаємо умовні ймовірності для кожної можливої комбінації значень батьків. Наприклад, яка ймовірність, що трава буде мокрою, якщо дощ іде, а дощувач вимкнено?

ДощДощувачP(Трава мокра=T)
FF0.0
FT0.9
TF0.99
TT0.999

Ця таблиця повністю описує поведінку вузла «Трава мокра» залежно від його причин. Процес визначення всіх CPT для мережі називається параметризацією. Це може бути зроблено на основі експертних знань або шляхом навчання на даних.

Читання зв'язків: Умовна незалежність

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

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

Для формального визначення незалежностей у графі використовується критерій, що називається (d-separation). Він дозволяє визначити, чи є два набори вузлів AA і BB умовно незалежними при заданому третьому наборі вузлів CC. Для цього аналізують усі шляхи між вузлами з AA і BB. Якщо всі шляхи «заблоковані» набором CC, то AA і BB є умовно незалежними.

Шлях може бути заблокований одним із трьох способів:

Третій випадок, колайдер, є контрінтуїтивним. Знання про спільний наслідок створює залежність між його незалежними причинами. Якщо ви знаєте, що трава мокра (C), і бачите, що дощу немає (A), то ви робите висновок, що дощувач, скоріш за все, був увімкнений (B).

Компактне представлення

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

Для будь-якої множини змінних X1,X2,...,XnX_1, X_2, ..., X_n спільний розподіл можна факторизувати так:

P(X1,...,Xn)=i=1nP(XiParents(Xi))P(X_1, ..., X_n) = \prod_{i=1}^{n} P(X_i | \text{Parents}(X_i))

Для нашого прикладу з мокрою травою формула матиме такий вигляд:

P(Дщ,Др,Тр)=P(Дщ)×P(Др)×P(ТрДщ,Др)P(Дщ, Др, Тр) = P(Дщ) \times P(Др) \times P(Тр | Дщ, Др)

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

Quiz Questions 1/5

Що є основною структурою, яка лежить в основі будь-якої Байєсівської мережі?

Quiz Questions 2/5

Для чого використовуються таблиці умовних ймовірностей (CPT) у Байєсівській мережі?

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