В основе CaptionBot лежит система Microsoft Cognitive Services, которая обеспечивает работу мини-сайтов компании, где можно по фото узнать свой возраст, а также сравнить себя со знаменитостью и узнать породу собаки.
CaptionBot использует машинное обучение и постоянно совершенствует свои знания о мире во время практики. Поэтому все загружаемые в программу изображения сохраняются. Также он базируется на алгоритме естественной речи и старается быть непосредственным — например, добавляет в конце описания эмодзи.
В большинстве случаев он справляется с задачей угадывания хорошо, но иногда довольно нелепо ошибается или предлагает совершенно невообразимые варианты.
Microsoft выпустила CaptionBot спустя несколько недель после своего скандального социального эксперимента с чатботом Tay. Twitter-бот должен был поддерживать милую беседу на актуальные темы и обучаться на основе диалогов. В итоге меньше, чем за сутки, Tay стала соглашаться с нацистскими высказываниями и другими экстремистскими идеями — этому ее научили пользователи. Проект был приостановлен, а Tay была отключена.
Неудивительно, что CaptionBot намеренно отказывается описывать изображения с нацистской символикой, Гитлером и Усамой бен Ладеном. Алгоритм сообщает: «Я действительно не могу описать эту картинку». Хотя, как отмечает CNN Money, алгоритм верно угадывает Джозефа Менгеле, Йозефа Геббельса и Мао Цзедуна.
Компания признает, что добавила функции, которые контролируют алгоритм распознавания нового бота. Однако теперь Microsoft обвиняют в цензуре, что в общем-то вполне справедливо. Умалчивание никогда не было лучшей тактикой, тем более для систем распознавания образов. CaptionBot мог бы не игнорировать личностей с плохой репутацией, а давать какой-то комментарий к их фактическому описанию.