В банке нужен человек, а за рулем — нет

Татьяна Гурова
главный редактор «Монокль»
2 октября 2017, 00:00

Имеющиеся технологии распознавания лиц не могут гарантировать стопроцентного результата. Поэтому выдавать деньги и совершать иные финансовые операции на этой основе не рекомендуется. А вот от руля нам придется отказаться

ТАСС
Читайте Monocle.ru в

Сегодня искусственному интеллекту приписываются почти бесконечные возможности. От него ждут, что он вот-вот уберет человека из множества разных сфер: используя Big Data, быстро и надежно идентифицирует вас, разрешит или не разрешит вам что-то купить, или взять кредит, или сесть на самолет, а по дороге «впарит» продукт, которого именно сейчас вам очень не хватает. Примерно так выглядят в массовом продвижении идеи искусственного интеллекта (ИИ). Однако специалисты говорят, что пока возможности ИИ довольно сильно ограничены. Да и сам ИИ не везде нужен, иногда достаточно простого программирования. Прорыв, который мы наблюдаем, пока, похоже, больше связан с уменьшением размера чипа, чем с прорывами в области собственно искусственного интеллекта.

Мы решили вникнуть в детали этой многогранной темы и поговорили о том, возможно ли сегодня создание системы стопроцентного распознавания образов, а заодно и о том, почему нас неминуемо ждут беспилотные автомобили, с Дмитрием Лихачевым — человеком, который все это делал «руками»: программистом, разработчиком систем распознавания лиц, в 1990-е работавшим в Российском НИИ искусственного интеллекта.

 

Программист и разработчик систем распознавания лиц Дмитрий Лихачев 37-02.jpg АРХИВ ПРЕСС-СЛУЖБЫ
Программист и разработчик систем распознавания лиц Дмитрий Лихачев
АРХИВ ПРЕСС-СЛУЖБЫ

— Сейчас часто появляются сообщения, что распознавание лиц искусственным интеллектом достигло 99–100-процентной вероятности. Возможно ли это?

— В реальной жизни этого пока нет. Вот простой пример. Один из лучших движков — у фейсбука. Иногда он вам предлагает: «Найдите по фотографии своих друзей». Загружаешь фотографию, и он показывает лица. Угадывает с 80-процентной вероятностью, а это один из лучших движков в мире. Те движки, с которыми я работал, редко ошибаются, но о 99-процентной вероятности речи быть не может. Может быть, в каких-то искусственных условиях, если человек всегда стоит ровно, всегда анфас, с одинаковым освещением, будет процентов девяносто. И еще если не накрасился, не скривил лицо.

— А в чем сложность? Как происходит накапливание этой возможности? Мы же в состоянии узнать человека.

— Есть много разных вариантов. 3D-модель лица можно построить (только для этого нужно несколько фотографий с разных ракурсов или видео) — человек все-таки узнаёт лица в 3D, двумя глазами с двух ракурсов, но чаще работают с 2D — с фотографией. Например, бегает прямоугольник разного размера по фотографии и считывает все контрасты. На основании этого строит форму. Есть движки, которые просто определяют опорные точки: уголки глаз, уголки носа, уголки рта. И по этой геометрии делают инварианты лица. Пытаются сочинить такую форму, которая сохраняется при поворотах, под разными углами, при разном освещении. В принципе, все движки пытаются создать из лица инвариант. Есть программы, которые накладывают много-много разных изображений лица в разных ситуациях, и получается большая, склеенная, фотография, вроде голограммы, по которой потом ищут сходство. Как-то так и фейсбук работает. Загрузил фотографию: «Это Вася?» — «Да». «А это Петя?» — «Да». Идет обучение. Но гарантий она никаких не дает, они здесь и не нужны. Или в метро можно фотографировать пассажиров и иметь базу данных из десяти тысяч террористов. Будешь фотографировать, фотографировать, когда-нибудь попадется. Ну, не попадется — и ладно, в следующий раз опознается. Тоже никакой гарантии.

Может быть, конечно, у спецслужб где-нибудь за миллиарды долларов и сделаны более результативные движки, но спецслужбы, естественно, не будут это показывать до тех пор, пока это возможно.

— Почему?

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

Но движки, которые есть на рынке, такого не могут. Вот, например, FindFace. Фишка в том, что я сфотографировал девушку на улице, а потом зашел в FindFace, и нашел, что это Лена Иванова. Я его пробовал, он несильно работает. По-моему, они немножко привирают, что тридцать миллионов лиц из «ВКонтакта» у них в базе, потому что трудно по такому массиву искать. Обычно ищут по маленьким массивам. Фейсбук ищет всего лишь среди моих друзей. Их, например, пятьсот, ну и он с какой-то вероятностью находит. Если бы он искал среди тридцати миллионов, это была бы очень дорогая операция.

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

— Мне кажется, это нереально. Нормальные движки, которые они могут взять за базу (вряд ли спецслужбы им отдадут свои движки), арендовать у одной из команд, у которых они есть, требуемого результата не дадут. А это как раз тот случай, когда требуется гарантия. Ты даешь человеку деньги.

