ШІ 101
Що таке машинне навчання?

Машинне навчання є однією з найшвидше розвиваючихся технологічних сфер, але незважаючи на те, як часто вживаються слова “машинне навчання”, може бути складно зрозуміти, що саме воно собою являє. Машинне навчання не позначає лише одну конкретну річ, це загальний термін, який може застосовуватися до багатьох різних концепцій і технік. Розуміння машинного навчання означає ознайомленість з різними формами аналізу моделей, змінними та алгоритмами. Давайте детально розглянемо машинне навчання, щоб краще зрозуміти, що воно охоплює.
Що таке машинне навчання?
Хоча термін машинне навчання може застосовуватися до багатьох різних речей, загалом він означає надання комп’ютеру можливості виконувати завдання без отримання явних покрокових інструкцій для цього. Фахівцю з машинного навчання не потрібно прописувати всі необхідні кроки для вирішення проблеми, оскільки комп’ютер здатний “навчатися”, аналізуючи закономірності в даних і узагальнюючи ці закономірності для нових даних. Системи машинного навчання мають три основні частини:
- Входи
- Алгоритми
- Вихідні дані
Входи — це дані, які подаються в систему машинного навчання, і вхідні дані можна розділити на мітки та ознаки. Ознаки — це релевантні змінні, змінні, які будуть аналізуватися для вивчення закономірностей та формування висновків. Тим часом мітки — це класи/описани, надані окремим екземплярам даних. Ознаки та мітки можуть використовуватися в двох різних типах завдань машинного навчання: навчання з учителем та навчання без учителя.
Навчання без учителя проти навчання з учителем
У навчанні з учителем вхідні дані супроводжуються еталонною істиною. У завданнях навчання з учителем правильні вихідні значення є частиною набору даних, тому очікувані класи відомі заздалегідь. Це дає можливість науковцю з даних перевірити продуктивність алгоритму, тестуючи дані на тестовому наборі та побачивши, який відсоток елементів був класифікований правильно. На противагу цьому, завдання навчання без учителя не мають прикріплених до них еталонних міток. Алгоритм машинного навчання, навчений виконувати завдання навчання без учителя, повинен мати змогу самостійно виводити відповідні закономірності в даних. Алгоритми навчання з учителем зазвичай використовуються для завдань класифікації, коли є великий набір даних, наповнений екземплярами, які необхідно відсортувати в один з багатьох різних класів. Інший тип навчання з учителем — це завдання регресії, де значення, що виводиться алгоритмом, є безперервним за своєю природою, а не категоріальним. Тим часом алгоритми навчання без учителя використовуються для таких завдань, як оцінка щільності, кластеризація та навчання представлення. Ці три завдання вимагають, щоб модель машинного навчання виводила структуру даних, попередньо визначених класів для моделі немає. Давайте коротко розглянемо деякі з найпоширеніших алгоритмів, що використовуються як у навчанні без учителя, так і в навчанні з учителем.
Типи навчання з учителем
До поширених алгоритмів навчання з учителем належать:
- Наївний байєсівський класифікатор
- Метод опорних векторів
- Логістична регресія
- Випадкові ліси
- Штучні нейронні мережі
Метод опорних векторів — це алгоритми, які розділяють набір даних на різні класи. Точки даних групуються в кластери шляхом проведення ліній, що відокремлюють класи один від одного. Точки, знайдені з одного боку лінії, належатимуть до одного класу, тоді як точки з іншого боку лінії — до іншого класу. Метод опорних векторів прагне максимізувати відстань між лінією та точками, знайденими по обидва боки лінії, і чим більша відстань, тим більше впевненості у класифікатора, що точка належить до одного класу, а не до іншого. Логістична регресія — це алгоритм, що використовується в завданнях бінарної класифікації, коли точки даних потрібно класифікувати як такі, що належать до одного з двох класів. Логістична регресія працює, позначаючи точку даних як 1 або 0. Якщо сприймане значення точки даних становить 0,49 або нижче, вона класифікується як 0, тоді як якщо воно становить 0,5 або вище, вона класифікується як 1. Алгоритми дерева рішень працюють, розділяючи набори даних на менші та менші фрагменти. Точні критерії, що використовуються для поділу даних, залежать від інженера з машинного навчання, але мета полягає в тому, щоб зрештою розділити дані на окремі точки даних, які потім будуть класифіковані за допомогою ключа. Алгоритм випадкового лісу — це, по суті, багато окремих класифікаторів дерева рішень, об’єднаних у потужніший класифікатор. Наївний байєсівський класифікатор обчислює ймовірність того, що дана точка даних відбулася, виходячи з ймовірності попередньої події. Він базується на теоремі Байєса і розміщує точки даних у класи на основі їх розрахованої ймовірності. При реалізації наївного байєсівського класифікатора припускається, що всі предиктори мають однаковий вплив на результат класу. Штучна нейронна мережа, або багатошаровий перцептрон, — це алгоритми машинного навчання, натхненні структурою та функцією людського мозку. Штучні нейронні мережі отримали свою назву через те, що вони складаються з багатьох пов’язаних між собою вузлів/нейронів. Кожен нейрон маніпулює даними за допомогою математичної функції. У штучних нейронних мережах є вхідні шари, приховані шари та вихідні шари. Прихований шар нейронної мережі — це місце, де дані фактично інтерпретуються та аналізуються на наявність закономірностей. Іншими словами, це місце, де алгоритм навчається. Більше нейронів, об’єднаних разом, утворюють складніші мережі, здатні вивчати складніші закономірності.
Типи навчання без учителя
До алгоритмів навчання без учителя належать:
- K-середніх кластеризація
- Автокодувальники
- Метод головних компонент
Кластеризація K-середніх — це техніка класифікації без учителя, і вона працює шляхом розділення точок даних на кластери або групи на основі їх ознак. Кластеризація K-середніх аналізує ознаки, знайдені в точках даних, і виявляє в них закономірності, які роблять точки даних у даному кластері класу більш схожими одна на одну, ніж на кластери, що містять інші точки даних. Це досягається шляхом розміщення можливих центрів для кластера, або центроїдів, на графіку даних і перепризначення позиції центроїда доти, доки не буде знайдено позицію, яка мінімізує відстань між центроїдом і точками, що належать до класу цього центроїда. Дослідник може вказати бажану кількість кластерів. Метод головних компонент — це техніка, яка зводить велику кількість ознак/змінних до меншого ознакового простору/меншої кількості ознак. “Головні компоненти” точок даних обираються для збереження, тоді як інші ознаки стискаються в менше представлення. Зв’язок між оригінальними порціями даних зберігається, але оскільки складність точок даних простіша, дані легше кількісно оцінити та описати. Автокодувальники — це версії нейронних мереж, які можна застосовувати до завдань навчання без учителя. Автокодувальники здатні брати немарковані, вільні дані та перетворювати їх на дані, здатні використовувати нейронною мережею, по суті створюючи власні марковані навчальні дані. Мета автокодувальника — перетворити вхідні дані та відтворити їх якомога точніше, тому мережа має стимул визначати, які ознаки є найважливішими, та витягувати їх.












