[Перевод] Становясь умнее, машины начинают обучаться почти так же, как мы

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


image

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

Алгоритм, используемый компьютерной моделью, называется машиной Больцмана. Он изобретён Джеффри Хинтоном и Терри Сейновски в 1983 году [на самом деле, в 1985 — прим. перев.]. Он выглядит весьма многообещающим в качестве простого теоретического объяснения нескольких процессов, происходящих в мозгу — развития, формирования памяти, распознавания объектов и звуков, цикла сна и бодрствования.
«Это наилучшая из имеющихся у нас на сегодня возможностей для понимания мозга», — говорит Сью Бекер, профессор психологии, нейробиологии и поведения в Университете им. Макмастера в Гамильтоне, Онтарио. «Мне неизвестна модель, описывающая более широкий круг явлений, связанных с обучением и структурой мозга».

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

image
Многослойные нейросети состоят из слоёв искусственных нейронов со взвешенными связями между ними. Входящие данные отправляю каскад сигналов по слоям, а алгоритм определяет изменение весов каждой связи.

В 1980-е и 1990-е Хинтон — прапраправнук логика XIX века Джорджа Буля, чья работа легла в основу современной информатики — изобрёл несколько алгоритмов машинного обучения. Алгоритмы, управляющие тем, как компьютер учится на основе данных, используются в компьютерных моделях, именуемых «искусственными нейросетями» — паутинах взаимосвязанных виртуальных нейронов, передающих сигналы к своим соседям, включаясь или выключаясь, или «срабатывая». Когда в сеть скармливают данные, это приводит к каскаду срабатываний, и алгоритм на основе картины этих срабатываний выбирает, увеличивать или уменьшать веса связей, или синапсов, между каждой парой нейронов.

Десятилетиями многие компьютерные модели Хинтона прозябали. Но благодаря подвижкам в мощности процессоров, прогрессу в понимании мозга и алгоритмов, нейросети играют всё возрастающую роль в нейробиологии. Сежновски [Sejnowski], глава Вычислительной лаборатории нейробиологии в Институте биологических исследований им. Салка в Ла-Холье (Калифорния), говорит: «Тридцать лет назад у нас были очень приблизительные идеи; теперь мы начинаем проверять некоторые из них».

Мозговые машины


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

Хотя Хинтон опубликовал своё открытие в двух известных журналах, нейросети к тому времени вышли из моды, и он «с трудом пытался заинтересовать людей», — говорит Ли Денг, ведущий исследователь в Microsoft Research. Однако Денг знал Хинтона и решил опробовать его метод «глубинного обучения» в 2009 году, быстро распознав его потенциал. В последующие года алгоритмы обучения используются на практике в растущем числе приложений, таких, как личный помощник Google Now или функция голосового поиска в телефонах на Microsoft Windows.

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

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

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

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

Чаще всего используемая версия машины Больцмана лучше работает после «тренировки», переработав тысячи примеров данных последовательно на каждом слое. Сначала нижний слой сети получает сырые данные в виде изображений или звуков, и, на манер клеток сетчатки, нейроны срабатывают, если обнаруживают контрасты в своём участке данных, такие, как переключение от светлого к тёмному. Их срабатывание может вызвать срабатывание объединённых с ними нейронов, в зависимости от веса соединяющего их синапса. По мере того, как срабатывание пар виртуальных нейронов постоянно сравнивается с фоновой статистикой, постепенно появляются и усиливаются осмысленные связи между нейронами. Веса синапсов уточняются, и категории звуков и изображений встраиваются в соединения. Каждый последующий слой тренируется сходным образом, используя данные со слоя ниже его.

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

«Магия происходящего в сети в том, что она способна обобщать, — говорит Ян Лекун [Yann LeCun], директор Центра науки о данных в Нью-Йоркском университете. — Если вы покажете ей машину, которой она раньше не видела, и если у машины будут некие формы и особенности, общие с машинами, показанными ей во время тренировки, она может определить, что это машина».

Нейросети недавно ускорили своё развитие благодаря хинтоновскому многослойному режиму, использованию высокоскоростных компьютерных чипов для обработки графики и взрывному росту количества изображений и записи речи, доступных для тренировки. Сети способны правильно распознавать 88% слов английской разговорной речи, в то время, как средний человек распознаёт 96%. Они могут выявлять автомобили и тысячи других объектов на изображениях со схожей точностью, и за последние несколько лет заняли доминирующее положение в соревнованиях по машинному обучению.

Строим мозг


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

Оба обучаются без надзора, используя лишь существующие в данных закономерности. «Ваша мама не рассказывает вам миллион раз о том, что изображено на картинке, — говорит Хинтон. — Вам приходится учиться распознавать вещи без советов других. После того, как вы изучите категории, вам сообщают названия этих категорий. Так что детишки узнают про собак и кошек, а затем узнают, что собак называют «собаки», а кошек — «кошки».

