On the Measure of Intelligence

https://arxiv.org/pdf/1911.01547v2.pdf

Когда - 5 ноября 2019

🔝 Кто и что сделал?

Автор знакомой многим библиотеки keras Francois Chollet из знакомого многим Google решил заняться сильным искусственным интеллектом, и сделал датасет и метрику, по которым можно сравнивать различные алгоритмы потенциально сильного ИИ между собой и с человеком. Основной посыл автора заключается в наблюдении, что прогресс в любой области машинного обучения начинается с задания максимально конкретной, единой для всех исследователей задачи: датасета и метрики на этом датасете, которую нужно оптимизировать. Например, как это случилось с ImageNet и accuracy в компьютерном зрении.



💡 Подробности

💿⚖️ Требования к датасету и метрике

Поставленная задача должна:

1) Решаться и человеком, и алгоритмом ИИ

2) Учитывать, что, чтобы человек и ИИ соревновались на равных, в ИИ должны быть заложены приорные знания, которых нет у алгоритма (форма круга, квадрата, натуральные числа и тд)

3) Проверять не специфичные навыки, а способность генерализовать (решать новые задачи, которых не было в тренировочной выборке)

4) Получать воспроизводимые и устойчивые результаты с минимальной рандомизацией



💿 Датасет

Датасет состоит из 1000 заданий (400 - тренировка, 400 открытая валидация, 200 - закрытая валидация) - трех пар изображений, одно из пары получается преобразованием другого из этой пары, + четвертого изображения, пару для которого нужно найти с помощью общего для всех пар преобразования. Пример показан на картинке под постом. Датасет напоминает тест IQ, все задания может пройти человек. Меру интеллекта можно рассчитать зная преобразование - программу, предсказанную алгоритмом на тесте. Как?



⚖️ Метрика

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

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



🧚‍♀️ Что дальше и что в итоге?

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