image

Компьютеры преобразовали работу и развлечения, перевозки и медицину, игры и спорт. И при всей их мощи эти машины всё ещё не способны выполнять простейшие задачи, с которыми справится и ребёнок – допустим, перемещаться в неизвестном помещении или использовать карандаш.

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

Почему для постройки умных машин нам нужно понять, как работает мозг? Хотя такие техники машинного обучения, как глубинные нейросети, в последнее время показывают впечатляющие результаты, они всё ещё очень далеки от интеллектуальных, от возможности понимать и действовать в окружающем мире так, как делаем это мы. Единственный пример интеллекта, возможности обучаться, планировать и исполнять задуманное – это мозг. Следовательно, мы должны понять принципы, лежащие в основе человеческого интеллекта, и использовать их в разработке по-настоящему умных машин.

В нашей компании Numenta, находящейся в Редвуд-Сити, шт. Калифорния, мы изучаем неокортекс (новую кору) – крупнейший из компонентов мозга, и главный из них, отвечающий за интеллект. Наша цель – понять, как она работает и определить принципы, лежащие в основе человеческого сознания. В последние годы мы достигли больших успехов в нашей работе, определив несколько свойств биологического интеллекта, которые, как мы считаем, необходимо внедрить в будущие думающие машины.

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

Неокортекс – это сильно складчатый лист толщиной в 2 мм. Если бы его можно было растянуть, он был бы размером с большую салфетку. У людей он занимает 75% объёма мозга. Именно эта его часть делает нас умными.

При рождении неокортекс почти ничего не знает, он обучается через опыт. Всё, что мы узнаём о мире – ведя машину, делая кофе в автомате, и тысячи других вещей, с которыми мы взаимодействуем ежедневно – хранится в неокортексе. Он учится тому, что это за объекты, где они находятся и как себя ведут. Неокортекс генерирует команды для моторики, так что когда вы готовите еду или пишете программу, это поведение контролирует именно неокортекс. Язык также создаётся и понимается неокортексом.

Неокортекс, как и весь мозг и нервная система, состоит из клеток именуемых нейронами. Поэтому, чтобы понять, как работает мозг, нам нужно начать с нейронов. Ваш неокортекс содержит порядка 30 млрд нейронов. У типичного нейрона есть один похожий на хвост аксон и несколько древоподобных удлинений – дендритов. Если представить, что нейрон – это некая сигнальная система, то аксон – это передатчик, а дендриты – приёмники. На ответвлениях дендритов находятся 5000 – 10000 синапсов, каждый из которых соединяется с таким же синапсами других нейронов. Всего в мозгу более 100 трлн синаптических связей.

Имеющийся у вас опыт, связанный с окружающим миром – то, что вы распознаёте лицо приятеля, наслаждаетесь музыкой, держите в руке мыло – появился в результате входных данных, поступивших из глаз, ушей и других органов чувств, прошедших до вашего неокортекса и заставивших группы нейронов сработать. Когда нейрон срабатывает, его электрохимический всплеск путешествует по аксону и по синапсам проходит в другие нейроны. Если принимающий нейрон получает достаточно входных импульсов, он может сработать в ответ и активировать другие нейроны. Из 30 млрд нейронов, содержащихся в неокортексе, в любой момент работают 1-2%, что означает, что в любой момент времени активны миллионы нейронов. Набор активных нейронов меняется, когда вы двигаетесь и взаимодействуете с миром. Ваше ощущение мира, то, что вы можете посчитать разумным опытом, определяется постоянно меняющимся рисунком активных нейронов.

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

Удивительно, насколько неокортекс одновременно простой и сложный. Он сложный, поскольку он разделён на десятки участков, каждый из которых отвечает за разные сознательные функции. В каждом регионе есть множество слоёв нейронов, а также десятки типов нейронов, и эти нейроны соединяются в сложные комплексы.

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

Но разве не этим занимается ИИ? Разве не все ИИ строятся на "нейросетях", похожих на те, что существуют в мозге? Не совсем. Технологии ИИ действительно ссылаются на нейробиологию, но они используют чрезмерно упрощённую модель нейрона, упускающую основные аспекты реальных нейронов, и соединяются они не так, как в реальной и сложной архитектуре мозга. Отличий много, и они имеют значение. Именно поэтому сегодняшние ИИ хорошо справляются с разметкой изображений или распознаванием речи, но не могут рассуждать, планировать и действовать творчески.

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

