Ознака (машинне навчання)

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

В машинному навчанні та розпізнаванні образів озна́ка (англ. feature) — це окрема властивість або характеристика спостережуваного явища, яку можливо виміряти.[1] Обрання інформативних, розрізнювальних і незалежних ознак є ключовим кроком алгоритмів розпізнавання образів, класифікації та регресії. Ознаки є зазвичай числовими, але в синтаксичному розпізнаванні образів[en] використовують і структуровані ознаки, такі як стрічки та графи. Поняття «ознака» є пов'язаним із поняттям описової змінної, що застосовують у таких статистичних методиках як лінійна регресія.

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

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

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

Приклади[ред. | ред. код]

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

В розпізнаванні мовлення до ознак записів фонем можуть належати рівні шуму, тривалість звуків, відносна потужність, збіг з фільтрами та багато іншого.

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

В комп'ютерному баченні існує велика кількість можливих ознак, таких як контури та об'єкти.

Розширення[ред. | ред. код]

В розпізнаванні образів та машинному навчанні ве́ктор озна́к (англ. feature vector) — це n-вимірний вектор числових ознак, що представляють певний об'єкт. Багато алгоритмів у машинному навчанні вимагають чисельного представлення об'єктів, оскільки такі представлення полегшують обробку та статистичний аналіз. При представленні зображень значення ознак можуть відповідати пікселям зображення, тоді як при представленні текстів ознаки можуть бути частотами трапляння текстових термінів. Вектори ознак еквівалентні векторам описових змінних, що використовують в статистичних процедурах, таких як лінійна регресія. Вектори ознак часто об'єднують з ваговими коефіцієнтами за допомогою скалярного добутку з метою побудови функції лінійного передбачення[en], що застосовують для визначення оцінки для здійснення передбачення.

Векторний простір, пов'язаний із цими векторами, часто називають про́стором озна́к (англ. feature space). Задля зменшення розмірності простору ознак можливо застосовувати ряд методик зниження розмірності.

Із вже наявних ознак можливо отримувати ознаки вищого рівня, і додавати їх до вектора ознак; наприклад, для дослідження хвороб є корисною ознака «Вік», і її визначають як Вік = «Рік смерті» мінус «Рік народження». Цей процес називають побудо́вою озна́к (англ. feature construction).[2][3] Побудова ознак є застосуванням набору побудовних операторів до набору наявних ознак, що дає в результаті побудову нових ознак. Приклади таких побудовних операторів включають перевірку на умови рівності {=, ≠}, арифметичні оператори {+,−,×, /}, оператори над масивами {max(S), min(S), average(S)}, а також інші складніші оператори, наприклад, count(S,C),[4] що підраховує кількість ознак у векторі ознак S, які задовольняють певну умову C, або, наприклад, відстані до інших класів розпізнавання, узагальнених якимось приймальним пристроєм. Побудову ознак вже давно вважають потужним інструментом для покращення як точності, так і розуміння структури, зокрема, в задачах високих розмірностей.[5] До її застосувань належать дослідження хвороб та розпізнавання емоцій з мовлення.[6]

Обирання та виділяння[ред. | ред. код]

Початковий набір сирих ознак може бути надлишковим і занадто великим, щоби впоратися з ним. Тому підготовчий крок багатьох застосувань машинного навчання та розпізнавання образів складається з вибирання підмножини ознак, або з побудови нового зменшеного набору ознак для полегшення навчання і для покращення узагальнення та можливості інтерпретації[джерело?].

Виділяння та вибирання ознак є поєднаннями мистецтва та науки; розробка систем, які це роблять, є відомою як конструювання ознак. Воно вимагає експериментування з багатьма можливостями, та поєднання автоматизованих методик з інтуїцією та знаннями профільного експерта[en]. Автоматизація цього процесу є навчанням ознак, коли машина не лише використовує ознаки для навчання, але й навчається самих ознак.

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

Примітки[ред. | ред. код]

  1. Bishop, Christopher (2006). Pattern recognition and machine learning. Berlin: Springer. ISBN 0-387-31073-8. (англ.)
  2. Liu, H., Motoda H. (1998) Feature Selection for Knowledge Discovery and Data Mining., Kluwer Academic Publishers. Norwell, MA, USA. 1998. (англ.)
  3. Piramuthu, S., Sikora R. T. Iterative feature construction for improving inductive learning algorithms. In Journal of Expert Systems with Applications. Vol. 36 , Iss. 2 (March 2009), pp. 3401-3406, 2009 (англ.)
  4. Bloedorn, E., Michalski, R. Data-driven constructive induction: a methodology and its applications. IEEE Intelligent Systems, Special issue on Feature Transformation and Subset Selection, pp. 30-37, March/April, 1998 (англ.)
  5. Breiman, L. Friedman, T., Olshen, R., Stone, C. (1984) Classification and regression trees, Wadsworth (англ.)
  6. Sidorova, J., Badia T. Syntactic learning for ESEDA.1, tool for enhanced speech emotion detection and analysis. Internet Technology and Secured Transactions Conference 2009 (ICITST-2009), London, November 9–12. IEEE (англ.)