Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

One-Shot Learning

Откройте для себя мощь обучения с одного примера (One-Shot Learning), революционной техники AI, позволяющей моделям обобщать данные из минимального объема данных для реальных приложений.

Одномоментное обучение (One-Shot Learning, OSL) - это сложный подход в рамках машинного обучения (ML), при котором модель разрабатывается для распознавания и категоризации новых объектов на основе только одного помеченного примера. В отличие от традиционных методов глубокого обучения (DL), которые требуют огромных огромные хранилища обучающих данных для достижения высокой OSL имитирует человеческую когнитивную способность мгновенно усваивать новую концепцию, увидев ее всего один раз. Эта Эта способность особенно важна для приложений, где маркировка данных стоит дорого, данных мало или новые категории появляются динамически, как, например, при проверке личности или выявлении редких аномалий.

Механизмы одномоментного обучения

Основной механизм, лежащий в основе OSL, заключается в переносе задачи с классификации на оценку различий. Вместо того чтобы обучения модели для запоминания конкретных классов (например, "кошка" против "собаки"), система обучается функцию сходства. Для этого часто используется нейронной сети (НС), известной как Сиамская сеть. Сиамские сети используют идентичные подсети, которые имеют одинаковые веса модели для обработки двух разных входных изображений одновременно.

В ходе этого процесса сеть преобразует высокоразмерные входные данные (например, изображения) в компактные низкоразмерные векторы. известные как вкрапления. Если два изображения принадлежат одному классу, сеть обучается располагать их вкрапления близко друг к другу в векторном пространстве. И наоборот, если если они разные, то их вкрапления раздвигаются. Этот процесс в значительной степени опирается на эффективное извлечения признаков, чтобы уловить уникальную сущность объекта. Во время вывода новое изображение классифицируется путем сравнения его вложения с единственным хранящимся в памяти "выстрелом" каждого класса с помощью метрики расстояния, такой как Евклидово расстояние или косинусное сходство.

Следующий фрагмент Python иллюстрирует извлечение вкраплений с помощью YOLO11 и вычислить сходство между известным "снимком" и новым изображением для запроса.

import numpy as np
from ultralytics import YOLO

# Load a pre-trained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")

# Extract embeddings for a 'shot' (reference) and a 'query' image
# The model returns a list of results; we access the first item
shot_result = model.embed("reference_image.jpg")[0]
query_result = model.embed("test_image.jpg")[0]

# Calculate Cosine Similarity (1.0 = identical, -1.0 = opposite)
# High similarity suggests the images belong to the same class
similarity = np.dot(shot_result, query_result) / (np.linalg.norm(shot_result) * np.linalg.norm(query_result))

print(f"Similarity Score: {similarity:.4f}")

Различение родственных парадигм обучения

Для понимания OSL необходимо отличать ее от других методов обучения с малым объемом данных. Хотя их объединяет цель эффективность, их ограничения существенно различаются:

  • Few-Shot Learning (FSL): Этот более широкая категория, включающая OSL. В FSL модели предоставляется небольшой набор примеров - обычно от двух до пяти на класс. OSL - это просто самый крайний случай FSL, когда количество примеров ($k$) равно 1.
  • Zero-Shot Learning (ZSL): ZSL позволяет сделать еще один шаг вперед в сторону нехватки данных, требуя от модели определять классы, которые она никогда не видела визуально. Она полагается на семантический поиск и метаданные, связывая визуальные признаки с текстовыми описаниями (например, определить "зебру", зная, что она похожа на "полосатую лошадь").
  • Трансферное обучение: Этот В этом случае модель предварительно обучается на большом наборе данных, например ImageNetи и настраивает ее на меньшем, специфическом для конкретной задачи наборе данных. Хотя трансферное обучение снижает требования к данным, оно, как правило, все равно требует больше одного примера, чтобы предотвратить чрезмерной подгонки.

Применение в реальном мире

Одномоментное обучение позволило искусственный интеллект (ИИ) функционирует в динамичных средах, где переобучение моделей нецелесообразно.

  1. Распознавание лиц: Наиболее Самый распространенный вариант использования - биометрическая безопасность. Когда пользователь регистрирует свое лицо на смартфоне, устройство захватывает единственное эталонное представление ("один снимок"). В дальнейшем система использует принципы OSL для проверки личности пользователя путем сравнения живого изображения с сохраненным эталоном, что значительно повышает безопасность данных. Этот метод был популяризирован в таких исследованиях, как исследованиях, таких как FaceNet компании Google, в которых использовались триплетные потери для обучения встраиванию.
  2. Промышленный контроль качества: В производстве дефекты могут быть крайне редкими и разнообразными. Это трудно собрать большой набор данных сломанных деталей для традиционного обучения. OSL позволяет системе компьютерного зрения изучить внешний вид "идеальной" детали по одному эталонному изображению. Любая деталь, которая значительно отклоняется от нормы в пространстве встраивания отмечается как аномальное событие, что позволяет немедленно обеспечить контроль качества на новых производственных линиях.

Проблемы и перспективы

Несмотря на свою полезность, One-Shot Learning сталкивается с проблемами обобщения. Поскольку модель определяет класс на основе одного экземпляра, она подвержена влиянию шума или выбросов в этом эталонном изображении. Исследователи часто используют метаобучение, или "обучение для обучения", чтобы чтобы повысить стабильность этих моделей. Такие фреймворки, как PyTorch и TensorFlow постоянно развиваются для поддержки этих передовых архитектуры. Кроме того, включение синтетических данных может помочь дополнить одиночный снимок, обеспечивая более надежное представление для обучения модели.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас