Как нейросеть распознает лица

0
22

Нейросеть для распознавания лиц. Часть 2

Точность

В июне 2023 года Европарламент предварительно одобрил законопроект о регулировании ИИ — с предложением запретить онлайн-системы распознавания лиц в общественных местах. Кроме того, под запрет подпадают и механизмы распознавания эмоций. Если закон утвердят, их нельзя будет применять работодателям, устанавливать в полиции и в учебных заведениях. Теперь проект обсуждается с Еврокомиссией, далее его передадут в Совет ЕС.

Таким образом, обычные очки перестали быть препятствием для высоких технологий. Если ваша цель – остаться невидимым для камер, то придется сильно потрудиться и привлечь к себе внимание обычных людей, вместо роботов. Ну а если вы с нейросетями хотите дружить и сотрудничать в быту, то очки точно не станут проблемой для вашего взаимодействия.

Для достижения высокой точности распознавания нейронная сеть предобучается на большом массиве изображений, например, таком, как в базе данных MegaFace .Это основной метод обучения для распознавания лиц. Рис. 6. База данных MegaFace содержит 1 млн. изображений более 690 тыс. людей После того, как сеть обучена распознавать лица, процесс распознавания лица может быть описан следующим образом (рис.7). Сначала изображение обрабатывается с помощью детектора лица: алгоритма, который определяет прямоугольный фрагмент изображения с лицом. Этот фрагмент нормализуется для того, чтобы легче обрабатываться нейронной сетью: наилучший результат будет достигнут, если все входные изображения будут одинакового размера, цветности Нормализованное изображение подаётся на вход нейронной сети для обработки алгоритмом. Данный алгоритм обычно является уникальной разработкой компании для повышения качества распознавания, однако существуют и «стандартные» решения для данной задачи. Нейронная сеть строит уникальный вектор признаков, который затем переносится в базу данных. Поисковая система сравнивает его со всеми векторами признаков, хранящихся в базе данных, и даёт результат поиска в виде определённого числа имён или профилей пользователей со схожими лицевыми признаками, каждому из которых присваивается определённое число. Это число представляет собой степень схожести нашего вектора признаков с найденным в базе данных. Рис. 7. Процесс распознавания лица

Однако при изменении кода сети и «тренировки» ее на 10 добровольцах, программа успешно справлялась с распознаванием большинства испытуемых. Так что такой обман – только вопрос правильного процесса обучения робота и задача для следующего цикла его развития.

Системы распознавания лиц со встроенными самообучающимися нейросетями давно стали частью повседневности. Если вам до сих пор кажется, что будущее далеко – вспомните о разблокировке экрана современных смартфонов, которые узнают вас даже с бородой, в маске или в солнечных очках лучше любого шпиона. Помимо этого, такие системы «узнавания» используются для проведения биометрии в банкоматах и отделениях банков, на улицах больших городов давно работает «Витязь», отслеживающий преступников, а на крупных предприятиях сотрудники получают доступ по сканированию радужки глаза.

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

Нейронная сеть в простейшем случае — математическая модель, состоящая их нескольких слоёв элементов, выполняющих параллельные вычисления. Изначально такая архитектура была создана по аналогии с мельчайшими вычислительными элементами человеческого мозга — нейронами. Минимальные вычислительные элементы искусственной нейронной сети тоже называются нейронами. Нейронные сети обычно состоят из трёх или более слоёв: входного слоя, скрытого слоя (или слоёв) и выходного слоя (рис. 1), в некоторых случаях входной и выходной слои не учитываются, и тогда количество слоёв в сети считается по количеству скрытых слоёв. Такой тип нейронной сети называется перцептрон. Рис. 1. Простейший перцептрон Важной особенностью нейронной сети является её умение обучаться на примерах, это называется обучением с учителем. Нейронная сеть обучается на большом количестве примеров, состоящих из пар вход-выход (соответствующие друг другу вход и выход). В задачах распознавания объектов такой парой будет входное изображение и соответствующий ему лейбл — название объекта. Обучение нейронной сети — итеративный процесс, уменьшающий отклонение выхода сети от заданного «ответа учителя» — лейбла, соответствующего данному изображению (Рис. 2). Этот процесс состоит из шагов, называемых эпохами обучения (они обычно исчисляются тысячами), на каждом из которых происходит подгонка «весов» нейронной сети — параметров скрытых слоёв сети. По завершении процесса обучения качество работы нейронной сети обычно достаточно хорошее для выполнения задачи, под которую она была обучена, хотя оптимальный набор параметров, идеально распознающий все изображения, часто подобрать невозможно. Рис. 2. Обучение нейронной сети