Обучение повторным монтажом [learning by rewiring]: мозг выказывает удивительные свойства, связанные с обучением. Во-первых, мы учимся быстро. Во-вторых, обучение идёт постепенно. Мы можем узнать что-то новое, не тренируя мозг с нуля и не забывая то, что уже учили. В-третьих, мозг обучается постоянно. Перемещаясь по миру, планируя и действуя, мы не перестаём обучаться. Быстрое, инкрементальное и постоянное обучение – обязательные ингредиенты, позволяющие умным системам адаптироваться к изменяющемуся миру. Нейроны отвечают за обучение, и сложность реальных нейронов делает их мощной машиной обучения.

В последние годы нейробиологи узнали несколько интересных фактов по поводу дендритов. Каждая из его ветвей работает как набор распознавания шаблонов. Оказывается, что 15-20 активных синапсов на ответвлении достаточно, чтобы распознать шаблон активности в большом наборе нейронов. Следовательно, единственный нейрон может распознать сотни различных шаблонов. Некоторые из них заставляют его срабатывать, а другие меняют внутреннее состояние клетки и работают, как предсказания будущих действий.

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

Именно поэтому мы можем выучивать новое, не нарушая старые воспоминания, и нам не нужно тренировать мозг с нуля каждый раз, когда мы узнаём нечто новое. У сегодняшних нейросетей таких возможностей нет.



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

Распределённые представления: мозг и компьютер представляют информацию по-разному. В памяти компьютера потенциально возможны любые комбинации нулей и единиц, так что если вы поменяете один бит, это может привести к полному изменению смысла – так же, как замена букв «о» на «и» в слове «кот» выдаст не связанное с ним слово «кит». Такое представление ненадёжно.

Мозг же использует т.н. разреженные распределённые представления [sparse distributed representations, SDR]. Разреженными они называются потому, что в любой момент времени активность проявляет сравнительно мало нейронов. Активность нейронов постоянно меняется, когда вы передвигаетесь или думаете, но процент их всегда мал. Если мы представим, что каждый нейрон – это бит, то для представления информации мозг использует тысячи битов (гораздо больше, чем 8-битное или 64-битное представление в компьютере), но лишь малая часть битов в любой момент равна 1; все остальные равны 0.

Допустим, вы хотите при помощи SDR представить концепцию «кот». Можно использовать 10000 нейронов, из которых активными будут 100. Каждый из активных нейронов представляет некий аспект кота, допустим, «домашнее животное», «пушистый», «когтистый». Если несколько нейронов умрут, или включатся несколько новых, то новая SDR всё ещё будет хорошим представлением о коте, поскольку по большей части активные нейроны будут те же самые. Таким образом, вместо ненадёжного представления SDR получается стойким к ошибкам и шуму. Когда мы построим кремниевые версии мозга, им будет присуща стойкость к ошибкам.

Хочу упомянуть две особенности SDR. Во-первых, наложение облегчает сравнение двух вещей, и позволяет понять, чем они похожи и чем они отличаются. Допустим, одно SDR представляет кота, а другое – птицу. У обоих SDR будут активными одни и те же группы нейронов, представляющие «домашнее животное» и «когтистый», но не «пушистый». Пример упрощён, но свойство наложения важно, поскольку благодаря ему мозг сразу же понимает схожесть и различие объектов. Это свойство даёт ему возможность обобщения, чего не хватает компьютерам.

Второе свойство, объединение, позволяет мозгу одновременно представлять несколько идей. Представьте, что я вижу, как в кустах бежит животное, но я смог увидеть его только мельком, поэтому я не уверен в том, что видел. Это могла быть кошка, собака или обезьяна. Поскольку SDR распределено, то набор нейронов может активировать все три SDR одновременно, и не перепутать их друг с другом, поскольку SDR не мешают друг другу. Возможность нейронов постоянно формировать объединения SDR делает их хорошим инструментом для обработки неопределённостей.

Эти свойства SDR фундаментальны для понимания, мышления и планирования в мозге. Мы не можем создать умные машины, не воспользовавшись SDR.