— То есть если человек просто выходит по скайпу и его изображение ИИ сравнивает с фотографией, то движок не сможет оценить, он это или не он?

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

ИИ: учиться, учиться и учиться

— Сколько стоит во времени или в переработанных гигабайтах, в деньгах разработать систему распознавания образа человека с 80-процентной вероятностью?

— Во-первых, сейчас много исходников в открытом доступе, потому что этим занимается очень много бригад, направление модное. Даже мы продавали устройства проходным в аэропорты, в школы. Мы брали библиотеки, которые есть в открытом доступе. То есть фактически элементы конструктора, из которого можно собирать эти движки. В нашей команде работали два десятка программистов лет пять. За этот срок что-то осмысленное начинает получаться.

— А как происходит обучение? Как фиксируется то, что машина все правильно нашла, и что происходит дальше?

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

— Мы всё говорим, что «типа нейронов». А если не «типа», то это что?

— С точки зрения программирования это программный компонент, ну, например, самый простой процессор, сумматор, у которого зафиксировано, что с этими нейронами он связан на вход, с этими на выход, и передает какие-то сигналы, и у каждой связи есть вес, который корректируется в зависимости от того, насколько она полезна для распознавания. Сумматор — это получил один и один на вход, послал на выход два.

— Вы связали их в цепочки, показали фотографию…

— И эти нейроны по своим правилам, которые мы заложили, вначале просто произвольным образом накидали сумматоров, вычитаторов и еще каких-нибудь «-аторов» и случайно связали, передали и получили какой-то ответ — «да» или «нет». И если этот ответ правильный, мы те связи, которые участвовали в этом ответе, усиливаем.

— А что значит «усиливаем»?

— Увеличиваем ее вес. И уменьшаем какой-то другой. Все это возникло из того, что люди глубоко и основательно разрезали глаз и посмотрели, как устроен зрительный нерв со всеми этими штуками. Увидели, что есть сетчатка. Сетчатка связана с нейронами. Несколько нейронов второго уровня связаны с нейроном третьего уровня и так далее. И в итоге доходят до коры головного мозга. Они попытались всё это смоделировать. Этих экспериментов в шестидесятые-семидесятые годы было много. Зрительный механизм у человека есть с младенчества. Но человек только постепенно научается узнавать маму, папу, мишку, Васю. Просто за счет того, что какие-то связи действительно хорошие, хорошо создают образ, инвариант, который надо узнать. Они усиливаются, а те, которые плохо работают, —расслабляются. Идея была в этом. Накидаем случайных нейронов, такие цепи со слоями, будем показывать картинки, за хорошие угадки будем поощрять, то есть усиливать эти цепочки.

— И все же что такое «усиливать»?

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

— Предположим, в пределе у вас две линии. Вы им показываете человека. У одной попадание 80 процентов, у другой — 50 процентов.

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

— Тогда и нейронная сеть должна быть инвариантом, в том смысле, что нейронная сеть одной компании ничем не должна отличаться от нейронной сети другой компании.

— Во-первых, не все пользуются нейронными сетями. Это просто одна из моделей, разных технологий сотни. А потом нейроны все придумывают очень по-разному. Эта работа ведется уже десятки лет. Первые персептроны, я даже в восьмидесятых делал такой, были очень хреновые. Тогда это было на уровне распознать треугольник с вероятностью 50 процентов.

Сейчас мы накидаем какую-то случайную сеть, а потом будем долго ее обучать. В итоге там сами собой выстроятся коэффициенты. Например, делаем нейрон, который понимает контраст. Он на черное–белое говорит: «ОК, контраст», а на черное–черное не говорит. Другой нейрон будет оценивать освещенность, третий — вертикали, четвертый — горизонтали, пятый — круги, шестой — мелкие темные пятна. И так далее. Всё примерно так же и в глазу, и в зрительном нерве.

Соответственно, поэтому их очень легко обмануть. Зачем военные себе на лицо полосочки рисуют? Чтобы их в траве не увидели. Человеческий глаз обманывается совершенно запросто. Кто-то придумал, что если лицо раскрасить, то на митинге системы искусственного интеллекта тут же отвалятся, потому что ничего не поймут.

— Сейчас утверждается, что iPhone Х может распознавать хозяина по лицу. Это тоже игрушка?

— Мы пробовали делать вход на сайт через изображение вместо капчи. Пришел на сайт и вместо того, чтобы капчу набирать, можешь просто показать лицо в камеру: «Привет, я не робот». Она у нас на тех движках, которые есть на рынке, работала хреново. Сфотографировался против света — всё, она тебя вообще не узнала. Хотя у «Эппла» денег много, и задача простая. Им нужно опознать лицо в массиве из одного лица. Так что они могут попросить человека сфотографироваться хоть двадцать раз при разном освещении. Конечно, это никаких гарантий не даст. Пин-код из четырех цифр даст больше гарантий. Потому что пин-код из четырех цифр ты знаешь, а другой человек должен тысячу раз это дело перепробовать. А твою фотографию он распечатает из твоего же фейсбука и покажет твоему же айфону. И вуаля. Твое лицо, если ты не закрепощенная женщина Востока в парандже, совершенно не секретный объект, и его не имеет смысл использовать для авторизации, его все видят, тысячи камер его снимают, ты сам селфи везде выкладываешь, в паспорте оно есть…

