Глазами нейросети
edoc.hu-berlin.de Когда ваше лицо попадает в «поле зрения» камеры видеонаблюдения, оно превращается в тысячи чисел. Именно так компьютеры видят изображения – в виде таблицы или, как сказал бы математик, матрицы. Можете представить шахматную доску, в каждой клетке которой написано число. Примерно так в памяти компьютера выглядит картинка 8 на 8 пикселов. Но обычно фотографии гораздо больше шахматной доски и содержат тысячи чисел. Как найти в них лицо? Эта задача стояла перед учеными с середины XX века. Решить ее пытались множеством методов – здесь пригодились и теория графов, и геометрия, и математический анализ. Сегодня многие из них остались в прошлом, потому что в арсенале программистов появился такой мощный инструмент, как сверточные нейросети. Их изобрели, вдохновившись устройством человеческого глаза. Как на самом деле видит нейросеть. Слева — представление собаки в одном из высокоуровневых нейронов. Справа — фрагмент обучающей выборки. distill.pub/2020/ circuits/zoom-in КАК ВИДЯТ ЛЮДИ Когда мы на что-то смотрим, изображение попадает к нам на сетчатку глаза. В ней находятся клетки, которые способны распознавать разные цвета и яркость света – палочки и колбочки. Они работают почти так же, как и камеры видеонаблюдения, но превращают изображение не в набор чисел, а в электрические импульсы. На этом работа глаза заканчивается. Как и видеокамеры, клетки сетчатки сами по себе не умеют понимать, что находится на изображении. Для этого камере нужен компьютер, а глазам – мозг. Сигнал от палочек и колбочек поступает в нейроны – клетки головного мозга. Биологам уже известно, что такие нейроны распознают в изображении самые простые формы – например, линии или окружности. От этих клеток сигнал поступает к следующему ряду нейронов, которые узнают в изображении более сложные структуры – губы или глаза. Эта информация идет к «вышестоящим» нейронам и так далее. Клетки последних слоев умеют распознавать такие сложные объекты, как отдельные лица. КАК ВИДЯТ НЕЙРОСЕТИ Точно так же работают сверточные нейросети, состоящие из большого количества искусственных «нейронов». Каждый такой нейрон – это просто таблица с числами. Они располагаются слоями, как и в нашей сетчатке. Первый слой получает информацию от изображения с видеокамеры или из памяти компьютера. Он узнает простые структуры – обычно это контуры, линии, углы, окружности. Второй слой «собирает» структуры посложнее из отдельных элементов, которые увидели в изображении первые нейроны. Третий слой получает информацию от второго и так далее. Современные сверточные нейросети очень глубокие, и в них очень много слоев. Самые последние нейроны выдают ответ на решаемую задачу. Он может быть разным в зависимости от того, для чего создавалась нейросеть. В задаче распознавания лиц это обычно координаты ориентиров лица – набор точек, которые окружают важные части лица: его контур, глаза, губы. По ним можно однозначно узнать человека. ПЛЮСЫ И МИНУСЫ НЕЙРОСЕТЕЙ Собрать большой набор данных и отметить на нем лица – тоже гигантская работа. Но она того стоит. Точность работы нейросетей поражает. Исследования группы ученых из нескольких университетов США и Австралии в 2018 году показали, что после обучения нейросети допускают даже меньше ошибок, чем люди. При этом качество работы человека с течением рабочего дня падает – ведь никто не сможет целый день вручную отмечать на фотографиях ориентиры лиц. Нейросети же могут работать без остановки и обрабатывать за секунду сотни изображений. Другой большой плюс нейросетей – их универсальность. Они могут решать почти любую задачу. Главное – показать им много примеров с правильными ответами. Если вам нужно распознавать не людей, а котиков, нужно только подготовить для компьютера много фотографий с котами. Системам распознавания лиц не помешало даже то, что люди стали носить медицинские маски. К наборам данных для обучения нейросетей просто добавили людей с закрытым лицом. Качество распознавания немного снизилось, но все равно осталось довольно высоким. Точно определить статистику «масочных» ошибок нельзя – слишком легко наврать. Их количество зависит от задачи. Например, в исследовании ученых из Национального института стандартов и технологий процент такой ошибки был от 5 до 50. Это довольно много для нейросетей, хотя и все равно неплохо – по меньшей мере половина снимков угадывается. Но в этой работе нейросеть должна была сравнивать лицо в маске и без маски и говорить, один и тот же это человек или нет. В исследовании китайских ученых точность составила 95 %, но в нем задача стояла в том, чтобы понять, есть ли на изображении лицо, и обвести его прямоугольником. В общем, можно найти примеры как хороших результатов, так и ухудшения качества распознавания лиц в масках. В реальности это будет зависеть от конкретного кейса, нейросети, ее обучающих данных. Национальный институт стандартов и технологий применил цифровые маски к фотографиям и протестировал алгоритмы распознавания лиц, разработанные до пандемии COVID-19. Поскольку маски в реальном мире различаются, команда придумала варианты разных форм и цветов. Фото: B. Hayes/NIST, nist.gov Главный минус нейросетей – сложность интерпретации их работы. После тренировки нейросеть работает как черный ящик: ей подают на вход новое изображение, а она выдает какой-то ответ. Хоть мы и знаем, как устроена сеть внутри, очень сложно понять, как именно она принимает решение. Чаще всего это и не пытаются сделать. Качество работы нейросети проверяют на незнакомой ей тестовой выборке изображений, а затем используют сеть как готовый инструмент. Иногда это приводит к непредсказуемым последствиям. Например, в одном из штатов США нейросеть помогала находить преступников по снимкам с видеокамеры. Спустя какое-то время выяснилось, что она значительно реже указывает на белокожих людей как на преступников. Дело оказалось в обучающей выборке. В ней были фотографии преступников и обычных людей с разным цветом кожи. И выяснилось, что фотографий законопослушных людей с белым цветом кожи в обучающих примерах было гораздо больше. Это привело к тому, что нейросеть связала преступность с определенными расовыми признаками. Поэтому нужно очень внимательно следить за набором обучающих данных – иначе можно научить нейросеть «плохому» и заложить в нее человеческие предрассудки. К счастью, ученые знают об этих проблемах и тщательно следят за данными, чтобы их возникало как можно меньше. Фото из личного архива Александра Губанова Александр Губанов, аналитик в лаборатории наук о больших данных и проблемах общества, ТГУ В последние десятилетия нейросети пережили второй всплеск популярности (первый был во времена их появления). Интерес к ним заслуженный, ибо они справились с некоторыми важными задачами, решение которых до этого считалось невозможным (генерация и распознавание речи, игра в Го на уровне человека, распознавание эмоций, сегментация изображений). Однако нейросети – это лишь один из инструментов для решения задач, и его возможности не безграничны. Прежде всего, в массе случаев нейросети хоть и применимы, но крайне неэффективны. Например, если вам надо выстрелить из пушки и попасть в цель, то, зная законы баллистики, расстояние до цели и некоторые параметры пушки, вы можете сразу навестись и попасть. Чтоб эту задачу решила нейросеть, сперва ее нужно обучить, сделав несколько тысяч выстрелов с разными параметрами, причем если новая мишень будет находиться совсем не там, куда вы попадали и при обучении нейросети, то в нее вы уже не попадете. Другое важное ограничение нейросети: результат, который она выдает, является неким усредненным и наиболее вероятным с точки зрения предыдущего опыта. Ярко демонстрируют эти ограничения нейросети, раскрашивающие черно-белые изображения. Обычно лица людей, листва деревьев получают правдоподобный цвет, а вот с одеждой беда. Дело в том, что цвет одежды обычно не зависит от ее формы, и если в обучающей выборке было тысяча красных штанов и тысяча зеленых, нейросеть выдаст некий средний между ними цвет. По этой же причине нейросеть не способна создать что-то действительно новое, потому что новое – это то, чего не было раньше. Да, рекуррентная нейросеть, обученная на десятках тысяч стихов, может писать стихи, выглядящие, как будто их писал человек, но это будет так или иначе компиляция из уже известных сети стихотворений. Чего-то радикально нового и непохожего, но при этом являющегося корректным стихом, она не создаст. Сейчас системы распознавания лиц, генерации несуществующих лиц, подмены лиц на видео развиты очень хорошо. Вместе с этим развиваются алгоритмы генерации макияжа, препятствующего распознаванию и алгоритмов выявления подделок. Эта конкуренция «средств нападения и защиты» безусловно стимулирует развитие соответствующих инструментов. Как мне кажется, большие принципиальные нововведения ожидаются в правовом поле (как юридически урегулировать распознавание лиц) и в применении этих методов в новых областях, причем не только касательно человеческих лиц, но и, например, в исследованиях поведения животных. ЧТО ПРОИСХОДИТ С ВАШИМИ ДАННЫМИ Ученые и компании не могут просто сфотографировать вас и использовать это фото для обучения нейросети. Ваше лицо – это ваши персональные данные, а они защищены законом. Чтобы использовать ваши фотографии, компании или ученые должны получить ваше согласие. Вы каждый раз подписываете его, покупая телефон с разблокировкой по лицу или разрешая банкомату узнавать вас по биометрическим данным. Но данные – это самая драгоценная часть любой системы распознавания лиц. Собрать подходящий набор обучающих примеров – самая трудная часть. Кроме того, утечка персональных данных людей нанесет огромный удар по репутации компании. Поэтому, если ваши фотографии попадают в чьи-то базы данных, они тщательно охраняются. Вся информация хранится в зашифрованном виде, просто так украсть ее не получится. В этом также сильно помогают нейросети. Их недостаток – неинтерпретируемость – здесь обращается в преимущество. Ведь вместо исходной фотографии человека можно хранить то, как видит ее нейросеть, – в виде матрицы. Из этого набора чисел невозможно получить исходное изображение. Даже если кто-то его украдет, злоумышленник ничего не сможет с ним сделать. Снова понять, что означают эти числа, сможет только та же самая нейросеть. Камеры видеонаблюдения на улицах тоже не отслеживают перемещения каждого человека. Это запрещено законом и невозможно реализовать технически. Чаще всего их задача – поиск разыскиваемых преступников. Когда вы попадаете в объектив камеры, ваше лицо поступает в нейросеть и превращается в набор точек-ориентиров. Дальше компьютер сравнивает эти ориентиры с базой данных лиц преступников. Если совпадения нет, результат работы нейросети стирается из памяти компьютера. Фотографии преступников попадают в базу при предыдущем задержании или в ходе расследования уголовного дела. Фото: Iain Lewis Photography, mirror.co.uk Фото: DataSparQ, newatlas.com КАК ИСПОЛЬЗУЮТ СИСТЕМЫ РАСПОЗНАВАНИЯ ЛИЦ Помимо поиска преступников, нейросети позволяют решать множество задач, делающих жизнь людей лучше. Например, можно проходить проверки в аэропорту, не контактируя с людьми, а просто смотря в камеру. В Великобритании есть бары, где компьютер по фото определяет, достаточный ли у человека возраст для покупки алкоголя. А в США разрабатываются системы безопасности для умного дома. Они позволят попадать в свою квартиру без ключей – просто посмотрев в камеру. Если в дом попытается проникнуть чужой человек, такая система вызовет полицию. Системы распознавания лиц используют многие крупные компании – Amazon, Apple, Google, «Сбербанк», «Ростелеком» и другие. Но простота использования технологии позволяет применять ее даже совсем небольшим компаниям. Нейросеть можно написать в десяток строчек кода – это меньше, чем требуется для многих других программ. Есть даже технологии, позволяющие вообще не писать код. Нужно только предоставить обучающие данные, и нейросеть обучится сама, в один клик мышкой. Самые большие проблемы с внедрением таких систем – не в сложности технологии, а в законодательных ограничениях. Мощность работы систем распознавания лиц может вызывать опасения. Но это уже существующая реальность, в которой нам придется жить. Технологии не могут быть хорошими или плохими сами по себе. Электричество подарило человечеству свет и тепло, но оно же привело к созданию электрического стула. Технологии могут как сделать жизнь людей проще и лучше, так и привести к катастрофе. Конкретный исход зависит от их применения. И в этом вопросе нейросети не подскажут правильный ответ. Его людям придется искать самостоятельно.