Конструювання ознак
процес, який створює функції для машинного навчання, перетворюючи або поєднуючи існуючі функції З Вікіпедії, вільної енциклопедії
Конструюва́ння озна́к (англ. feature engineering) — це процес застосування знань предметної галузі для створення ознак, які забезпечують роботу алгоритмів машинного навчання. Конструювання ознак є фундаментальним для застосування машинного навчання, і є як складним, так і витратним. Потребу в ручному конструюванні ознак можливо усувати автоматизованим навчанням ознак.
Конструювання ознак є неформальним предметом, але вважається істотним у прикладному машинному навчанні.
Підходити до ознак складно, витратно за часом, вимагає експертних знань. «Прикладне машинне навчання» є в основному конструюванням ознак.Оригінальний текст (англ.)Coming up with features is difficult, time-consuming, requires expert knowledge. "Applied machine learning" is basically feature engineering.
Ознаки
Ознака це атрибут або властивість, що поділяють всі незалежні елементи, аналіз або передбачування яких потрібно здійснювати. Ознакою може бути будь-який атрибут, доки він є корисним для моделі.
Призначенням ознаки, на відміну від того, щоби бути просто атрибутом, є набагато легше розуміння контексту задачі. Ознака є характеристикою, яка може допомогти при розв'язуванні задачі.[2]
Важливість
Узагальнити
Перспектива
Ознаки є важливими для передбачувальних моделей, і впливають на результати.[3]
Ви можете сказати, що чим кращими є ознаки, тим кращим буде результат. Це не зовсім вірно, оскільки отримувані результати також залежать від моделі та даних, а не лише від обраних ознак. Проте обрання правильних ознак все одно є дуже важливим. Кращі ознаки можуть продукувати простіші та гнучкіші моделі, і вони часто дають кращі результати.[2]
Алгоритми, що ми застосовували, є цілком стандартними для кеґлерів… Ми витратили більшість своїх зусиль на розробку ознак… Ми також були дуже обережними у скасуванні ознак, що могли піддати нас ризику перенавчання нашої моделі.Оригінальний текст (англ.)The algorithms we used are very standard for Kagglers. […] We spent most of our efforts in feature engineering. [...] We were also very careful to discard features likely to expose us to the risk of over-fitting our model.
… деякі проекти машинного навчання досягають успіху, а деякі зазнають невдачі. В чому різниця? Просто найважливішим чинником є використані ознаки.Оригінальний текст (англ.)…some machine learning projects succeed and some fail. What makes the difference? Easily the most important factor is the features used.
Процес
Процес конструювання ознак:[6]
- Наштурмовування або тестування ознак[7];
- Ухвалення рішення про те, які ознаки створювати;
- Створення ознак;
- Перевірка, як ці ознаки працюють з вашою моделлю;
- Покращення ознак у разі потреби;
- Повернення до мозкового штурму/створення ще ознак, поки роботу не буде зроблено.
Доречність
Ознака вона може бути сильно доречною (тобто, ця ознака має інформацію, що не існує в жодній іншій ознаці), доречною, слабко доречною (деякою інформацією, що включають інші ознаки), або недоречною.[8] Навіть якщо деякі з ознак і є недоречними, мати забагато краще, ніж упустити важливі. Для запобігання перенавчанню можливо застосовувати обирання ознак.[9]
Вибух ознак
Поєднанням ознак або шаблонами ознак, обидва з яких ведуть до швидкого зростання загальної кількості ознак, може бути спричинено вибух ознак (англ. feature explosion).
- Шаблони ознак — реалізація шаблонів ознак замість кодування нових ознак
- Поєднання ознак — поєднання, що не може бути представлено лінійною системою
Вибух ознак можливо зупиняти такими методиками як регуляризація, ядровий метод, обирання ознак.[10]
Автоматизування
Автоматизування конструювання ознак є передовою темою досліджень. 2015 року дослідники з МТІ представили алгоритм глибинного синтезу ознак (англ. Deep Feature Synthesis algorithm) та показали його дієвість в інтерактивних змаганнях з науки про дані, де він побив 615 з 906 людських команд.[11][12] Глибинний синтез ознак є доступним як відкрита бібліотека, звана Featuretools.[13] За цією працею з'явилися інші дослідження, включно з OneBM IBM[14] та ExploreKit Берклі.[15] Ці дослідники в IBM заявили, що автоматизування конструювання ознак «допомагає науковцям з даних знижувати час на дослідження даних, даючи їм можливість пробувати методом спроб і помилок багато ідей за короткий час. З іншого боку, воно дає можливість неекспертам, що не знайомі з наукою про дані, швидко виділяти цінність з їхніх даних із невеликими зусиллями, часом та витратами». Автоматичне конструювання ознак дозволяє робити теорема вбудовування Бургена.[16]
Див. також
- Коваріата
- Гешувальний прийом[en]
- Ядрові методи
- Перелік наборів даних для досліджень машинного навчання
- Відображення простору[en]
Примітки
Wikiwand - on
Seamless Wikipedia browsing. On steroids.