Как оценивать интеллект? Подход Google

От себя:

В ноябре 2019 года вышла программная статья от Google «Об оценке интеллекта» Франсуа Шолле.
64 страницы посвящены тому, как появилось современное понимание ИИ, почему машинное обучение от него так далеко, и почему мы все еще не можем адекватно измерить «интеллект».


Чтобы отбор был честным, задание для всех одно: залезьте на дерево.

Наша команда занимается NLP и общей методологией ИИ-тестов, учитывая последние тренды в универсальных трансформерах типа BERT, которые оцениваются тестами на логику и здравый смысл. Так, NLP забирает в себя все новые задачи, связанные с воспроизведением все более сложных действий и по сути отражающих механизмы мышления. Оказалось, что и другие области ML отхватили свой кусок пирога в этом направлении. Например, CV — «Animal AI Challenge».

Понятно, что сейчас “лучше” при возможности делать ML-модели более интерпретируемыми, не использовать 10 маленьких классификаторов, а тренировать одну модель, и так далее, но насколько это все-таки далеко от реального “интеллекта”?

Спойлер:
Еще пока далеко.

Программная статья дает подробный и разгромный разбор исследований в сфере технической оценки современного ИИ.
В конце статьи автор предлагает свой собственный тест и датасет к нему: Abstraction and Reasoning Corpus (ARC), привязанный к абстрактному мышлению.

Но обо всем подробнее:

Конспект “On the Measure of Intelligence“


Чтобы сознательно создавать более интеллектуальные и более похожие на человека искусственные системы, нам требуется ясное определение интеллекта и умение оценивать его. Это нужно, чтобы корректно сравнивать две системы, или систему с человеком. За последнее столетие предпринималось много попыток определить и измерить интеллект как в области психологии, так и в области ИИ.

Современное ML-сообщество по-прежнему любит сравнивать умения, которые демонстрируют ИИ и люди – при игре в настольные и компьютерные игры, при решении задач. Но для оценки интеллекта мало измерить только умение решать поставленную задачу. Почему? Потому что это умение во многом формируется не интеллектом, а прежними знаниями и опытом. А их можно «купить». Скармливая системе неограниченный объём обучающих данных или предварительной информации, экспериментаторы могут не только вывести машину на произвольный уровень навыков, но и скрыть то, насколько способна к интеллектуальному обобщению сама система.

В статье предлагается 1) новое официальное определение интеллекта на основе эффективности приобретения навыков; 2) новый тест на способность формирования абстракций и логических выводов (Abstraction and Reasoning Corpus, ARC). ARC можно использовать для измерения человеческой формы сильного подвижного интеллекта, это позволяет численно сравнивать относительно сильный интеллект систем ИИ и человека.

Необходимо практически полезное определение интеллекта и его метрик


Цель развития ИИ – в создании машин с интеллектом, который сопоставим с интеллектом людей. (Так цель была сформулирована с момента зарождения искусственного интеллекта в начале 50-х годов ХХ века, и с тех пор эта формулировка сохраняется).

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

Причина этого в том, что мы до сих пор не можем однозначно ответить на вопрос о том, что такое интеллект. Существующие тесты, например, тест Тьюринга [11] и премия Лёбнера [10], не могут служить драйверами прогресса, поскольку полностью исключают возможность объективно определить и измерить интеллект, а опираются на субъективную оценку.

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

Определение интеллекта: два противоречивых подхода


Суммарное базовое определение ИИ звучит так: «Интеллект измеряет способность агента достигать целей в широком диапазоне сред». Ничего не объясняет?

Весь конфликт в современной науке сводится к тому, что считать отправной точкой естественного интеллекта:
  • разум – статичный набор механизмов спецназначения, которые сформированы эволюцией для заведомо определенных задач. Эта точка зрения дарвинизма, эволюционной психологии и нейрофизиологов, поддерживающих концепцию биологической модулярности сознания.
    Понимание разума как широкого набора вертикальных, относительно статичных программ, вместе образующих «интеллект», также развивал Марвин Мински, что в итоге привело к пониманию ИИ как эмуляции человеческих результатов на заданном списке задач-тестов.
  • tabula rasa: ум – это «чистый лист» неопределённого назначения, способный превращать произвольный опыт в знания и навыки для решения любой задачи. Эта точка зрения Алана Тьюринга и коннекционистов. В таком понимании интеллект представляется через метафору супер-ЭВМ, и его низкоуровневая механика дает возможности приобретать неограниченный набор навыков “с нуля”, “по данным”.