Взрослый мозг не такой гибкий, как юный, точно также и машина Больцмана, потренировавшись на 100 000 изображений автомобилей, не сильно изменится, увидев ещё одно. У её синапсов уже установлены нужные веса для категоризации автомобилей. Но обучение не заканчивается. Новая информация может быть интегрирована в структуру и мозга, и машины Больцмана.

За последние два десятка лет изучение деятельности мозга во сне дало первые свидетельства того, что мозг использует алгоритм, похожий на больцмановский, для включения новой информации и воспоминаний в свою структуру. Нейробиологи давно знают, что сон играет важную роль в консолидации памяти и помогает интегрировать новую информацию. В 1995 Хинтон с коллегами предположили, что сон играет роль базового уровня в алгоритме, обозначая активность нейронов в отсутствии вводных данных.

«Во время сна вы просто выясняете базовую частоту срабатывания нейронов, — говорит Хинтон. — Вы выясняете корреляцию их работы в случае, когда система работает сама по себе. А затем, если нейроны коррелируют больше, просто увеличиваете веса между ними. А если меньше, уменьшаете веса».

На уровне синапсов, «этот алгоритм можно обеспечить несколькими способами», — говорит Сежновски, советник администрации президента в рамках инициативы BRAIN, исследования с грантом в $100 млн, призванного разработать новые техники изучения мозга.

Он говорит, что мозгу проще всего работать с алгоритмом Больцмана, переключаясь с наращивания синапсов днём на уменьшение их ночью. Гиулио Тонони [Giulio Tononi], глава Центра изучения сна и сознания в Университете Висконсина-Мэдисона, обнаружил, что экспрессия генов в синапсах меняет их в соответствии с данной гипотезой: гены, участвующие в росте синапсов, активнее днём, а гены, занимающиеся в сокращении синапсов — ночью.

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

Сложности с мозгом


image
Изображение сетчатки, на котором разные типы клеток обозначены разными цветами. Цветочувствительные (фиолетовые) соединяются с горизонтальными (оранжевые), которые соединяются с биполярными (зелёные), а те — с клетками сетчатки и ганглия (пурпурные).

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

Предсказания модели постепенно проходят всё больше строгих тестов. В работе, опубликованной в PLOS Computational Biology, вычислительные нейробиологи из Британии и Австралии обнаружили, что когда нейросети, использующие алгоритм разбросанного кодирования «Products of Experts», изобретённый Хинтоном в 2002-м, обрабатывают те же самые необычные зрительные данные, что получают живые кошки (к примеру, кошки и нейросети изучают полосатые изображения), их нейроны вырабатывают почти идентичные необычные связи.

«К моменту, когда информация добирается до зрительной коры, мозг, как мы считаем, представляет её в виде разбросанного кода», — говорит Бруно Ольсхаузен [Bruno Olshausen], вычислительный нейробиолог и директор Редвудского центра теоретической нейробиологии в Университете Калифорнии-Беркли, помогавший разрабатывать теорию разбросанного кодирования. «Будто бы у вас в голове сидит машина Больцмана, и пытается понять связи, существующие между элементами разбросанного кода».

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

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

Сежновски говорит, что понимание алгоритмов роста и уменьшения синапсов позволит исследователям изменить их и изучить, как нарушается функционирование нейросети. «Затем их можно сравнить с известными проблемами людей, — говорит он. — Почти все умственные нарушения можно объяснить проблемами с синапсами. Если мы сможем лучше понять синапсы, мы сможем понять, как мозг функционирует в нормальном режиме, как он обрабатывает информацию, как он обучается, и что идёт не так, если у вас, допустим, развивается шизофрения».

Подход к изучению мозга при помощи нейросетей резко контрастирует с подходом проекта «Человеческий мозг» [Human Brain Project]. Это разрекламированный план швейцарского нейробиолога Генри Маркрама по созданию точной симуляции человеческого мозга при помощи суперкомпьютера. В отличие от подхода Хинтона, который начинается с сильно упрощённой модели и идёт по пути постепенного усложнения, Маркрам хочет сразу же включить наибольшее возможное количество данных, вплоть до отдельных молекул, и надеется, что в результате у него появится полная функциональность и сознание.

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

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

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

Человеческий мозг всё ещё остаётся гораздо более сложным, чем любые модели. Он больше, плотнее, эффективнее, у него больше взаимосвязей и сложных нейронов — и он одновременно работает с несколькими алгоритмами. Ольсхаузен предполагает, что нам понятно около 15% активности зрительной коры. Хотя модели продвигаются, нейробиология всё ещё «похожа на физику до Ньютона», — говорит он. И всё же он уверен, что процесс работы на основе этих алгоритмов когда-нибудь сможет пояснить главную загадку мозга — как данные с органов чувств преобразуются в субъективное ощущение реальности. Сознание, говорит Ольсхаузен, «это нечто, появляющееся из реальности, очень сложная машина Больцмана».

© Geektimes