Магический гаджет: как карманная игра из 90-х научилась «читать мысли»

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

Влияние закона Мура проявилось в полной мере: объемы оперативной памяти стремительно росли, производительность процессоров совершила колоссальный скачок, а череда алгоритмических прорывов следовала один за другим.

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

Mind Games: Начало пути

Лето 1988 года в Оттаве выдалось аномально жарким — столбики термометров в тени достигали 32°C. Пока жители канадской столицы изнывали от зноя, группа местных программистов была занята куда более увлекательным делом.

Один из них, Роб Бургенер, распространял среди коллег флоппи-дискеты — своего рода прообраз современного интернета — с лаконичным призывом: «Здесь игра. Попробуйте. Моя разработка».

Тех, кто рассчитывал на динамичный экшен вроде Donkey Kong или Bard’s Tale, ждало недоумение. Вместо привычных игровых миров на экране появлялось скромное диалоговое окно:

Привет. Я умею читать мысли. Загадайте любой предмет из категорий: Животное, Растение, Минерал или Другое.

После выбора категории система начинала задавать наводящие вопросы, которые казались абстрактными и сбивающими с толку: «Это живое?», «Оно перемещается?», «От него исходит запах?»

Примерная реконструкция диалогового окна 20Q. Восьмидесятые такие восьмидесятые.
Примерная реконструкция диалогового окна 20Q. Восьмидесятые такие восьмидесятые.

На сеанс «допроса» отводилось всего 20 вопросов. Если алгоритм не угадывал предмет, он признавал поражение. Однако в половине случаев он давал безошибочный ответ, вызывая у скептически настроенных программистов неподдельное удивление, граничащее с суеверием.

Вероятность случайного угадывания была ничтожно мала, ведь игрок мог загадать абсолютно любой объект в рамках выбранных категорий. На вопросы о секрете программы Бургенер лишь загадочно улыбался: «Настоящий волшебник не раскрывает своих фокусов…»

10 миллионов нейронных связей

Игра получила название 20Q. В самом начале своего пути она была далека от совершенства, и многие попытки заканчивались неудачей.

Её «интеллект» базировался на 5–10 миллионах синаптических связей, объединенных в нейроподобную сеть. По вычислительной сложности это сопоставимо с мозгом насекомого. Каким же образом она проникала в человеческие мысли?

Экран “game over”.
Экран “game over”.

Изначально 20Q не была знакома с особенностями человеческого мышления, но каждая новая партия позволяла ей корректировать весовые коэффициенты. Это помогало лучше ориентироваться в базе данных, насчитывающей 10 000 объектов.

Подобно ребенку, 20Q училась на ошибках. Получая правильный ответ, система анализировала ход диалога, расширяя свои представления о дескриптивных характеристиках предметов и их логических взаимосвязях.

Для достижения подлинного мастерства требовались тысячи итераций. Запуск веб-версии в 1994 году придал алгоритму колоссальный импульс, увеличив точность угадывания до 80% (а при 25 вопросах — до 98%).

Архитектура «дьявольской» программы

What year is 20Q game from? : r/nostalgia
Живой девайс прямиком из нулевых, откопанный кем-то на Реддите.

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

Бургенер, будучи самоучкой в области машинного обучения, сделал ставку на адаптивные нейронные структуры. Он реализовал остроумную систему двусторонней матрицы:

  • Все знания хранились в структурированной матрице «Объекты × Вопросы».

  • В каждой ячейке содержался числовой коэффициент, отражающий степень соответствия ответа на вопрос конкретному объекту.

  • Для экономии ограниченных ресурсов каждый вес кодировался всего 1 байтом: 7 бит отводились на величину связи, 1 бит — на знак.

Матрица приоритетов, демонстрирующая активацию объектов в зависимости от ответов пользователя.

Система присваивала веса: «Да» = +4, «Нет» = –4, «Иногда» = +2, «Не знаю» = 0. При каждом ответе игрока коэффициенты ячеек динамически корректировались.

Таблицы ранжирования объектов, управляющие весами модели.

Система не отсекала варианты сразу, а лишь меняла их приоритетность, что позволяло сохранять гибкость даже при субъективных или ошибочных ответах пользователя.

Выбор вопросов основывался на двух стратегиях:

  • Максимизация информационного выигрыша: поиск вопроса, который эффективно разделяет пул кандидатов на две примерно равные группы.

  • Верификация фаворита: если один объект значительно опережает остальные, система задает уточняющий вопрос для окончательного подтверждения гипотезы.

Логическая модель выбора вопросов на основе накопленной информации.

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

Интересная особенность 20Q заключалась в возможности подстройки под демографические группы: например, ответы на вопрос «Это едят?» сильно варьировались в зависимости от региона, что требовало наличия специфических профилей весов.

Триумф в двухтысячных

Автор шайтан-машинки собственной персоной.
Автор шайтан-машинки собственной персоной.

После увольнения в 1994 году Бургенер полностью сосредоточился на развитии проекта. В 2003 году 20Q обрела физическое воплощение в виде компактного карманного устройства.

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

Конечно, сегодня, на фоне возможностей трансформеров, 20Q кажется скромным решением. Однако её способность впечатлять «ясновидением» при минимальных вычислительных затратах остается выдающимся примером инженерного изящества.

Тот самый сайт, где все началось.

Патент Google с техническими комментариями автора.

Аналоги игры можно скачать на Андроид и iOS по запросу Twenty questions.

 

Источник

Читайте также