Основи ШІ

Що таке навчання з декількома зразками?

mm
Додайте Unite.AI до бажаних джерел у Google

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

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

Що таке навчання з декількома зразками?

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

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

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

Підкатегорії

Фраза “навчання з декількома зразками” насправді є лише одним типом навчання, який використовує дуже мало тренувальних прикладів. Оскільки ви використовуєте лише “декілька” тренувальних прикладів, існують підкатегорії навчання з декількома зразками, які також включають навчання з мінімальною кількістю даних. “Навчання з одним зразком” є іншим типом навчання моделі, яке включає навчання моделі розпізнавати об’єкт після того, як вона побачила лише один зразок цього об’єкта. Загальні тактики, використовувані в навчанні з одним зразком та навчанні з декількома зразками, однакові. Будьте обережні, оскільки термін “навчання з декількома зразками” може використовуватися як термін- парасолька для опису будь-якої ситуації, коли модель навчається з дуже мало даних.

Підходи до навчання з декількома зразками

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

Підходи на рівні даних

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

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

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

Підходи на рівні параметрів

Мета-навчання

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

Мета-навчання використовує дві різні моделі: вчителя та учня. Модель “вчителя” та алгоритм “учня”. Модель вчителя вчиться, як інкапсулювати параметричний простір, тоді як алгоритм учня вчиться, як розпізнавати та класифікувати фактичні об’єкти у наборі даних. Інакше кажучи, модель вчителя вчиться, як оптимізувати модель, тоді як модель учня вчиться, як класифікувати. Вихідні дані моделі вчителя використовуються для навчання моделі учня, показуючи моделі учня, як переміщатися у великому параметричному просторі, який виникає через недостатню кількість тренувальних даних. Отже, “мета” у мета-навчанні.

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

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

Повний процес навчання градієнтного мета-навчання наступний:

  1. Створіть базову модель (вчителя)
  2. Навчіть базову модель на підтримуючому наборі
  3. Дайте базовій моделі повернути передбачення для запиту набору
  4. Навчіть мета-навчання (модель учня) на втраті, отриманій з класифікаційної помилки

Варіації мета-навчання

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

Як ми розглянули вище, градієнтний мета-навчання використовує попередній досвід, отриманий моделлю вчителя, для тонкої настройки себе та надання більш точних передбачень для малої кількості тренувальних даних. Однак початок з випадково ініціалізованих параметрів означає, що модель все ще потенційно може перенавчитися на даних. Для уникнення цього створюється “модель-агностичне” мета-навчання шляхом обмеження впливу моделі вчителя/базової моделі. Замість прямого навчання моделі учня на втраті за передбаченнями, зробленими моделлю вчителя, модель учня навчається на втраті за своїми власними передбаченнями.

Для кожного епізоду навчання моделі-агностичного мета-навчання:

  1. Створіть копію поточної моделі мета-навчання.
  2. Навчіть копію з допомогою базової моделі/моделі вчителя.
  3. Дайте копії повернути передбачення для тренувальних даних.
  4. Обчисліть втрату, щоб оновити мета-навчання.

Метри-навчання

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

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

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

Застосування навчання з декількома зразками

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

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

Блогер і програміст з спеціалізацією у темах Machine Learning і Deep Learning. Даніель сподівається допомогти іншим використовувати силу штучного інтелекту для соціальної добробути.