Основи ШІ
Генеративні проти дискримінативних моделей машинного навчання
Деякі моделі машинного навчання належать до категорій «генеративні» або «дискримінативні» моделей. Але чим відрізняються ці дві категорії моделей? Що означає те, що модель є дискримінативною чи генеративною?
Коротка відповідь полягає в тому, що генеративні моделі включають розподіл набору даних і повертають імовірність для даного прикладу. Генеративні моделі часто використовуються для прогнозування того, що відбувається далі в послідовності. Тим часом дискримінативні моделі використовуються для класифікації або регресії і повертають прогноз на основі умовної імовірності. Давайте розглянемо розходження між генеративними і дискримінативними моделями детальніше, щоб зрозуміти, що відрізняє ці два типи моделей і коли кожний тип повинен бути використаний.
Генеративні проти дискримінативних моделей
Є кілька способів класифікувати модель машинного навчання. Модель можна класифікувати як належить до різних категорій, таких як: генеративні моделі, дискримінативні моделі, параметричні моделі, непараметричні моделі, моделі на основі дерев, немоделі на основі дерев.
Ця стаття буде зосереджена на розходженнях між генеративними і дискримінативними моделями. Ми почнемо з визначення генеративних і дискримінативних моделей, а потім розглянемо приклади кожної з цих моделей.
Генеративні моделі
Генеративні моделі – це ті, що зосереджені на розподілі класів у наборі даних. Алгоритми машинного навчання зазвичай моделюють розподіл даних. Генеративні моделі покладаються на пошук спільної імовірності. Створення точок, де дана вхідна властивість і бажана вивідна властивість/мітка існують одночасно.
Генеративні моделі зазвичай використовуються для оцінки імовірностей і ймовірностей, моделювання даних і розрізнення між класами на основі цих імовірностей. Оскільки модель вивчає розподіл імовірностей для набору даних, вона може посилатися на цей розподіл імовірностей для генерації нових екземплярів даних. Генеративні моделі часто покладаються на теорему Баєса для пошуку спільної імовірності, знаходячи p(x,y). По суті, генеративні моделі моделюють, як дані були згенеровані, і відповідають на питання:
«Яка імовірність того, що цей клас або інший клас згенерував ці дані/екземпляр?»
Приклади генеративних моделей машинного навчання включають лінійний дискримінативний аналіз (LDA), приховані марковські моделі та баєсові мережі, такі як наївний баєс.
Дискримінативні моделі
Хоча генеративні моделі вивчають розподіл набору даних, дискримінативні моделі вивчають межу між класами у наборі даних. Для дискримінативних моделей метою є визначення гіпотези рішення між класами для застосування надійних міток класів до екземплярів даних. Дискримінативні моделі розділяють класи у наборі даних, використовуючи умовну імовірність, не роблячи жодних припущень про окремі дані.
Дискримінативні моделі намагаються відповісти на питання:
«Яка сторона гіпотези рішення знаходиться цей екземпляр?»
Приклади дискримінативних моделей машинного навчання включають машини опорних векторів, логістичну регресію, дерева рішень та випадкові ліси.
Різниця між генеративними і дискримінативними моделями
Ось короткий огляд основних розходжень між генеративними і дискримінативними моделями.
Генеративні моделі:
- Генеративні моделі намагаються захопити фактичний розподіл класів у наборі даних.
- Генеративні моделі передбачають спільний розподіл імовірностей – p(x,y) – за допомогою теореми Баєса.
- Генеративні моделі обчислюються дорого порівняно з дискримінативними моделями.
- Генеративні моделі корисні для задач машинного навчання без нагляду.
- Генеративні моделі більше залежать від наявності аутлієрів порівняно з дискримінативними моделями.
Дискримінативні моделі:
- Дискримінативні моделі моделюють гіпотезу рішення для класів у наборі даних.
- Дискримінативні моделі вивчають умовну імовірність – p(y|x).
- Дискримінативні моделі обчислюються дешево порівняно з генеративними моделями.
- Дискримінативні моделі корисні для задач машинного навчання з наглядом.
- Дискримінативні моделі мають перевагу у тому, що вони більш стійкі до аутлієрів, на відміну від генеративних моделей.
- Дискримінативні моделі більш стійкі до аутлієрів порівняно з генеративними моделями.
Тепер ми розглянемо приклади генеративних і дискримінативних моделей машинного навчання.
Приклади генеративних моделей
Лінійний дискримінативний аналіз (LDA)
Моделі LDA працюють шляхом оцінки дисперсії та середнього значення даних для кожного класу у наборі даних. Після того, як середнє значення та дисперсія для кожного класу були обчислені, прогнози можна зробити шляхом оцінки імовірності того, що заданий набір входів належить до певного класу.
Приховані марковські моделі
Марковські ланцюги можна розглядати як графи з імовірностями, які вказують на те, наскільки ймовірно, що ми переходимо з однієї точки ланцюга, «стану», до іншої точки. Марковські ланцюги використовуються для визначення імовірності переходу з стану j до стану i, який можна позначити як p(i,j). Це просто спільна імовірність, згадана вище. Прихована марковська модель – це коли використовується невидимий, необсервований марковський ланцюг. Вхідні дані подаються до моделі, а імовірності для поточного стану та стану, що безпосередньо передує йому, використовуються для розрахунку найбільш ймовірного результату.
Баєсові мережі
Баєсові мережі – це тип імовірнісної графічної моделі. Вони представляють умовні залежності між змінними, як представлено у вигляді орієнтованого ациклічного графу. У баєсовій мережі кожна ребро графу представляє умовну залежність, а кожна вершина відповідає унікальній змінній. Умовна незалежність унікальних відносин у графі можна використовувати для визначення спільного розподілу змінних та розрахунку спільної імовірності. Інакше кажучи, баєсова мережа захоплює підмножину незалежних відносин у певному спільному розподілі імовірностей.
Як тільки баєсова мережа створена та правильно визначена з випадковими змінними, умовними відносинами та розподілами імовірностей, її можна використовувати для оцінки імовірності подій або результатів.
Одним з найбільш поширених типів баєсових мереж є наївна баєсова модель. Наївна баєсова модель подолає завдання розрахунку імовірності для наборів даних з багатьма параметрами/змінними,扱уючи всі властивості як незалежні одна від одної.
Приклади дискримінативних моделей
Машини опорних векторів
Машини опорних векторів працюють шляхом малювання гіпотези рішення між даними, знаходячи гіпотезу рішення, яка найкраще розділяє різні класи у наборі даних. Алгоритм SVM малює лінії або гіперплани, які розділяють точки, для двовимірних та тривимірних просторів відповідно. SVM намагається знайти лінію/гіперплан, який найкраще розділяє класи, намагаючись максимізувати відстань, або відстань між лінією/гіперпланом та найближчими точками. Моделі SVM також можна використовувати на наборах даних, які не є лінійно роздільними, використовуючи «трюк ядра» для визначення нелінійних гіпотез рішень.
Логістична регресія
Логістична регресія – це алгоритм, який використовує логістичну функцію (лог-шанс) для визначення імовірності того, що вхід належить до одного з двох станів. Сигмоїдна функція використовується для «стиснення» імовірності до 0 або 1, істинного чи хибного. Імовірності вище 0,50 вважаються класом 1, тоді як імовірності 0,49 або нижче вважаються 0. Через це логістична регресія зазвичай використовується для бінарної класифікації. Однак логістична регресія також можна застосовувати до багатокласових проблем, використовуючи підхід «один проти всіх», створюючи бінарну модель класифікації для кожного класу та визначення імовірності того, що приклад належить до цільового класу або іншого класу у наборі даних.
Дерево рішень
Дерево рішень працює шляхом розділення набору даних на дрібніші частини, і коли підмножини не можна розділити далі, результатом є дерево з вузлами та листками. Вузли у дереві рішень – це місця, де приймаються рішення про дані за допомогою різних критеріїв фільтрації. Листки у дереві рішень – це дані, які були класифіковані. Алгоритми дерев рішень можуть обробляти як числові, так і категорійні дані, а розгалуження у дереві ґрунтуються на конкретних змінних/властивостях.
Випадкові ліси
Випадковий ліс – це просто колекція дерев рішень, де прогнози окремих дерев усереднюються для прийняття остаточного рішення. Алгоритм випадкового лісу вибирає спостереження та властивості випадково, будуючи окремі дерева на основі цих вибірок.
Ця навчальна стаття розгляне, як створити графік ящиків у Matplotlib. Графіки ящиків використовуються для візуалізації статистичних підсумків набору даних, відображаючи атрибути розподілу, такі як діапазон даних та розподіл.












