Разработчики американской компании Vicarious создали алгоритм, эффективно расшифровывающий капчу — самый распространенный на сегодняшний день способ отличить человека от робота. Такой алгоритм работает на основе компьютерного зрения и рекурсивной кортикальной нейросети, и может расшифровать капчу на многих популярных интернет-платформ, в том числе PayPal и Yahoo. Работа опубликована в журнале Science.
Капча (CAPTCHA, расшифровывается как Completely Automated Public Turing test to tell Computers and Humans Apart — полностью автоматизированный публичный тест Тьюринга для различения компьютера и человека) используется для того, чтобы выяснить, кто пытается воспользоваться каким-либо сервисом: человек или какая-нибудь программа для автоматизации действий в интернете. В основе капчи обычно лежит задание, например, различить «плавающие» буквы, выделить слово на фоне или отметить фотографии, которые содержат определенный объект. Для его решения человеку достаточно имеющихся у него знаний об окружающем мире и базовых навыков (например, чтения). Компьютеру, однако, для выполнения подобного теста требуется огромное количество данных. Он может распознать любые стандартные символы, но, например, «плывущие» буквы, которые встречаются ему впервые, — с трудом. С другой стороны, для человека подобная задача не представляет большой проблемы; искусственный интеллект, соответственно, должен быть максимально развит (по сравнению с настоящим, человеческим интеллектом) для ее решения.
Авторы новой работы, ученые из американской компании Vicarious, занимающейся исследованиями в области искусственного интеллекта, представили новую нейросеть для расшифровки капчи. Такая нейросеть получила название «рекурсивная кортикальная нейросеть» (англ. recursive cortical network, сокращенно RCN). Для ее создания использовались знания об обработке визуальной информации человеком, а именно — об эффективном разделении объекта и фона, даже в том случае, когда они имеют очень похожую структуру. Нейросеть, таким образом, выделяет на общем фоне контур объекта (например, буквы), и может делать это даже в том случае, если часть объекта скрыта за другим.
Нейросеть была обучена на достаточно небольшом количестве изображений — около 26 тысяч. Для сравнения, алгоритму распознавания капч на основе сверточной нейросети требуется несколько миллионов изображений.
Для проверки работы нейросети использовались данные из открытого генератора капч Google — reCAPTCHA, которые, по словам разработчиков, имеют множество достоинств, основное из которых — сравнительная легкость распознавания для людей и сложность для компьютеров. Кроме того, для проверки также были использованы капчи Yahoo, PayPal и Botdetect.
Капча считается решенной, если компьютеру удалось распознать ее в одном проценте случаев — такой показатель, однако, не обозначает большую эффективность. Новая нейросеть смогла расшифровать примеры из reCAPTCHA с точностью до 66,6 процентов. Для сравнения, человек может распознать те же самые комбинации с точностью в 87 процентов.
Алгоритм также показал лучшую (по сравнению с другими алгоритмами, работа которых основана на сверточных нейросетях) эффективность в распознавании отдельных символов: до 94,3 процентов. Для сравнения, эффективность работы сверточной нейросети существенно падает с увеличением визуальных различий между обучающей и тренировочной выборками.
О том, что новая нейросеть способна побить капчу с невероятной для компьютера эффективностью, представители компании сообщали еще в 2013, чем вызвали немало скептицизма — в особенности, от разработчиков reCAPTCHA. Эффективная работа их алгоритма, однако, поднимает вопрос об улучшении кибербезопасности и разработки новых средств для защиты данных пользователей от искусственного интеллекта.
Специалисты в области искусственного интеллекта часто модифицируют уже известные и используемые нейросети для самых разных целей. Так, например, в нашей заметке вы можете прочитать про алгоритм на основе порождающей состязательной нейросети, который может создавать оригинальные произведения искусства.
Елизавета Ивтушок