В настоящее время неверными признаны обе концепции. ¯\_(ツ)_/¯

Оценка ИИ: от оценки умений к оценке широких способностей



Тесты на заданных наборах данных стали главным драйвером прогресса в области ИИ, поскольку они воспроизводимы (тестовый набор фиксирован), справедливы (тестовый набор одинаков для всех), масштабируемы (многократное повторение теста не ведет к высоким расходам). Многие популярные тесты — DARPA Grand Challenge [3], Netflix Prize — внесли вклад в развитие новых алгоритмов ML-моделей.
При положительных результатах, даже добытых кратчайшим путем (с оверфиттингом и костылями), ожидаемый уровень качества постоянно поднимается. МакКордак назвала это «эффектом ИИ»: «Каждый раз, когда кто-то придумывал новый способ заставить компьютер делать нечто новое (играть в шашки) – обязательно появлялись критики, которые говорили: “Это не мышление”» [7]. Когда мы знаем, как именно машина делает что-то «умное», мы перестаем считать это умным.

«Эффект ИИ» появляется потому, что путаются процесс использования интеллекта (например, процесс обучения нейросети игре в шахматы) и артефакт, создаваемый таким процессом (получившаяся модель). Причина путаницы проста – в человеке эти две вещи неразделимы.

Для отхода от оценки лишь артефактов, а само способности к обучению и приобретению новых навыков вводят понятие “диапазона обобщения”, при котором система принимает градуальные значения.
  • Отсутствие обобщения. Системы ИИ, в которых отсутствует неопределенность и новизна, не демонстрируют способности к обобщению, например: программа для игры в крестики-нолики, которая побеждает перебором вариантов.
  • Локальное обобщение, или «надежность» — способность системы обрабатывать новые точки из известного распределения для одной задачи. Например, локальное обобщение выполнил классификатор изображений, который может отличить ранее не виденные им изображения с кошками от аналогичных по формату картинок с собаками после обучения на множестве подобных изображений кошек и собак.
  • Широкое обобщение, или «гибкость» — способность системы обрабатывать широкую категорию задач и сред без дальнейшего вмешательства человека: готовность справляться с ситуациями, которые не могли быть предусмотрены создателями системы, с «неизвестными неопределенностями». Так, самоходное транспортное средство пятого уровня или домашний робот, способный пройти «кофейный тест» Возняка (зайти на случайную кухню и приготовить чашку кофе) [16], демонстрирует способность к высокой степени обобщения.
  • Предельное обобщение. Открытые системы с возможностью решения совершенно новых задач, которые имеют лишь общие черты с ранее встречавшимися ситуациями, характерными для любой задачи и сферы в широком диапазоне — «адаптация к неизвестным неопределенностям в неизвестном диапазоне задач и областей». В настоящее время единственным примером такой системы являются биологические формы интеллекта (людей и, возможно, других разумных видов).


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

В настоящее время мы выходимся на новом этапе, в котором стремимся создавать гибкие системы — возрастает интерес к использованию широкого набора тестовых заданий для оценки систем, развивающих гибкость:
  1. эталонные критерии GLUE [13] и SuperGLUE [12] для обработки естественного языка
  2. среда обучения Arcade для агентов обучения с подкреплением [1],
  3. платформа для экспериментов и исследований ИИ «Проект Мальмё»,
  4. набор экспериментов Behavior Suite [8]

Помимо таких многозадачных тестов, недавно было предложено два комплекта тестов для оценки способности к обобщению, а не способности решать конкретные задачи:
  1. олимпиада Animal-AI Olympics [2] (animalaiolympics.com)
  2. и соревнование GVG-AI [9] (gvgai.net).

Оба теста основаны на предположении, что оценивать у агентов ИИ способности к обучению или планированию (а не специальные навыки) следует по решению неизвестного им ранее набора заданий или игр.


Новая концепция


Как сравнивать искусственный интеллект с человеческим, если уровень различных познавательных способностей у разных людей неодинаков?