Воплощение: неокортекс получает входные данные от органов чувств. Каждый раз, когда мы двигаем глазами, конечностями или туловищем, входные данные от чувств меняются. Этот постоянно изменяющийся ввод – основной механизм, используемый мозгом для обучения. Представьте, что я даю вам объект, которого вы раньше не видели. Пусть это будет степлер. Как вы будете его изучать? Можно его обойти, посмотрев на него с разных углов. Можно поднять, провести пальцами, повертеть в руках. Можно надавить и потянуть, чтобы посмотреть, как он себя ведёт. В этом интерактивном процессе вы изучаете форму степлера, ваши ощущения от него, как он выглядит и как себя ведёт. Вы делаете движения, ощущаете изменение входных данных, делаете ещё одно, снова ощущаете изменение, и так далее. Обучение через движение – это основной способ обучения мозга. Это будет центральным компонентом любой по-настоящему умной системы.

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

Это приводит нас к важному открытию, сделанному в компании Numenta в прошлом году. В неокортексе данные от ощущений обрабатываются иерархией участков. Когда данные проходят с одного уровня иерархии на другой, из них извлекаются всё более сложные признаки, пока в какой-то момент не получается распознать объект. Сети глубинного обучения тоже используют иерархию, но им часто требуется 100 уровней обработки для распознавания изображения, а неокортекс для достижения того же результата обходится всего четырьмя. Также сетям с глубинным обучением требуются миллионы тренировочных примеров, а неокортекс может изучать новые объекты при помощи всего нескольких движений и ощущений. Мозг делает нечто фундаментально отличное от того, что делает типичная искусственная нейросеть – но что?

Герман Гельмгольц, немецкий физик XIX века, одним из первых предложил ответ на этот вопрос. Он увидел, что хотя наши глаза двигаются три-четыре раза в секунду, наше визуальное восприятие остаётся стабильным. Он вычислил, что мозг учитывает движения глаз, иначе нам казалось бы, что весь мир прыгает туда и сюда. Точно так же, если вы прикасаетесь к чему-либо, вас сбило бы с толку, если бы мозг обрабатывал только тактильные ощущения, и не знал, что ваши пальцы двигаются. Этот принцип комбинирования движений с изменениями ощущений называется сенсомоторной интеграцией. Как и где сенсомоторная интеграция происходит в мозге – это было загадкой.

Мы открыли, что сенсомоторная интеграция происходит во всех участках неокортекса. Это не отдельный шаг, а неотъемлемая часть обработки ощущений. Сенсомоторная интеграция – ключевая часть «интеллектуального алгоритма» неокортекса. У нас есть теория и модель того, каким образом нейроны могут это делать, и она хорошо накладывается на сложную анатомию региона неокортекса.

Каковы последствия этого открытия для машинного интеллекта? Рассмотрим два типа файлов из тех, что вы можете найти на компьютере. Один – изображение, сделанное фотоаппаратом, а другой – разработанный на компьютере дизайн, к примеру, файл Autodesk. Изображение – это двумерный массив визуальных деталей. CAD-файл – это также набор деталей, но каждая из них связана с расположением в трёхмерном пространстве. CAD-файл моделирует трёхмерные объекты, а не то, как объект выглядит с какой-то определённой перспективы. С CAD-файлом можно предсказать, как будет выглядеть объект с любой точки зрения, и определить, как он будет взаимодействовать с другими трёхмерными объектами. С изображением такого не сделаешь. Мы открыли, что каждый участок неокортекса выучивает трёхмерные модели объектов примерно так же, как CAD-программа. Каждый раз, когда ваше тело двигается, неокортекс воспринимает текущую команду моторики, преобразует её в положение в системе координат объекта и комбинирует это положение с данными, полученными с органов чувств, чтобы строить трёхмерные модели мира.

В ретроспективе это наблюдение имеет смысл. Умным системам необходимо выучить многомерные модели мира. Сенсомоторная интеграция не происходит в нескольких частях мозга – это основной принцип его работы, часть алгоритма интеллекта. Умные машины обязаны работать именно так.

Три этих основных аспекта неокортекса – обучение повторным монтажом, распределённые представления и сенсомоторная интеграция — будут краеугольными камнями машинного интеллекта. Думающие машины будущего могут игнорировать многие аспекты биологии, но не эти три. Без сомнения, нас ждут и другие открытия в области нейробиологии, проливающие свет на другие особенности сознания, которые необходимо будет включать в подобные машины в будущем, но начинать можно уже с того, что нам известно сегодня.

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