А вот автомобиль уже обучен

— Заодно спрошу про беспилотный автомобиль. Как происходит его обучение с точки зрения видения препятствия? Особенно меня удивила идея, что когда автомобиль видит человека с мобильным телефоном или с книжкой и он выворачивает на дорогу, то каким-то образом на это стопроцентно реагирует. Это возможно?

— Задача очень простая, гораздо проще, чем обыграть в шахматы Каспарова. Машин десять-двадцать штук в окрестности, людей еще десять-двадцать, движутся они относительно стабильно, сопоставимые массы, инерция, лошадиные силы, буквой «Г» обычно ходят редко. То есть масштаб бедствия сильно проще миллионов шахматных комбинаций. И поскольку здесь нужна гарантия сто процентов, то, я думаю, там есть обучение нейронной сети и всякие другие замечательные ИИ-модели, но очень много туда захардкорено, запрограммировано традиционными способами, как уже шестьдесят лет программируют всё, что шевелится: ракеты, самолеты, суда, спутники, торпеды и подводные лодки.

— То есть автомобиль все время будет останавливаться, чувствуя опасность?

— Нет. Если есть люди, которые запрограммировали, что человек, который смотрит в книжку, — это опасность, то они не будут этому обучать нейронную сеть. Они просто допишут в программу какой-то образ — человек, у которого голова опущена.

— Я и говорю, что машина все время будет останавливаться.

— Почему? Опять же играют роль коэффициенты. Потому что человек, который читает книжку и идет по тротуару, конечно, может, выпрыгнуть на дорогу через восемь метров, но это невероятно. И если он идет на расстоянии восьми метров, то зачем останавливаться? Это имеет смысл, когда он движется наперерез.

И нейронные сети здесь не особо нужны. Они нужны, когда требуется опознавать нефтяные какие-нибудь поля на космических снимках. Там вообще не понять, что это. Невнятная картинка, для наших глаз это вообще ни о чем, мы приматы, у нас глаз заточен под определенные вещи — еда или хищник, самка или мама, живое-неживое, а ты по этим точечкам из космоса в рентгеновском диапазоне должен понять, есть там нефть или нет. А в случае с автомобилем человек может очень много, расспроси сорок шоферов разного опыта, и они тебе всё расскажут, а не могут рассказать — снимай на видео 360 градусов. Чтобы избежать опасных ситуаций, надо засунуть этот опасный образ: движется наперерез человек, голова склоненная, в руках предмет, сделать 40 тысяч фотографий и видеороликов. И все это запрограммировать, без всякого искусственного интеллекта. Я думаю, что там очень много программирования, очень много закладок всевозможных ситуаций. И практически все реально возможные комбинации зафиксированы. Если автомобиль-робот увидит выползшего на дорогу осьминога, он, возможно, озадачится (и затормозит), а во всех остальных случаях — нет.

Корпорации явно хотят в ближайшие лет пять всех шоферов уволить. Даже теперешние экспериментальные образцы водят лучше человека. Это не сильно умное занятие.

— А что так долго тогда к этому шли?

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

А сейчас главная проблема — гетерогенность дороги и создание инфраструктуры. Потому что дорога, на которой и люди, и роботы, — это сложно. Люди непредсказуемы. А одномоментно людей не выгонишь. Поэтому какое-то время будет этот переходный период, когда людей будет все меньше, а роботов все больше. Какие-то будут специальные правила.

— То есть вы хотите сказать, что, как только появился маленький компьютер, сразу стало возможным искусственное пилотирование?

— Да, задача простая, но громоздкая. Когда едешь, ты должен анализировать все это 3D. Чуть смоченный асфальт — путь торможения стал на двадцать метров длиннее. Ты, в принципе, должен понимать психологию всех окружающих тебя людей. Ты понимаешь, что если та машина прыгала в шашечки, то она и сейчас прыгнет. А этот держит большую дистанцию, и так и будет держать, и перед ним все будут запрыгивать в ряд. То есть массив большой, ты должен анализировать большую 3D-картинку, и это надо куда-то запихать. Как только мы преодолели возможность по объему памяти, по быстродействию обсчета такого 3D-видео в реальном времени, сразу все стало возможно.

От людей на дорогах будут избавляться. Я думаю это произойдет в ближайшие лет пять. И это, конечно, все изменит радикально. Никаких таксистов. Это очень клеится с каршерингом. Между такси и каршерингом многие сейчас выбирают каршеринг, хоть это и сложнее. А так будет каршеринг, и все. И даже общественный транспорт может подвинуться, потому что комфортнее сесть и поехать одному. И электромобиль-робот не будет расстроен, если надо отъехать и два часа позаряжаться. Или уехать куда-то в подвал, куда человека не пошлешь.