Результаты тестов на интеллект у людей с разными способностями могут совпадать – это общеизвестный факт когнитивной психологии. Он показывает, что познание – это многомерный объект, структурированный иерархически по образу пирамиды с широкими и узкими навыками, наверху которой находится фактор общего интеллекта. Но действительно ли «сильный интеллект» – это вершина когнитивной пирамиды?

Теорема «бесплатных обедов не бывает» [14, 15] говорит нам о том, что любые два алгоритма оптимизации (включая человеческий интеллект) эквивалентны, когда их производительность усредняется для каждой возможной задачи. То есть для того, чтобы добиться производительности выше случайной, алгоритмы должны быть заточены под свою целевую задачу. Однако в данном контексте под «любой возможной задачей» подразумевается равномерное распределение по предметной области. Распределение задач, которые были бы актуальны именно для нашей Вселенной, не соответствовало бы такому определению. Таким образом, мы можем задать следующий вопрос: является ли фактор интеллекта человека универсальным?

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

Судя по всему, человеческий интеллект далеко не универсален: он непригоден для большого ряда задач, под которые не адаптированы наши врожденные априорные знания.
Например, люди могут очень эффективно решать некоторые небольшие задачи полиномиальной сложности, если те мыслительно пересекаются с эволюционно знакомыми задачами вроде навигации. Так, задача коммивояжера с небольшим количеством точек может быть решена человеком почти оптимально за почти линейное оптимальное время [6], с использованием стратегии восприятия. Однако, если вместо «нахождения кратчайшего пути» попросить его найти самый длинный путь [5], то человек справится сильно хуже, чем один из простейших эвристических алгоритмов: алгоритм «дальнего соседа».


Авторы утверждают, что человеческое познание развивается по той же схеме, что и физические способности человека: и то, и другое развивалось в процессе эволюции для решения конкретных задач в конкретных средах (эти задачи известны как «четыре F» — четыре основных инстинкта: fighting, fleeing, feeding and fornicating: бей, беги, кормись и размножайся).

Основной посыл этой работы заключается в том, что «сильный интеллект» – это свойство системы, которое нельзя определить бинарно: «либо оно есть, либо нет». Нет, это диапазон, зависящий от:
  1. области применения, которая может быть более или менее широкой;
  2. степени эффективности, с которой система преобразует априорные знания и опыт в новые навыки в заданной области;
  3. степени сложности обобщения, представленной различными точками в рассматриваемой нами области.

«Ценность» одной сферы применения интеллекта по сравнению с другой является абсолютно субъективной — мы не были бы заинтересованы в системе, сфера применения которой не пересекалась бы с нашей. И даже не посчитали бы такую систему интеллектуальной.

Чего ожидать от идеального теста ИИ?



  • Он должен описывать область своего применения и свою собственную способность прогнозировать ее объем, то есть он должен устанавливать достоверность.
  • Он должен быть надежным (то есть воспроизводимым).
  • Он должен ставить перед собой задачу измерения широких способностей и обобщения на уровне разработчика:
    ◦ В состав его оценочного набора не должно входить никаких задач, известных заранее – ни самой системе, проходящей тест, ни ее разработчикам
    ◦ Он должен как минимум четко показывать, что он стремится измерить – локальное обобщение (надежность), широкое обобщение (гибкость) или предельное обобщение (общий интеллект)
  • Он должен контролировать объем опыта, используемый системами во время обучения. «Купить» эффективность эталонного теста путем отбора неограниченных обучающих данных должно быть невозможно.
  • Он должен предоставлять четкое и всестороннее описание набора используемых первоначальных знаний.
  • Он должен беспристрастно работать как для людей, так и для машин, используя такие же знания, какие используют люди.

Первая попытка сделать такой тест описана далее.

Предлагаемый тест: массив данных ARC



ARC можно рассматривать как эталонный тест сильного искусственного интеллекта, как эталонный тест программного синтеза или как психометрический тест интеллекта. Он нацелен как на людей, так и на системы искусственного интеллекта, предназначенные для имитации сильного подвижного интеллекта, сходного с интеллектом человека. По формату он чем-то напоминает прогрессивные матрицы Равена [4], классический тест на IQ, восходящий к 1930-м годам.

