Машинне навчання

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

Маши́нне навча́ння — узагальнена назва штучної генерації знань з досвіду. Штучна система навчається на прикладах і після закінчення фази навчання може узагальнювати. Тобто система не просто вивчає наведені приклади, а розпізнає певні закономірності в даних для навчання.

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

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


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


В основі машинного навчання розглядаються уявлення та узагальнення. Представлення даних і функцій оцінки цих даних є частиною всіх систем машинного навчання, наприклад, у наведеному вище прикладі повідомлення по електронній пошті, ми можемо уявити лист як набір англійських слів, просто відмовившись від порядку слів. Узагальнення є властивістю, яку система буде застосовувати добре на невидимих ​​екземпляри даних; умови, за яких це може бути гарантовано є ключовим об'єктом вивчення в полі обчислювальної теорії навчання. Існує широкий спектр завдань машинного навчання та успішних застосувань. Оптичне розпізнавання символів, в яких друковані символи розпізнаються автоматично, грунтуючись на попередніх прикладах, є класичним прикладом техніки машинного навчання. У 1959 році Артур Самуїл визначив машинне навчання як "Поле дослідження, яке дає комп'ютерам можливість навчатися, не будучи явно запрограмованим".

Узагальнення[ред.ред. код]

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

Машинне навчання, знання відкриття в базах даних (KDD) і інтелектуального аналізу даних[ред.ред. код]

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

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

Взаємодія з людиною[ред.ред. код]

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

Типи алгоритмів[ред.ред. код]

Підходи[ред.ред. код]

Штучні нейронні мережі Алгоритм навчання штучних нейронних мереж, зазвичай називається "нейронні мережі" (НМ), є алгоритм навчання, який опирається на структурні і функціональні аспекти біологічних нейронних мереж. Обчислення структуровані в термінах взаємозалежних груп штучних нейронів, обробки інформації з використанням звязкового підходу до обчислення. Сучасні нейронні мережі є інструментами нелінійного статистичного моделювання. Вони зазвичай використовуються для моделювання складних відносин між входами і виходами, щоб знайти закономірності в даних, або для захоплення статистичної структури в невідоме спільний розподіл ймовірностей між спостережуваними змінними.

Генетичне програмування[ред.ред. код]

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

Кластеризація[ред.ред. код]

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

Див. також[ред.ред. код]

Джерела[ред.ред. код]