5 причин, чому вам потрібні синтетичні дані

5 причин, чому вам потрібні синтетичні дані

Вихідний вузол: 1942868

5 причин, чому вам потрібні синтетичні дані
Синтетичні дані, отримані з Кубрич
 

Щоб навчити модель машинного навчання, вам потрібні дані. Завдання з науки про дані зазвичай не є змаганнями Kaggle, де у вас є чудовий великий набір даних, який попередньо позначений. Іноді вам доводиться збирати, систематизувати та очищати власні дані. Цей процес збору та позначення даних у реальному світі може бути трудомістким, громіздким, дорогим, неточним і іноді небезпечним. Крім того, наприкінці цього процесу ви можете отримати дані, з якими ви зіткнулися в реальному світі, не обов’язково ті дані, які вам хотілося б з точки зору якості, різноманітності (наприклад, дисбаланс класів) і кількості. Нижче наведено типові проблеми, з якими можна зіткнутися під час роботи з реальними даними. 

  • Реальний збір даних і маркування не масштабуються
  • Вручну позначити реальні дані іноді неможливо
  • Справжні дані мають проблеми з конфіденційністю та безпекою
  • Реальні дані не програмуються
  • Модель, навчена виключно на реальних даних, недостатньо продуктивна (наприклад, повільна швидкість розробки)

На щастя, подібні проблеми можна вирішити за допомогою синтетичних даних. Вам може бути цікаво, що таке синтетичні дані? Синтетичні дані можна визначити як штучно створені дані, які зазвичай створюються за допомогою алгоритмів, що імітують процеси реального світу, від поведінки інших учасників дорожнього руху до поведінки світла під час взаємодії з поверхнею. У цьому дописі розповідається про обмеження реальних даних і про те, як синтетичні дані можуть допомогти подолати ці проблеми та покращити продуктивність моделі. 

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

[вбудований вміст][вбудований вміст]

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

Програмне забезпечення з відкритим кодом для створення синтетичних даних: Кубрич (багатооб’єктне відео з масками сегментації, картами глибини та оптичним потоком) і SDV (табличні, реляційні дані та дані часових рядів).

Деякі (з багатьох) компанії, які продають продукти або створюють платформи, які можуть генерувати синтетичні дані, включають Gretel.ai (синтетичні набори даних, які забезпечують конфіденційність реальних даних), NVIDIA (всесвіт), і Паралельний домен (автономні транспортні засоби). Для більш, перегляньте список компаній із синтетичних даних за 2022 рік

5 причин, чому вам потрібні синтетичні дані
Зображення з Паралельний домен
 

Є деякі дані, які люди не можуть повністю інтерпретувати та позначити. Нижче наведено деякі випадки використання, коли синтетичні дані є єдиним варіантом: 

  • Точна оцінка глибини і оптичний потік з окремих зображень
  • Програми для автономного керування, які використовують дані радара, які не бачать людське око 
  • Створення глибоких фейків, які можна використовувати для тестування систем розпізнавання обличчя

5 причин, чому вам потрібні синтетичні дані
Зображення на Михайло Галарник
 

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

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

Нижче наведено деякі компанії, які використовують синтетичні дані для підвищення безпеки програм: Toyota, Веймо та Круїз.

5 причин, чому вам потрібні синтетичні дані
Зображення з Паралельний домен
 

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

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

Ось де на допомогу приходять синтетичні дані. API генерації синтетичних даних дозволяють створювати набори даних. Ці API можуть заощадити вам багато грошей, оскільки створювати роботів і збирати дані в реальному світі дуже дорого. Набагато краще та швидше спробувати згенерувати дані та з’ясувати інженерні принципи за допомогою створення синтетичного набору даних.

Нижче наведено приклади, які підкреслюють, як програмовані синтетичні дані допомагають моделям навчатися: запобігання шахрайським транзакціям (American Express), краще виявлення велосипедистів (паралельний домен) та аналіз і огляд операцій (Hutom.io).

5 причин, чому вам потрібні синтетичні дані
Етапи циклу розробки моделі | Зображення з Жюль С. Дамджі 
 

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

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

 

5 причин, чому вам потрібні синтетичні дані
Зображення з Очевидно, ШІ
 

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

 

5 причин, чому вам потрібні синтетичні дані
Зображення з Gretel.ai
 

Зауважте, що на цій діаграмі не показано, як синтетичні дані також можна використовувати для таких речей, як Тестування MLOps у рекомендаціях.

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

Генерація синтетичних даних стає все більш поширеною в робочих процесах машинного навчання. Насправді, Gartner прогнозує, що до 2030 року для навчання моделей машинного навчання синтетичні дані будуть використовуватися набагато більше, ніж дані реального світу. Якщо у вас є запитання чи думки щодо цієї публікації, не соромтеся зв’язатися в коментарях нижче або через Twitter.
 
 
Михайло Галарник є фахівцем із науки про дані та працює у відділі стосунків з розробниками в Anyscale.
 

Часова мітка:

Більше від KDnuggets