Глубокие, или глубинные, нейронные сети — это нейронные сети, состоящие из нескольких скрытых слоёв (Рис.3). Данный рисунок представляет собой изображение глубинной нейронной сети, дающее читателю общее представление о том, как выглядит нейронная сеть. Тем не менее, реальная архитектура глубинных нейронных сетей гораздо сложнее. Рис. 3. Нейронная сеть с множеством скрытых слоёв Создатели свёрточных нейронных сетей, конечно, сначала вдохновились биологическими структурами зрительной системы. Первые вычислительные модели, основанные на концепции иерархической организации визуального потока примата, известны как Неокогнитрон [1] Фукушимы (Рис.4). Современное понимание физиологии зрительной системы схоже с типом обработки информации в свёрточных сетях, по крайней мере, для быстрого распознавания объектов. Рис. 4. Диаграмма, показывающая связи между слоями в модели Неокогнитрон [1]. Позже эта концепция была реализована канадским исследователем Яном ЛеКуном в его свёрточной нейронной сети, созданной им для распознавания рукописных символов [2]. Данная нейронная сеть состояла из слоёв двух типов: свёрточных слоев и субдискретизирующих (subsampling) слоёв (или слоёв подвыборки-pooling). В ней каждый слой имеет топографическую структуру, то есть каждый нейрон связан с фиксированной точкой исходного изображения, а также с рецептивным полем (областью входного изображения, которая обрабатывается данным нейроном). В каждом месте каждого слоя существует целый ряд различных нейронов, каждый со своим набором входных весов, связанных с нейронами в прямоугольном фрагменте предыдущего слоя. Разные входные прямоугольные фрагменты с одинаковым набором весов связаны с нейронами из разных локаций. Общая архитектура глубинной нейронной сети для распознавания образов представлена на рисунке 5. Входное изображение представлено в виде набора пикселей или небольших участков изображения (например, 5-на-5 пикселей) Рис. 5. Диаграмма свёрточной нейронной сети Как правило, глубинные нейронные сети изображены в упрощённом виде: как стадии обработки, которые иногда называют фильтрами. Каждая стадия отличается от другой рядом характеристик, таких как размер рецептивного поля, тип признаков, который сеть учится распознавать в данном слое, и тип вычислений, выполняемых на каждой стадии. Сферы применения глубинных нейронных сетей, в том числе свёрточных сетей, не ограничиваются распознаванием лиц. Они широко используются для распознавания речи и аудио-сигналов, обработки показаний с разного типа сенсоров или для сегментации сложных многослойных изображений (таких как спутниковые карты [3]) или медицинских изображений (рентгеновские снимки, снимки фМРТ- см. здесь).

ЧИТАТЬ ТАКЖЕ:  Нейросеть которая дописывает музыку

Что такое глубокие нейронные сети

Часто помимо непосредственно результата сравнения, требуется оценить уровень «уверенности» системы в своём решении. Такое значение называют термином «уровень сходства» (или подобия, similarity score). Больший показатель сходства указывает на то, что два сравниваемых биометрических образца более похожи.

Результаты эксперимента объясняются тем, что натренированный алгоритм перестает видеть «опорные точки», по которым он производит анализ индивидуальных черт лица. Если и глаза, и контур лица, и его черты остаются одновременно закрытыми, робот перестает распознавать объект на изображении как человеческое лицо – и не считывает его вообще.