В состав ARC входят два набора данных: обучающий и оценочный. В обучающем наборе 400, а в оценочном — 600 задач.
При этом оценочный набор также делится на два: открытый (400 задач) и закрытый (200 задач). Все предложенные задачи уникальны, и набор оценочных задач не пересекается с набором обучающих.
Данные по задачам можно найти в репозитории: github.com/fchollet/ARC

Каждая задача состоит из небольшого количества демонстрационных и тестовых примеров. Демонстрационных в среднем 3,3 на задачу, тестовых – от одного до трех, чаще всего один. Каждый пример, в свою очередь, состоит из input grid и output grid.
Такая «сетка» – это матрица из определенных символов (каждый из которых, как правило, выделяется определенным цветом)

Всего уникальных символов (или цветов) — 10. «Сетка» может быть любой высоты или ширины – от 1x1 до 30x30 включительно (средняя высота — 9, средняя ширина — 10).
При решении оценочной задачи участник тестирования получает доступ к обучающим примерам (как к «входной», так и к «выходной сетке»), а также к начальным условиям для выполнения тестового задания – «входной сетке» соответствующих тестовых (оценочных) примеров. Далее участник тестирования должен построить собственную «выходную сетку» для «входной сетки» каждого тестового примера.
Построение «выходной сетки» осуществляется исключительно с нуля, то есть участник тестирования должен сам решить, какова должна быть высота и ширина этой «сетки», какие символы следует в нее поместить и куда. Считается, что задача решена успешно, если участник тестирования может дать точный и правильный ответ по всем входящим в нее тестовым примерам (двухчастный показатель успеха).

Наличие закрытого оценочного набора позволяет нам строго следить за чистотой оценки в условиях открытого конкурса. Примеры заданий ARC:

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

Задача по устранению «шумов».

Красный объект «перемещается» по направлению к голубому, пока не входит с ним в «контакт».

Задача, неявная цель которой заключается в том, чтобы продолжить (экстраполировать) диагональную линию, которая «отскакивает» при контакте с красным препятствием.


Задача, где необходимо выполнить разом целый ряд действий: «продолжить линию», «обойти препятствия» и «эффективно достичь конечной цели» (в реальной задаче приводится больше демонстрационных пар).

ARC не предоставляется как идеальный и законченный тест, тем не менее, он обладает важными свойствами:
  • каждая тестовая задача новая и опирается на четкий набор первоначальных знаний, общих для всех участников тестирования.
  • он может быть полностью решен людьми, но его нельзя выполнить при помощи каких-либо существующих на данный момент приемов машинного обучения (включая глубинное обучение).
  • тест может представлять собой весьма занятную «игровую площадку» для исследователей ИИ, интересующихся разработкой алгоритмов, способных к широкому обобщению, которое действует подобно человеческому. Кроме того, ARC дает нам возможность сравнить человеческий и машинный интеллект, так как мы предоставляем им одинаковые первоначальные знания.


Автор планирует и дальше совершенствовать ARC — и как площадку для исследований, и как совместный эталонный тест для машинного и человеческого интеллекта.

Как вы думаете — может, основная идея будет более успешна, если удастся отвлечь внимание сообщества сильнго ИИ от попыток превзойти людей в конкретных задачах?