Думая о будущем, я волнуюсь из-за того, что наши цели недостаточно амбициозны. Для сегодняшних компьютеров очень здорово заниматься классификацией изображений и распознавать речь, но мы не подходим близко к созданию по-настоящему умных машин. Я считаю, что для нас жизненно важно заняться этим. Будущие успехи и даже выживание человечества может зависеть от этого. К примеру, если мы собираемся заселять другие планеты, нам понадобятся машины, действующие в нашу пользу, для полётов в космосе, строительства сооружений, добычи ресурсов и независимого решения сложных проблем в окружающей среде, в которой люди не смогут выжить. На Земле мы сталкиваемся с проблемами болезней, климата и нехватки энергии. Умные машины могут помочь нам. К примеру, вполне возможно сделать умные машины, чувствительные и способные работать на молекулярных масштабах. Они могли бы рассуждать о сворачивании белков и экспрессии генов так же, как мы с вами рассуждаем о компьютерах и степлерах. Они могли бы думать и действовать в миллион раз быстрее человека. Такие машины могли бы лечить заболевания и поддерживать наш мир в обитаемом состоянии.

В 1940-х пионеры компьютерной эры чувствовали, что компьютеры далеко пойдут и будут весьма полезны, и что они, вероятно, преобразуют человеческое общество. Но они не могли точно предсказать, как компьютеры изменят наши жизни. Так же и мы можем быть уверены, что по-настоящему умные машины преобразуют наш мир к лучшему, даже если сегодня мы не можем предсказать, как именно. Через 20 лет мы оглянемся назад и поймём, что в наше время прорывы в теории мозга и машинного обучения начали эпоху настоящего машинного интеллекта.
Поделиться с друзьями
-->

Комментарии (5)


  1. fivehouse
    17.07.2017 12:09
    +1

    Шикарная статья по ИИ. Вероятно лучшая за несколько лет на Хабре.


    1. ArtificialLife
      17.07.2017 14:27
      +2

      Все дело в том, что это перевод статьи Джефа Хокинса. Если не читали его книгу «Об Интеллекте», то срочно исправьте это упущение!


    1. AlekseyPavlovich
      18.07.2017 17:35

      Поддерживаю.
      А то уже этот термин «ИИ» приобрел желтовато-маркетинговый оттенок.


  1. Shedar
    18.07.2017 02:20

    Всё что написано ниже — мои личные впечатления, если кто-то может меня поправить/опровергнуть или подтвердить мои наблюдения — буду благодарен.

    Я на определенном этапе смотрел видео Numenta. У меня остались очень смешанные впечатления.
    С одной стороны, они на сайте прямо говорят что мы ничего нового не изобрели, мы просто то что есть сложили правильно. С другой стороны, они вводят свою терминологию и не проводят аналогии с существующими алгоритмами/подходами, что настораживает.

    Например, SDR, про который они говорят в этой статье и в половине видео их школы (вроде 4 из 10 видео посвящалось SDR), я бы сказал что это Bloom filter. И тогда вместо общих фраз про очень много комбинаций которые SDR может сохранить и «SDR не мешают друг другу» — можно взять формулу и посчитать вероятность коллизий. И вместо 4 видео, людям знакомым с фильтром Блума достаточно будет одной минуты.

    Следующий момент, про то, что в SDR активируются одни и те же нейроны для подобных сущностей. Идея отличная, но для её решения на время, когда я смотрел в их сторону, предлагалось для каждого типа входных данных писать преобразователь, который будет маппить входной сигнал на SDR так, чтобы у похожих входных сигналов пересекались выходные наборы бит. Для простых вещей типа число/дата есть из коробки, для чего-то более сложного — нужно писать самому, ручками, а не «оно само», и это мне кажется нетривиальной задачей. Во-первых, я за то чтобы сказать что это Locality sensitive hashing вместо изобретения своей терминологии, во-вторых фраза «у обоих SDR будут активными одни и те же группы нейронов, представляющие «домашнее животное» и «когтистый», но не «пушистый»» фактически звучит «если разработчик определит когтистость и пушистость как важные фичи LSH функции и научит их выделять из входных данных, то нейросеть сможет сравнивать похожесть по этим критериям», что не так красиво звучит.

    Касательно обучения, читал статью на Arxiv, ссылку сейчас уже не найду, сводилась к тому, что их нейросеть учится лучше всех узнавать новые данные. При этом в приложении к статье приводились параметры нейросетей, нейросеть Numenta, не помню, на порядок или нет, но точно в разы больше традиционных. Если традиционной добавить нейронов — она тоже будет лучше запоминать обучающую выборку.


    1. VDG
      18.07.2017 23:52

      Думаю, под SDR они понимают разряженный битовый массив, как у Редозубова. И от него ожидается статья про то, как «маппить» через обобщение.