Для обмана нейросети ученые использовали обычную пластиковую оправу без стекол, на которую была нанесена обычная бумага с печатью, содержащая ритмичный цветной принт. В результате проведенного эксперимента из 143 добровольцев нейросеть не смогла узнать никого из тех, кто носил эти специально подготовленные очки.

Для повышения точности распознавания и уменьшения ошибок могут быть добавлены дополнительные шаги. Например, тренировочный набор данных с изменением угла съемки, освещения, с добавленными шумами. Также алгоритмы должны регулярно тестироваться и обновляться.

Технология распознавания лиц (биометрическая идентификация) — это процесс идентификации искусственным интеллектом личности человека на основе физических характеристик: формы лица, структуры костей, черт и пропорций, морщин, родинок. Самый простой пример — система Face ID на iPhone. Камера TrueDepth на передней стороне телефона используется, чтобы отсканировать лицо пользователя и создать 3D-модель. Затем система выявляет особенности, такие как форма глаз, носа и т. д., формирует уникальный шаблон лица и сохраняет его в защищенном облачном хранилище. Когда пользователь включает iPhone, Face ID сканирует его лицо и сравнивает с сохраненным шаблоном с помощью алгоритма машинного обучения. Если соответствие подтверждено, то iPhone разблокируется. Для повышения качества работы Face ID применяет нейронную сеть глубокого обучения. Система непрерывно учится и обновляется на основе новых данных, чтобы выдавать более точные результаты.

Другой эксперимент с очками был проведен авторами из отечественной компании ProductivityInside еще в 2021 году. Автор исследования также брал за основу сеть Face++ и пытался обмануть ее различными методами: закрывал лицо ладонью, маской, а также изображениями других людей. В результате робот «ослеп» только в одном случае: когда автор одновременно надел на себя солнечные очки с широкими линзами и медицинскую маску.

Как нейросети распознают лица?

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

Как правило, работа любой нейронной сети может быть измерена с точки зрения точности: после настройки параметров и завершения процесса обучения сеть проверяется на тестовом множестве, для которого мы имеем отклик учителя, но который отделён от обучающего набора. Как правило, этот параметр является количественной мерой: число (часто в процентах), которое показывает, насколько хорошо система способна распознавать новые объекты. Еще одна типичная мера — это ошибка (может быть выражена как в процентах, так и в числовом эквиваленте). Тем не менее, для биометрии существуют более точные меры.

В биометрии вообще и биометрии для распознавания лиц, в частности, существует два типа приложений: верификация и идентификация. Верификация представляет собой процесс подтверждения определённой личности путём сравнения изображения индивида (вектора признаков лица или другого вектора признаков, например, сетчатки или отпечатков пальцев) с одним или несколькими ранее сохранёнными шаблонами. Идентификация — это процесс определения личности индивида. Биометрические образцы собирают и сравнивают со всеми шаблонами в базе данных. Существует идентификация в замкнутом множестве признаков, если предполагается, что человек существует в базе данных. Таким образом, распознавание объединяет один или оба термина — верификацию и идентификацию.

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

Среди уже реализованных примеров распознавания лиц — DeepFace от Facebook. По данным портала TechCrunch, алгоритм способен идентифицировать лица в толпе с точностью почти как у человека: 97,25 % против 97,53 %. Самая популярная платформа с открытым исходным кодом Face++ от китайской компании Megvii распознает лица даже в неидеальных ситуациях. Например, при съемке низкого качества или при ограниченном освещении (ночные концерты, большие скопления людей и пр.). С помощью этой же компании Китай создал свою колоссальную базу данных жителей для социальной системы контроля. Наверное, вы видели похожий сюжет в «Черном зеркале»: с 2021 года каждый гражданин КНР получил стартовый рейтинг в 1000 баллов. Каждый его поступок теперь учитывается системой, которая начисляет или снимает баллы. А от них зависит практически все: покупка билетов, кредиты, частные школы и хорошая работа. Что это: нарушение прав человека или путь в светлое будущее? Пока остается только наблюдать.

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь