Открыть сервис

DeepID

DeepID — это семейство алгоритмов и нейросетевых архитектур для распознавания лиц, разработанных исследовательской группой под руководством профессора Сунь Цзяня (Yi Sun) в Китайской академии наук (Chinese Academy of Sciences, CAS) и впоследствии в компании Megvii (Face++). DeepID (Deep hidden IDentity features) представляет собой метод извлечения глубоких скрытых признаков личности из изображений лиц с использованием свёрточных нейронных сетей (CNN), который позволил значительно повысить точность верификации и идентификации лиц по сравнению с традиционными подходами, основанными на ручном проектировании признаков (LBP, HOG, SIFT).

История развития

Контекст появления

До середины 2010-х годов системы распознавания лиц полагались на классические методы компьютерного зрения: выделение ключевых точек (landmarks), выравнивание, вычисление дескрипторов и классификацию с помощью методов опорных векторов (SVM) или случайных лесов. Точность таких систем на эталонных наборах данных (LFW — Labeled Faces in the Wild) составляла около 90–95%, что было недостаточно для надёжного практического применения.

Первая версия (DeepID1, 2014)

В 2014 году группа Сунь Цзяня опубликовала статью «Deep Learning Face Representation from Predicting 10,000 Classes» (CVPR 2014). В ней была предложена архитектура DeepID1 — свёрточная нейронная сеть с 4 свёрточными слоями, 3 слоями подвыборки (max-pooling) и одним полносвязным слоем (160-мерный вектор признаков). Сеть обучалась на задаче классификации лиц (10 000 идентичностей из набора CelebFaces) с использованием функции потерь softmax. После обучения 160-мерные признаки использовались для верификации (сравнения двух лиц) с помощью метрики косинусного расстояния или классификатора Joint Bayesian.

DeepID1 достигла точности 97,45% на LFW, что стало рекордом на тот момент, превзойдя человека (97,53%) и все существующие автоматические системы.

Вторая версия (DeepID2, 2014)

В том же 2014 году вышла статья «DeepID2: Learning Face Representation with Deep Hidden Identity Features and Contrastive Loss» (ECCV 2014). Основное нововведение — комбинированная функция потерь:

  • Softmax loss — для классификации по идентичностям.
  • Contrastive loss — для минимизации расстояния между признаками одного человека и максимизации расстояния между признаками разных людей.

Это позволило сети одновременно учиться разделять классы (идентичности) и формировать компактные кластеры для каждого человека. DeepID2 показала точность 99,15% на LFW.

Третья версия (DeepID2+, 2015)

В 2015 году была представлена DeepID2+ (статья «DeepID3: Face Recognition with Very Deep Neural Networks» — arXiv:1502.00873). Архитектура была углублена до 10–15 слоёв (на основе VGG-подобных блоков), добавлены остаточные соединения (skip connections). Выходной вектор признаков увеличен до 512 измерений. DeepID2+ достигла точности 99,47% на LFW, а DeepID3 — 99,53%.

Последующие версии и влияние

После DeepID3 исследовательская группа сосредоточилась на коммерциализации технологии через компанию Megvii (Face++). DeepID стал основой для многих последующих работ: FaceNet от Google (2015), SphereFace, ArcFace, CosFace. Принцип комбинирования классификационной и метрической потерь (contrastive loss) стал стандартом в задачах обучения представлений (representation learning) для распознавания лиц.

Архитектура и принцип работы

Основные компоненты

DeepID использует многоканальную архитектуру с несколькими ветвями (multi-patch), каждая из которых обрабатывает разные области лица:

  • Глобальное изображение (всё лицо).
  • Локальные патчи (глаза, нос, рот, левая/правая половина лица).
  • Горизонтальные полосы (лоб, средняя часть, подбородок).

Каждая ветвь представляет собой свёрточную нейронную сеть с общими весами (shared weights). Выходы ветвей конкатенируются и подаются на полносвязный слой, формирующий итоговый вектор признаков (Deep hidden IDentity features).

Процесс обучения

  1. Предобработка: детекция лица (например, с помощью Viola-Jones или MTCNN), выравнивание по глазам, нормализация яркости и контраста.
  2. Генерация патчей: из выровненного лица вырезается 10–20 различных областей разного масштаба.
  3. Обучение сети: каждая ветвь CNN обучается на задаче классификации (softmax loss) для 10 000–20 000 идентичностей. Одновременно применяется contrastive loss, который штрафует сеть за близость признаков разных людей и поощряет близость признаков одного человека.
  4. Извлечение признаков: после обучения для любого нового лица вычисляется 160–512-мерный вектор (дескриптор), инвариантный к освещению, позе, мимике и частичной окклюзии.