Литература:


  • [1] Марк Дж. Беллемар, Явар Наддаф, Джоэл Венесс и Майкл Боулинг (Marc G. Bellemare, Yavar Naddaf, Joel Veness, and Michael Bowling). Аркадная учебная среда: Платформа оценки для основных агентов (The arcade learning environment: An evaluation platform for general agents). Дж. Артиф (J. Artif). Int. Res., (1):253–279, май 2013.
  • [2] Бенджамин Байрет, Хос Эрнандес-Орайо, Люси Чеке, Марта Халина, Мюррей Шанахан и Мэтью Кросби (Benjamin Beyret, Jos Hernndez-Orallo, Lucy Cheke, Marta Halina, Murray Shanahan, and Matthew Crosby). Среда «животное-ИИ»: обучение и испытание искусственного восприятия по типу животных (The animal-AI environment: Training and testing animal — like artificial cognition), 2019.
  • [3] Мартин Бюлер, Карл Ягемма и Санджив Сингх (Martin Buehler, Karl Iagnemma, and Sanjiv Singh). Большой челлендж Управления перспективных исследовательских проектов Министерства обороны США 2005 г.: Большая гонка роботов (The 2005 DARPA Grand Challenge: The Great Robot Race). Springer Publishing Company, Incorporated, 1-е издание, 2007.
  • [4] Равен Дж. Джон (Raven J. John). Прогрессивные матрицы Равена (Raven Progressive Matrices). Springer, Бостон, Mассачусетс, 2003.
  • [5] Джеймс Макгрегор и Юн Чу (James Macgregor and Yun Chu). Работа человека над задачей коммивояжера и связанные с этим проблемы: обзор (Human performance on the traveling salesman and related problems: A review). The Journal of Problem Solving, 3, 02 2011.
  • [6] Джеймс Макгрегор и Томас Ормерод (James Macgregor and Thomas Ormerod). Работа человека над задачей коммивояжера (Human performance on the traveling salesman problem). Perception & psychophysics, 58:527–39, 06 1996.
  • [7] Памела МакКордак (Pamela McCorduck). Машины, которые думают: Собственное исследование истории и перспектив искусственного интеллекта (Machines Who Think: A Personal Inquiry into the History and Prospects of Artificial Intelligence). AK Peters Ltd, 2004.
  • [8] Ян Осбанд, Йотам Дорон, Маттео Хессел, Джон Асланидес, Эрен Сезенер, Андре Сарайва, Катрина МакКинни, Тор Латтимор, Чаба Сепезвари, Сатиндер Сингх и др. (Ian Osband, Yotam Doron, Matteo Hessel, John Aslanides, Eren Sezener, Andre Saraiva, Katrina McKinney, Tor Lattimore, Csaba Szepezvari, Satinder Singh, et al). Поведенческий набор для обучения с подкреплением (Behaviour suite for reinforcement learning), препринт arXiv, arXiv:1908.03568, 2019.
  • [9] Диего Перес-Либана, Джиалин Лю, Ахмед Халифа, Ралука Д Гайна, Джулиан Тогелиус и Симон М. Лукас (Diego Perez-Liebana, Jialin Liu, Ahmed Khalifa, Raluca D Gaina, Julian Togelius, and Simon M Lucas). Универсальная видеоигра для искусственного интеллекта: многодорожечная система оценки агентов, игр и алгоритмов обобщения контента (General video game AI: a multi-track framework for evaluating agents, games and content generation algorithms). Препринт arXiv arXiv: 1802.10363, 2018.
  • [10] Дэвид М. У. Пауэрс (David M. W. Powers). Общий тест Тьюринга и премия Лёбнера (The total Turing test and the loebner prize). В Новых методах обработки языка и компьютерного изучения естественного языка, 1998.
  • [11] A.М. Тьюринг (A.M. Turing). Вычислительные машины и разум (Computing machinery and intelligence). 1950.
  • [12] Алекс Ван, Яда Пруксачаткун, Никита Нангиа, Аманприт Сингх, Джулиан Майкл, Феликс Хилл, Омер Леви и Сэмюэл Р. Боуман (Alex Wang, Yada Pruksachatkun, Nikita Nangia, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel R Bowman). SuperGLUE: более липкий эталонный тест для систем понимания языка общего назначения (Superglue: A stickier benchmark for general-purpose language understanding systems.) 2019.
  • [13] Алекс Ван, Аманприт Сингх, Джулиан Майкл, Феликс Хилл, Омер Леви и Сэмюэл Р. Боуман (Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel R Bowman). Glue: Многозадачная платформа для оценки и анализа понимания естественного языка (Glue: A multi-task benchmark and analysis platform for natural language understanding). 2018.
  • [14] Дэвид Х. Вольперт (David H Wolpert). Что на самом деле означают теоремы «Бесплатных завтраков не бывает»; как улучшить алгоритмы поиска (What the no free lunch theorems really mean; how to improve search algorithms).
  • [15] Д.Х. Вольперт и У.Дж. Макриди (D.H. Wolpert and W.G. Macready). Теорема «Бесплатных завтраков не бывает» для оптимизации (No free lunch theorems for optimization). Ученые записки Института инженеров по электротехнике и радиоэлектронике по эволюционным вычислениям (IEEE Transactions on Evolutionary Computation), стр. 67–82, 1997.
  • [16] Стивен Г. Возняк (Stephen G. Wozniak). Три минуты со Стивом Возняком (Three minutes with steve wozniak). PC World, 2007.
Источник: habr.ru