За останні десять років штучний інтелект або машинне навчання пережили величезний підйом. Зараз багато галузей інвестують значні кошти в рішення на основі машинного навчання. Також різко зріс попит на кваліфікованих спеціалістів.
Кілька університетів у всьому світі пропонують дипломи з акцентом на науку про дані або штучний інтелект, і цей зміст також набуває все більшого значення в німецьких університетах. У той час як університети, як правило, зосереджені на математичних і теоретичних концепціях, навички та знання, необхідні для навчання моделей машинного навчання на реальних проблемах, можуть бути зовсім різними.
Наявність необхідних даних
У більшості випадків наявність даних визначає, чи можна використовувати машинне навчання для вирішення певної проблеми. Перед початком нового проекту виникає запитання: чи буде модель, навчена на цих даних, давати правильні відповіді більшість часу?
Це запитання стосується незалежно від моделі, бібліотеки чи мови, вибраної для експерименту ML. І є ще важливі критерії. Модель хороша настільки, наскільки хороші дані, якими вона подається. Тому важливо уточнити:
- Чи достатньо даних для підготовки хорошої моделі? За умови, що це не перевищує бюджет апаратного забезпечення, майже завжди правильно використовувати більше даних.
- Чи надійні прогнози в контрольованому навчальному процесі? Чи надається модель правильна інформація?
- Чи є ці дані точним відображенням реального розподілу? Чи достатньо варіацій у зразках, щоб охопити проблемну область?
- Чи є постійний доступ до постійного потоку нових даних для оновлення моделі та її актуальності?
збирання даних
Дані, необхідні для створення набору даних для рішення ML, часто розподіляються між кількома джерелами. Різні частини вибірки збираються з різних продуктів і керуються різними командами на різних платформах. Тому наступним кроком у процесі часто є консолідація всіх цих даних в єдиному форматі та збереження їх у легкодоступний спосіб.
Більше викликів і прокляття
Після зібраних і узагальнених даних можна подумати, що чудовий новий алгоритм ML буде готовий до роботи. Але все ще необхідні подальші кроки, тому що неминуче буде ще низка проблем, які потрібно подолати:
Відсутні дані
Іноді дійсні значення можуть бути недоступні для всіх спостережень. Дані могли бути пошкоджені під час збирання, зберігання або передачі, тому важливо знайти ці відсутні точки даних і, якщо необхідно, видалити їх із набору даних.
повторювані дані
Хоча це не особливо тривожна проблема з точки зору продуктивності моделі, дублікати даних слід видалити зі сховища даних, щоб зробити процес навчання моделі більш ефективним і, можливо, уникнути переобладнання.
Різні схеми нормалізації
Незначні відмінності в способі обробки та зберігання даних можуть викликати серйозні проблеми під час навчання моделі. Наприклад, різні продукти можуть обрізати те саме поле вільного тексту до різної довжини або по-різному анонімізувати дані, що призводить до невідповідності даних. Якщо одне з цих джерел містить здебільшого зловмисне програмне забезпечення, а інше джерело містить доброякісні шаблони, модель ML може навчитися їх ідентифікувати, наприклад, на основі довжини скорочення.
дані поля вільного тексту
Це справді заслуговує окремої категорії, оскільки з цим може бути дуже важко впоратися. Поля вільного тексту є бідою для розробника даних, оскільки йому доводиться мати справу з друкарськими помилками, сленгом, майже дублікатами, варіаціями великих літер, пробілів, пунктуації та цілою низкою інших невідповідностей.
Постійне оновлення
Нарешті, дрейф даних є важливою проблемою, яку необхідно вирішити при розробці системи машинного навчання. Коли модель навчена, з часом вона стає все більш неточною, оскільки розподіл нових вхідних даних змінюється. Тому слід запланувати регулярне оновлення моделі, щоб гарантувати, що продуктивність продовжує залишатися в очікуваних межах.
Наприклад, у сфері безпеки ми спостерігаємо велику нестабільність, оскільки суб’єкти загрози з часом змінюють свої дії та поведінку, а вразливості виявляються та усуваються. Це було коротке резюме типових кроків, які необхідно виконати для вибору, збору та очищення даних для рішення ML. Якщо все це зроблено, чистий набір даних, ймовірно, доступний. Експеримент можна починати.
[starboxid=15]