Верификация и идентификация

  • Верификация (1:1): вычисляется косинусное расстояние между двумя дескрипторами. Если расстояние меньше порога (например, 0.5), лица считаются принадлежащими одному человеку.
  • Идентификация (1:N): дескриптор запроса сравнивается с базой известных лиц (также представленных в виде дескрипторов). Выбирается ближайший сосед (по косинусному расстоянию или евклидовой метрике).

Классификация и варианты

По поколению

ВерсияГодКоличество слоёвРазмерность признакаТочность на LFWКлючевое нововведение
DeepID120144 свёрточных + 1 полносвязный16097,45%Первое применение CNN для распознавания лиц
DeepID220144 свёрточных + 1 полносвязный16099,15%Комбинация softmax + contrastive loss
DeepID2+201510–15 свёрточных51299,47%Углубление архитектуры, multi-patch
DeepID3201515–20 свёрточных51299,53%Остаточные соединения, VGG-подобные блоки

По типу обучения

  • С учителем (supervised): все версии DeepID обучались на размеченных данных (идентичности известны).
  • С частичным привлечением метрик: contrastive loss требует парных примеров (positive — одно лицо, negative — разные лица), что является формой метрического обучения.

Применение

Коммерческие системы

DeepID лёг в основу продуктов компании Megvii (Face++):

  • Face++ API: облачный сервис распознавания лиц, используемый в системах безопасности, банковском деле (верификация клиентов), розничной торговле (анализ посетителей).
  • Платформа Megvii Brain: инструмент для разработки приложений на основе компьютерного зрения.

Научные исследования

DeepID стал эталоном для сравнения новых методов распознавания лиц. Многие последующие работы (FaceNet, SphereFace, ArcFace) явно ссылаются на DeepID как на предшественника.

Практические задачи

  • Биометрическая аутентификация: разблокировка устройств, доступ к помещениям, подтверждение транзакций.
  • Поиск лиц в базах данных: криминалистика, поиск пропавших людей.
  • Анализ социальных сетей: автоматическое тегирование фотографий, группировка изображений по персонам.

Ограничения и критика

Зависимость от качества изображения

DeepID требует хорошо выровненных и освещённых лиц. При сильных поворотах головы (более 30°), экстремальном освещении или низком разрешении точность падает. Последующие архитектуры (например, ArcFace с нормализацией признаков) частично решили эту проблему.

Проблема масштабирования

Обучение на 10 000 классах (идентичностей) требовало больших вычислительных ресурсов (GPU Tesla K40). Для баз с миллионами идентичностей (например, национальные базы данных) такой подход становится непрактичным. Современные методы (CosFace, ArcFace) используют нормализацию признаков и угловые потери, что позволяет обучаться на меньшем числе классов.

Этические аспекты

Распознавание лиц, включая технологии на основе DeepID, критикуется за потенциальное нарушение приватности, возможность массовой слежки и ошибочную идентификацию людей с тёмным цветом кожи (из-за дисбаланса в обучающих данных). В ряде стран (например, в некоторых штатах США) введены ограничения на использование таких систем правоохранительными органами.

Устаревание

К 2020 году DeepID уступил место более эффективным архитектурам (ArcFace, CosFace, MagFace), которые используют угловые потери (angular margin) и достигают точности 99,8%+ на LFW. Однако принципы, заложенные в DeepID (multi-patch, комбинирование потерь, извлечение глубоких признаков), остаются фундаментом современного распознавания лиц.

Интересные факты

  • Название «DeepID» расшифровывается как «Deep hidden IDentity features» — подчёркивая, что сеть извлекает неявные, глубокие признаки личности, неочевидные для человека.
  • DeepID2 впервые показала, что комбинация классификационной и метрической потерь даёт синергетический эффект, превосходящий каждую из потерь по отдельности.
  • Набор данных CelebFaces (использованный для обучения DeepID) содержал 10 000 идентичностей и 200 000 изображений — на тот момент крупнейшая публичная коллекция лиц.
  • Технология DeepID была внедрена в систему распознавания лиц Alibaba Group для оплаты покупок (Alipay Face Recognition) с 2015 года.

Источники

  • Sun Y., Wang X., Tang X. Deep Learning Face Representation from Predicting 10,000 Classes. CVPR, 2014.
  • Sun Y., Chen Y., Wang X., Tang X. DeepID2: Learning Face Representation with Deep Hidden Identity Features and Contrastive Loss. ECCV, 2014.
  • Sun Y., Liang D., Wang X., Tang X. DeepID3: Face Recognition with Very Deep Neural Networks. arXiv:1502.00873, 2015.
  • Taigman Y., Yang M., Ranzato M., Wolf L. DeepFace: Closing the Gap to Human-Level Performance in Face Verification. CVPR, 2014.
  • Schroff F., Kalenichenko D., Philbin J. FaceNet: A Unified Embedding for Face Recognition and Clustering. CVPR, 2015.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →