Как учится машина. Революция в области нейронных сетей и глубокого обучения - Ян Лекун

Хьюбел и Визель как раз и объясняют это тем, что области первичной зрительной коры выступают в роли экстракторов признаков (о них говорится в главах 3 и 5).
Если взять соседний пучок нейронов, который смотрит на рецепторное поле, слегка смещенное по сравнению с предыдущим, то у него также есть нейрон № 1 и нейрон № 60 (см. рис. 6.1). То, что Хьюбел и Визель называют простыми и сложными клетками, – это нейроны, о которых я постоянно говорю в этой книге. Нейрон № 1 в этом пучке делает то же самое, что и нейрон № 1 в следующем пучке. Таким образом, пучки из 60 нейронов связаны со всеми рецептивными полями поля зрения. Миллионы нейронов № 1 выявляют один и тот же паттерн, но на разных участках изображения.
Таким образом, все поле зрения покрыто этими пучками из 60 нейронов, чьи воспринимающие поля частично перекрываются, как черепица на крыше, и все они выполняют одну и ту же операцию: обнаруживают во всех рецепторных полях очень маленькие и простые паттерны. Все эти миллионы нейронов представляют собой простые клетки.
Если поместить электроды в область V1, как это Хьюбел и Визель сделали с кошками, что мы увидим? В пучке нейронов, смотрящем на рецепторное поле в левой части круга, активируются нейроны № 1 и № 30 детекторов вертикальных контуров. Точно так же в пучке нейронов, смотрящем на правую часть круга, возбуждаются другие нейроны № 1 и № 30, потому что они также обнаруживают вертикальный контур. Наоборот, в пучке нейронов, смотрящем на верхнюю часть круга, становятся активными нейроны уже № 15 и № 45, которые обнаруживают горизонтальные контуры.
Рис. 6.1. Простые клетки и сложные клетки
Область первичной зрительной коры млекопитающих V1 содержит простые клетки и сложные клетки. Каждая простая клетка обнаруживает паттерн в маленьком окне на входе, называемом «воспринимающем полем». Клетки организованы в виде плоскостей, называемых «картами признаков». Все клетки одной и той же карты признаков обнаруживают один и тот же паттерн в разных местах входного изображения. Каждая карта признаков определяет паттерн, отличный от других. Каждая из клеток всех карт признаков с одним и тем же принимающим полем выявляет разные паттерны, например, первая «видит» контур, расположенный под углом 45°, вторая – горизонтальный контур, третья – какой-то еще и т. д. Сложные клетки собирают «ответы» из небольшого окна простых клеток. Когда паттерн слегка перемещается по входу, реакция сложных клеток практически не меняется.
Зрительная кора: сложные клетки и «пулинг»
В области V1 сложные клетки (другая категория нейронов) агрегируют ответы соседних простых клеток одного и того же типа: одна сложная клетка агрегирует все числа от нейронов № 1 в своей окрестности, другая – от нейронов № 2 и т. д. Операция агрегирования заключается в вычислении среднего значения выходов простых клеток или получении наибольшего из них.
Что происходит, когда вертикальный контур немного сдвигается? Простые клетки № 1, связанные с различными рецепторными полями, активируются при движении. Но поскольку сложная ячейка объединяет результаты отдельных ячеек № 1 в своей окрестности, она непрерывно активизируется, пока контур не появится из рецептивных полей всех простых клеток, с которыми соединена данная сложная клетка. Таким образом, сложная клетка, которая смотрит на простые клетки № 1, обнаруживает вертикальный контур независимо от его положения в окрестности (с определенным допуском к его положению). Такой механизм агрегации сигнала (его называют английским термином «пулинг») объясняет инвариантность обнаружения паттернов. Соответственно, рецепторное поле сложной клетки области V1 больше, чем рецепторное поле простой клетки в этой же области.
Но если переместить паттерн слишком далеко и выйти за пределы рецепторного поля сложной клетки (то есть рецепторных полей всех простых клеток, которые она агрегирует), сложная клетка отключится.
Хьюбел и Визель предположили, что данная схема соединения повторяется в областях V2 и V4, но не смогли это доказать.
А вот и мы: операция, вычисляемая миллионами нейронов № 1, которые обнаруживают вертикальные линии, является «сверткой».
Подводим итоги
● В области V1 каждый нейрон в пучке – или простой клетке – реагирует на линию определенной ориентации.
■ Миллионы пучков из 50–100 нейронов, покрывающих поле зрения, связаны со всеми рецептивными полями.
■ Миллионы нейронов обнаруживают один и тот же паттерн в разных местах поля зрения.
■ Сложные клетки в области V1 принимают набор ответов от простых клеток одного и того же типа (например, нейронов, которые воспринимают вертикальные контуры в разных, но близких местах) и вычисляют среднее значение данных ответов.
■ Благодаря механизму, называемому «пулингом», создается инвариантность реакции сложных клеток на небольшие изменения положения паттернов в изображении, которые могут быть вызваны перемещением объекта в поле зрения, небольшим вращением или деформацией.
Основываясь на открытиях Хьюбела и Визеля о механизмах работы зрительной коры головного мозга, исследования в области искусственного интеллекта придерживаются двух основных принципов конструирования нейронных сетей.
1. Создание локальных соединений. Нейрон в первом слое зрительной системы связан только с небольшой областью изображения, небольшим блоком пикселей – «рецепторным полем».
2. Повторение операций на всем изображении. Несколько нейронов с разными рецептивными полями обнаруживают один и тот же паттерн в разных местах.
Селективность ориентации (то есть чувствительность нейронов к ориентации) и существование сложных клеток – два открытия, которые принесли Хьюбелу и Визелю Нобелевскую премию в области физиологии и медицины.
Дальновидный Фукусима
Машина японского исследователя Кунихико Фукусимы повторила архитектуру модели Хьюбела и Визеля – то же самое нециклическое прохождение сигнала в последовательных слоях простых и сложных нейронов. Фукусима применил систему простых клеток, связанных с небольшой областью поля зрения, и сложных клеток, которые интегрируют активацию предыдущего слоя и позволяют построить представление, инвариантное относительно небольших искажений. Токийский ученый построил две версии своей машины: когнитрон в 1970-х и неокогнитрон в начале 1980-х.
Вторая модель – это многослойная сеть для распознавания простых форм. Неокогнитрон состоял из набора чередующихся слоев, аналогичных слоям простых клеток и сложных клеток. Подход Фукусимы – своего рода попытка теснее следовать принципам биологии и за счет этого заставить сеть работать. Они вычисляли взвешенную сумму своих входов и обрабатывали результат через ряд сложных операций, от описания которых я вас избавлю. Неокогнитрон использовал также подвыборку слоев сложных клеток. Как только мы перейдем к сверточным сетям, я подробно опишу, что это значит.
Фукусима обучал последний