К сожалению, как показывает мировая история, война — самый эффективный двигатель прогресса. Направляя неограниченное количество ресурсов на разработку новых технических устройств, она выводит технологические и исследовательские изыскания воюющих стран на предел их возможностей.
Война заканчивается, а разработки остаются. Как и многие пытливые умы, некогда служившие своей родине. Все они оказываются окутаны скучной суетой мирного времени.
Их стремление, словно пар закипающего чайника, отчаянно стремится выбраться наружу. Голова, некогда создававшая изощрённые орудия убийства, ищет новую точку приложения своих гениальных способностей.
Технология распознавания лиц была одной из таких точек. Она была продуктом своего времени. Продуктом, который не оформился в законченную технологию тогда, но задал направление для всех тех, кто был после.
Далекие 1960-е — буква Q на миллиметровке и финансирование ЦРУ
Вуди Бледсо, будучи математиком, изначально работал в области ядерного оружия. Какое-то время он даже сотрудничал с командой Станислава Улама — одного из изобретателей водородной бомбы.
В конце 50-х Бледсо принимал участие в испытаниях ядерного оружия над атоллом Эниветок, который и по сей день считается намного более загрязненным, чем Чернобыль и Фукусима.
Проведение математических расчетов и написание кода — одни из составляющих исследования ядерного оружия. Например, самая ранняя из опубликованных работ Бледсо — «Расчет вероятностей выпадения радиоактивных осадков в результате крупномасштабной термоядерной атаки». Переменных много: мощность взрыва, точки и время детонации, скорость ветра и т. д.
Однако связь с программированием вкупе с развитым математическим аппаратом привели Бледсо в совершенно другую отрасль — относительно мирную, но не без этических последствий.
В какой-то момент Вуди заинтересовался автоматическим распознаванием образов — на первых порах пока только символов, написанных от руки. Именно тогда вместе со своим коллегой Ибеном Браунингом, авиационным инженером и биофизиком, он разработал метод n-мерных последовательностей.
Обычный символ Q проецировался на прямоугольную сетку, похожую на клетчатый листок бумаги — миллиметровку. Каждая ячейка сетки имела два состояния: заполненая (1) и незаполненная (0). Далее все ячейки преобразовывались в список координат, перебирая который компьютер математически сравнивал каждую координату с координатой из списка-примера. Если большое количество координат были похожи, то, вероятнее всего, символы совпадали.
В общем, идея оказалось работоспособной — Вуди и Браунинг решили основать собственную компанию «Panoramic Research», предлагая бизнесу свой продукт — пока что довольно сырой. Однако нормального финансирования у компании не было, за исключением пары организаций, которые впоследствии оказались подставными юрлицами ЦРУ.
Согласно публичным архивам сайта «Black Vault», Panoramic была в списки почти сотни компаний, работавших над проектом «MK-Ultra» — печально известной программой ЦРУ по разработке методов ослабления и принуждения людей во время допросов.
Помимо улучшения методов допроса, Panoramic изучала бактериальные токсины и контроль активности отдельных видов животных — довольно странные вещи, но тем не менее.
На самом деле Вуди прекрасно знал о своих клиентах из правительства. Человек, проработавший всю жизнь на армию США, очевидно, рассчитывал на государственное вовлечение в свои проекты. Часто он предлагал свои услуги посредникам от правительства самостоятельно.
Одну из таких организаций, «King-Hurley Research Group», Вуди удалось уговорить на финансирование проекта совершенного иного рода — проекта по распознаванию лиц.
Бледсо поверил в собственные идеи и был настолько ими увлечен, что намеревался научить компьютер распознавать сразу 10 лиц. По его задумке, система должна была знать внешность десяти человек и определять их схожесть с предложенной фотографии.
Для того времени задача очень серьезная. Компьютеры-шкафы тогда имели в лучшем случае сотни килобайт оперативной памяти — это в десятки тысяч раз меньше, чем у современного смартфона.
Но проблема была даже не в этом. В то время в принципе не существовало метода оцифровки лиц. Как перевести человеческую внешность на язык нулей и единиц? Разбивать все лицо на ячейки и кластеры или определять сперва его составные части (глаза, нос, рот), а уже потом сохранять их ориентацию? Все это только предстояло придумать.
Подходом Вуди стало разделение труда.
Браунинг занимался сканирующим устройством для преобразования черно-белых фото в десятки тысяч точек со значением интенсивности света от 0 до 3.
Другой исследователь отвечал за создание фотографий и их последующую оцифровку на сканирующем устройстве. При этом из-за малой мощности компьютеров тех лет сканер предварительно делил изображение на своего рода «чанки».
Вуди же с помощниками (в частности с Хелен Чан Вульф) разрабатывал способы оценки поворота головы. Они вручную маркировали точками определенные участки лица одного и того же человека на двух фотографиях — фронтальной стороны и с поворотом на 45 градусов. После этого фото оцифровывались.
Таким образом, эти точки можно было экстраполировать для получения того же лица, но с поворотом на 10 или 25 градусов. Это было похоже на современную генерацию лиц нейронными сетями, но алгоритмически и в довольном низком (схематическом) качестве.
Короче, разработка продукта была разбита на составляющие со своей зоной ответственности — эдакий Закон Конвея.
Однако все провалилось. Спустя год созданная система не смогла распознать ни одного лица.
Компьютер реагировал на малейшие изменения во внешности одного и того же человека: положение волос, мимические различия и старение. В 1964 году эта задача выходила за рамки компьютерных технологий того времени. Тем не менее частичное финансирование проекта сохранилось.
Спустя еще один год работы стало понятно, что самый адекватный способ автоматизированного распознавания лиц — аппроксимация лица до его составных частей: глаз, ушей, носа, бровей и губ.
Из-за технических ограничений команда не могла научить компьютер автоматически определять черты лица, поэтому они размечались вручную. Такое компромиссное решение превратило «машинное» распознавание лиц в «человеко-машинное».
Черты лиц (различные соотношения и длины) измерялись вручную, после чего конвертировались в числовые значения. Именно ими оперировал компьютер, находя соответствия. Результаты оказались обещающими — система работала, хотя и была довольно сырой.
Повысить производительность предварительных ручных измерений решили с помощью нового на тот момент устройства — планшета RAND, который считают «дедом» современного тачскрина. Он был похож на современный графический планшет со стилусом, только размером со шкаф — впрочем, как и все компьютеры в те времена. Покупка стоимостью 20 000 долларов была оплачена «King-Hurley».
Благодаря планшету исследователи рисовали схематические машиночитаемые изображения, которые впоследствии оцифровывались и сравнивались с целевым. Рисование не требовало особой квалификации, поэтому для этих целей привлекались студенты. Скорость оцифровки фото увеличилась до 40 изображений в час.
Понятное дело, что проблема мимических и косметологических различий была все еще не решена. Но результаты стали лучше. Намного лучше.
«Триумф» разработок Вуди Бледсо случился чуть позже. В 1967 году правительство США наконец-то наняло его команду для решения настоящей прикладной задачи, а не просто ради исследований. Правоохранительным органам требовалась специальная система анализа и сопоставления фото заключенных. Объем был большой, поэтому вручную выполнять такие задачи практически бессмысленно — на это уйдет целая вечность.
Для начала полиция предоставила 400 фотографий мужчин европеоидной расы разного возраста и, что наиболее важно, с разным поворотом головы и масштабом. То есть вводные данные теперь были вариативны.
Как и прежде, используя планшет RAND, исследователи оцифровали и нормализовали изображения. Таким образом, математематический эквивалент лиц мог быть повернут в переднее положение и в одинаковом масштабе.
На этот раз у компьютера было два способа анализа. В одном лицо разбивалось на отдельные черты — глаза, брови, уши, нос. В другом использовалась Байесовская оценка решения на основе нескольких десятков измерений — статистические данные указывали на вероятность совпадения.
Оба варианта работали неплохо. Во всяком случае на порядки быстрее и точнее человека. Три контрольных испытуемых смогли сопоставить 100 лиц в лучшем случае за 6 часов. Система Вуди Бледсо это сделала (на компьютере CDC 3800) за 3 минуты.
Это был тот самый переходный момент, некая точка невозврата, когда в этом вопросе компьютер полностью обогнал и победил человека. Окончательно. Навсегда.
Довольно печально, что работы Бледсо оказались под грифом «секретно». Спустя 3 года некий Леон Хармон из Bell Labs опубликовал статью об исследовании распознавания лиц. Разработка Хармона не финансировалась государством, поэтому попала на обложку журнала Scientific American. Однако по заверениям Вуди, в тот момент, когда действительно продвинутая технология хранилась в его сейфе, система Хармона отставала от нее лет на 10.
К 1973 году от приставки «человеко» можно было отказаться — анализ фото стал полностью «машинным». Японский ученый Такео Канаде написал программу, которая извлекала черты лица без участия человека.
Эволюция технологии — линейная алгебра, Eigenface, FERET, соцсети
До 1980-х годов в технологии был застой. Только ближе к 90-м пошел настоящий прогресс. Распознавание лиц наконец-то оформилось в жизнеспособный продукт, доступный для бизнеса.
Появились новые модели анализа биометрии. Например, Ларри Сирович и Майкл Кирби задействовали линейную алгебру.
Созданная ими система, получившая впоследствии название Eigenface, умела анализировать лица по менее, чем сотне параметрических значений — ровно столько переменных требуется, чтобы нормализировать любое лицо. Довольно неплохо, учитывая бесконечно большое разрешение пленочных фотоаппаратов и наличие множества мелких деталей на среднестатистическом лице.
«Eigen» — это немецкое слово, означающее «собственный» или «характерный». В общем, оно указывает на некий признак.
Сирович и Кирби взяли 25 фотографий и на основе них вычислили усредненное лицо так, как если бы вы наложили все фотографии одну на другую с 50% прозрачностью. После этого они создали набор из 25 изображений, каждое из которых содержало только визуальные отличия конкретного лица от усредненного.
Смысл в том, что у человеческих лиц больше сходств, чем отличий. Поэтому имеет смысл аппроксимировать каждое лицо до набора отклоняющихся характеристик, после чего оперировать только ими.
На самом деле нейробиологи полагают, что мозг человека обрабатывает лица точно также. Как только зрительная кора «понимает», что наблюдает за лицом, ее нейронные клетки реагируют исключительно на отклонения от известных средних значений. Например, нос чуть длиннее, а брови умеют больший угол. В какой-то степени это похоже на логическую операцию «дизъюнкции», только внутри нейронной сети мозга.
Впоследствии другие исследователи, Мэтью Терк и Алекс Пентланд, «научили» Eigenface автоматически обнаруживать лица на фотографиях. Их совместная научная статья была опубликована в 1991 году.
Уже ближе к 2000 году правительство стало использовать распознавание лиц официально. DARPA (Агентство оборонных проектов) и NIST (Национальный институт стандартов) выпустили собственную систему «Face Recognition Technology» (FERET).
Тестирование проводилось на основе 800 неподвижных лиц — на каждое по 2-3 фотографии с разных ракурсов.
На самом деле для правительства США (для любого эффективного правительства) не очень выгодно держать «in-house» собственные системы и технологии. Все же задача государства не разработка, а контроль.
Поэтому основной мотивацией FERET было продвижение и вдохновение коммерческого сектора на создание собственных продуктов, которые впоследствии могут помочь государству в тех или иных задачах. В каких — уже другой вопрос.
Уже с начала 2010 года популярная в США соцсеть (с темно-синим логотипом и запрещенная в РФ) начала использовать функцию распознавания для определения друзей на публикуемых фото — с целью их отметить. Позже этот тренд подхватил и отечественный ВКонтакте. А с 2014 года функция распознавания стала доступна в камере любого смартфона.
В основе две нейросети — «aligner» и «recognizer»
Сегодня в системах распознавания используются нейросети. По сути это дальнейшая эволюция алгебраических методов.
Как правило, есть несколько сетей, обрабатывающих фото последовательно.
Сперва сеть, именуемая «aligner», находит на фотографии все лица и нормализует их — вырезает из общего изображения и поворачивает так, чтобы все ключевые точки (глаза, нос, рот) смотрели прямо. Именно на этом этапе могут возникнуть проблемы — если лицо на фото изначально слишком сильно повернуто вбок, программа просто не увидит закрытые точки.
Тут есть некоторая вариативность в подходах. Например, некоторые реализации используют большее количество точек, связанных не с ключевыми чертами, а с формой и контуром лица.
Далее включается сеть «recognizer», которая преобразует нормализованное изображение в специальный многомерный вектор — некий набор чисел, кодирующих ключевые параметры лица.
Векторы, полученные от разных лиц, можно сравнивать. У готовых реализаций есть база данных, в которой осуществляется поиск похожих векторов. Если значения в обоих векторах имеют большой разброс — на фото два разных человека. В противном случае — один и тот же.
Интересно, что Face ID имеет несколько другой принцип работы. Хотя, возможно, отличие заключается лишь в количестве точек и типе оптического детектора.
У Apple алгоритм распознает человека с помощью инфракрасных точек, спроецированных на лицо. Координаты (в 3D проекции) каждой точки сравниваются с ранее внесенным эталонном, после чего выносится «вердикт».
Инфракрасный спектр в данном случае снижает вероятность подделки лица — вы не сможете держать фото владельца перед айфоном. Для разблокировки нужно объемное лицо с глубиной.
Хотя, известен «кейс» от одного вьетнамского исследователя, который взломал собственный Face ID с помощью напечатанной на 3D-принтере маски. На нее были наклеены бумажные фрагменты фотографии его лица. Почти как в «Миссия невыполнима», но попроще.
Вообще, в информатике есть отдельное направление — Теория распознавания образов. Это более обширная область, инструменты которой распознают не только лица, но и целые ситуации с участием различных объектов — как живых, так и неодушевленных.
Например, автоматическое детектирование проезда на красный сигнал светофора или отсутствие пристегнутого ремня безопасности. Или позиционирование какого-либо робота в пространстве. Все это про распознавание образов.
По сути все, что создано в этом направлении — калька с сенсорной системы живых существ, в частности, человека. Скажем так: то, как мозг обрабатывает поступающую информацию — некий фундаментальный абсолют, к которому пришла эволюция за миллионы лет биологического отбора. Сохранились только наиболее эффективные паттерны обработки сенсорной информации мозгом.
Поэтому люди буквально копируют те же принципы, но на полупроводниковых носителях:
-
Сперва изучаются способности к распознаванию у живых существ, причем разными методами — как более психологическими, с внешним наблюдением реакции на стимул, так и более нейробиологическими, с применением фМРТ.
-
Полученная информация концептуализируется, на основе нее строятся математические модели, которые переносят на устройства, предназначенные для решения прикладных задач.
Самый простой способ получить психологически значимую информацию о живой системе — предъявить ей два различных стимула и зафиксировать ее реакцию. Хотя для большего покрытия вариантов реакции стимулов может быть гораздо больше.
Полученные данные обрабатываются, структурируются и переносятся в некую компьютерную (математическую) модель — перцептрон. Во всяком случае такое название предложил нейрофизиолог Фрэнк Розенблатт.
Перед практическим использованием перцептрон сперва обучается на готовых объектах — например, с помощью общедоступного массива MegaFace.
Это процесс итеративен. Пример состоит из пары «вход-выход». Проще говоря, определенный сигнал на входном слое должен приводить к соответствующему сигналу на выходном слое. Скрытые слои автоматически под это «подстраиваются», развесовывая синаптические связи внутри сети. Если скрытых слоев несколько, сеть называют «глубокой» или «глубинной».
Именно в этом и заключается процесс обучения нейронной сети. Итерация за итерацией (их еще называют «эпохами обучения») система повышает свою точность. При этом она готова к использованию уже с самого начала — вопрос лишь в качестве ответов.
Государства, корпорации и лица
Под подсчетам Grand View Research, в 2020 году рынок распознавания лиц оценивался почти в 4 миллиарда долларов. Это означает, что на рынке уже есть (и будет еще больше) проприетарные решения, работающие «из коробки».
Многие разработки делают действительно благое дело — с этической стороны к ним сложно придраться. Например, приложение Face2Gene, разработанное специально для медицинских работников, умеет диагностировать генетические нарушения по морфологии лица пациента. Конечно, это не заменяет множество других инструментов, но однозначно увеличивает вероятность постановки верного диагноза и подбора подходящего лечения.
Разработка FaceFirst может идентифицировать людей на расстоянии — полиция, военные и даже продавцы обычных розничных магазинов могут оперативно проверять подозрительные личности и транспорт.
Однако все эти системы, очевидно, требуют соответствующей этической оценки. Какой-то регламентации, контроля.
Например, федеральное исследование США подтвердило, что государственные системы биометрии имеют некоторые предвзятости ко многим социальным группам — другим расам, детям, женщинам и пожилым людям. Все дело в алгоритмах, которые обычно тренируются на фотографиях белых мужчин средних лет, отчего страдает качество анализа других представителей общества.
Евросоюз, будучи более инертным и технологически консервативным, нежели США, в 2020 году наложил запрет на использование распознавания лиц в общественных местах на срок до пяти лет — бюрократическая и законодательная система все еще не успевает за технологиями, поэтому ей нужно время для внесения всех необходимых поправок.
Аналогичным образом крупные компании, вроде Amazon, IBM и Microsoft, ввели мораторий на продажу своего программного обеспечения правоохранительным органам.
Хотя, правды ради, IT-гиганты с радостью бы работали с государством, получая множественные бонусы, но репутационные издержки на ранних стадиях развития технологии могут оказаться выше — общественность всегда внимательно следила за действиями корпораций, не говоря уже о правозащитных организациях.
По итогу
Сегодня можно с уверенностью сказать, что работы Вуди Бледсо действительно опередили свое время. То, что было начато «Panoramic Research» оказалось забыто, а последующим разработкам пришлось пройти все этапы эволюции заново — практически с нуля.
Рост возможностей полупроводников дал старт совершенствованию технологии распознавания лиц и ее «ассимиляции» в гражданской индустрии, что привело к возникновению множества этических вопросов. Впрочем, это происходит с любой новоявленной технологией.
Однако распознавание лиц оказалось в списке тех редких исключений, которые вызвали этический дискурс сразу после появления на свет или даже во время разработки — задолго до популяризации и старта повседневного использования.
Например, в 2017 году публикации Михала Косински из Стэнфордского университета утверждали, что разработанные им нейросети умеют определять политическую и секcуальную ориентацию только лишь по фото. СМИ подхватили эту тему, но и критиков было тоже предостаточно.
И это действительно представляет серьезные последствия для каждого из нас. Развитие Big Data, статистики и нейронных сетей буквально подводит «за ручку» машинное зрение к анализу биометрических данных и их связи с различными социокультурными и поведенческими особенностями людей.
Например, компания «Faception», некогда занимавшаяся вопросами безопасности, обещала своим клиентам (например, аэропортам) внедрить систему определения террористов и педофилов для камер видеонаблюдения.
Подумайте сами. Как избавиться от стигмы после того, как некая частная компания заявит, что вы педофил с вероятностью 46%? Вопрос риторический…
НЛО прилетело и оставило здесь промокод для читателей нашего блога:
— 15% на заказ любого VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.