Чтение онлайн

на главную - закладки

Жанры

Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:

Неокогнитрон представлял собой развитие идей, лежавших в основе когнитрона. Причём источником вдохновения для Фукусимы стали во многом работы Хьюбела и Визеля, ссылки на работы которых сопровождают рассуждения создателя неокогнитрона о принципах организации синаптических связей нейронной сети. Главной проблемой, которую решал Фукусима, стала способность сети реагировать на стимулы, предъявляемые с различным горизонтальным и вертикальным смещением. Стремясь добиться инвариантного (неизменного) относительно сдвига стимула ответа сети, Фукусима пришёл к выводу, что каждый слой сети можно составить из нейронов, использующих для своего набора входных синапсов один и тот же набор значений (весов). Такие нейроны будут похожи на клетки, которые в экспериментах Хьюбела и Визеля реагировали на предъявление глазу специфических геометрических структур. Вне зависимости от того, в каком именно участке слоя окажется искомая структура, один из нейронов, в соединимой области которого она окажется, среагирует на её появление. При этом реакция нейронов слоя будет единообразной, поскольку, благодаря общему набору входных синаптических весов для каждого из нейронов, их ответ на предъявление одной и той же геометрической структуры на входе будет одинаковым. С математической точки зрения операция, производимая таким слоем, называется операцией взаимной корреляции (или кросс-корреляции), применяемой к двум матрицам: матрице входных сигналов и «ядру» — вышеупомянутому набору значений входных синапсов, одинаковых для всех нейронов слоя (если строго, то это матрица синаптических весов, размерность которой равна размеру соединимой области нейронов, а её элементами являются значения данных синаптических весов). Из-за того что в названии «свёрточная сеть» присутствует слово «свёртка», возникла путаница: многие авторы вполне разумно предполагают, что

в основе свёрточных сетей лежит именно операция свёртки. Настоящая свёртка почти идентична кросс-корреляции с той лишь разницей, что при свёртке происходит «переворот» ядра [1470] , [1471] . Далее по тексту в отношении операции кросс-корреляции мы будем использовать термин «свёртка», поскольку он является устоявшимся среди специалистов по глубокому обучению.

1470

Draelos R. (2019). Convolution vs. Cross-Correlation / GLASS BOX: Machine Learning and Medicine, by Rachel Lea Ballantyne Draelos, July 26, 2019 // https://glassboxmedicine.com/2019/07/26/convolution-vs-cross-correlation/

1471

Rosebrock A. (2021). Convolution and cross-correlation in neural networks / pyimagesearch, May 14, 2021 // https://www.pyimagesearch.com/2021/05/14/convolution-and-cross-correlation-in-neural-networks/

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

По сравнению с полносвязным слоем или слоем когнитрона свёрточный слой описывается сравнительно небольшим числом параметров, что снижает вычислительные затраты на обучение. Фукусима сделал ещё один важный шаг вперёд, когда пришёл к выводу, что свёрточный слой может быть основан не на одном, а на нескольких ядрах свёртки. Каждому из ядер свёртки соответствует отдельная «плоскость» [cell-plane] следующего слоя сети. Выход свёрточного слоя сегодня принято называть «картой признаков» [feature map]. Карта признаков представляет собой трёхмерный массив (или, как модно говорить в наши дни, трёхмерный тензор), составленный из плоскостей для каждого из ядер свёртки (сейчас вместо термина «плоскость» чаще используется термин «канал»).

Если сеть составить только из описанных выше свёрточных слоёв, то каждый следующий слой будет содержать всё большее и большее количество нейронов, ведь входу каждого свёрточного слоя размером w x h нейронов (где w — ширина, а h — высота слоя) будет соответствовать выход размером w x h x d (где d — количество каналов карты признаков). Понимая это, Фукусима использовал также специальные слои сети для понижения размерности данных, так называемые C– слои. Каждый C– нейрон, так же как и S– нейрон, получал сигналы от нейронов в квадратной по форме зоне предыдущего слоя, однако эти соединимые области C– нейронов не пересекались между собой. Далее C– нейрон усреднял сигналы, полученные им на вход, и передавал в следующий слой полученное усреднённое значение. Производимая им операция напоминает понижение размера картинки в графическом редакторе: уменьшая картинку размером 100 x 100 пикселей до размера 50 x 50, графический редактор обычно просто разделяет исходную картинку на квадратики размером 2 x 2 пикселя, усредняет цвет внутри квадратика и этот усреднённый цвет делает цветом соответствующего пикселя результирующего изображения. Сегодня такие слои называют слоями «пулинга» [pooling] или «субдискретизации» [subsampling]. Вместо функции усреднения в наши дни чаще всего используют операцию «максимизирующего пулинга» [max pooling], при котором C– нейрон не усредняет входные значения, а отбирает среди них максимальное, а разновидность пулинга, использованная Фукусимой, сегодня называется «усредняющим пулингом» [mean pooling].

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

5.2.4.3 Ян Лекун: внедрение метода обратного распространения ошибки для обучения свёрточных нейронных сетей

Первые применения метода обратного распространения ошибки для обучения свёрточных нейронных сетей относятся ко второй половине 1980-х. В области компьютерного зрения первым исследователем, которому удалось совместить две решающие новации в одной модели, стал франко-американский исследователь Ян Лекун, в ту пору являвшийся сотрудником Исследовательского подразделения адаптивных систем в AT&T Bell Laboratories в Холмделе (Нью-Джерси, США). Именно здесь Лекун разработал ряд новых моделей машинного обучения, созданных под влиянием данных об устройстве биологических систем. К числу этих моделей относились и свёрточные нейронные сети, постепенное совершенствование которых в последующем и привело к прорыву в области компьютерного зрения. В 2018 г. вклад Яна Лекуна в дело революции глубокого обучения был отмечен престижной премией Тьюринга, которую Лекун разделил с Джеффри Хинтоном и Йошуа Бенджио. Премия была вручена с формулировкой «За концептуальные и инженерные прорывы, которые сделали глубокие нейронные сети критически важным компонентом вычислений» [1472] .

1472

Yann LeCun (2018) / Heidelberg Laureate Forum // https://www.heidelberg-laureate-forum.org/laureate/yann-lecun.html

Ян Лекун родился в коммуне Суази-су-Монморанси, в 15 км от Парижа. Его фамилия в прошлом писалась раздельно — Le Cun — и произошла от старой бретонской формы Le Cunff, что буквально означало «хороший парень» [1473] . В англоязычных источниках фамилия Лекун обычно записывается с заглавной буквой C в середине — LeCun, но русский язык не любит таких вольностей, поэтому в русскоязычных источниках он стал просто Лекуном. Окончив Высшую инженерную школу (Ecole Superieure d’Ingenieurs en Electrotechnique et Electronique, ESIEE) в Париже, Лекун в 1983 г. поступил на программу углубленного обучения [d’etudes approfondies] в Университет Пьера и Марии Кюри (Universite Pierre et Marie Curie), где в 1987 г. получил степень доктора философии по информатике. Его диссертация была посвящена разработке одной из ранних разновидностей метода обратного распространения ошибки. С 1987 по 1988 г. Лекун был постдокторантом в Университете Торонто, где работал под началом Джеффри Хинтона, после чего устроился на работу в AT&T Bell Laboratories [1474] . Лекун так в шутку формулирует своё кредо: «Я воплощаю в себе всё, что так раздражает религиозных правых: учёный, атеист, левый (по американским меркам, по крайней мере), профессор университета и француз» [1475] .

1473

Lecun Y. Fun stuff / Yann LeCun home page // http://yann.lecun.com/ex/fun/

1474

Lecun Y. (2014). Biographical Sketch / Yann LeCun home page // http://yann.lecun.com/ex/bio.html

1475

Lecun Y. Fun stuff / Yann LeCun home page // http://yann.lecun.com/ex/fun/

Руководителем подразделения, в котором оказался Лекун, был Лоуренс Джекел — один из разработчиков системы для распознавания цифр в рукописных почтовых индексах. Основой этой системы, воплощённой в виде отдельной специализированной СБИС, был «экстрактор признаков», напоминавший неокогнитрон, свёрточные ядра которого (размером 7 x 7) подбирались создателями

системы вручную. Выходы экстрактора признаков изначально анализировались при помощи классических алгоритмов кластеризации, таких как метод k-ближайших соседей и метод окна Парзена — Розенблатта. Однако затем создатели системы заменили выход экстрактора признаков на небольшую полносвязную нейронную сеть, которая справлялась с задачей классификации цифр значительно лучше. Создателям системы удалось достичь уровня ошибки в 6% на тестовом наборе данных [1476] , что стало небольшим, но всё же улучшением предшествующего результата.

1476

Denker J. S., Gardner W. R., Graf H. P., Henderson D., Howard R. E., Hubbard W., Jackel L. D., Baird H. S., Guyon I. (1989). Neural network recognizer for hand-written zip code digits / Advances in neural information processing systems, 1-Dec-1989, pp. 323—331 // https://dl.acm.org/doi/10.5555/89851.89898

Лекун совершил ещё один шаг вперёд — он сделал все веса нейронной сети изменяемыми в процессе обучения, отказавшись от вручную подобранных свёрточных ядер, и применил для вычисления синаптических весов метод стохастического градиентного спуска, основанный на методе обратного распространения ошибки. В результате уровень ошибки на тестовой выборке снизился ещё на один процентный пункт — до 5% [1477] .

В 1998 г. в результате исследований Лекуна, Леона Ботту, Йошуа Бенджио и Патрика Хаффнера увидела свет архитектура свёрточной нейронной сети LeNet-5, ставшая классической. Эта сеть состоит из трёх свёрточных слоёв, перемежаемых слоями максимизирующего пулинга, и завершается на выходе двумя полносвязными слоями. Данная сеть оказалась способна распознавать рукописные цифры размером 32 x 32 пикселя, достигнув уровня ошибки в 0,8% на тестовой выборке при использовании датасета MNIST [1478] .

1477

LeCun Y., Boser B., Denker J. S., Henderson D., Howard R. E., Hubbard W., Jackel L. D. (1989). Backpropagation Applied to Handwritten Zip Code Recognition; AT&T Bell Laboratories // http://yann.lecun.com/exdb/publis/pdf/lecun-89e.pdf

1478

LeCun Y., Bottou L., Bengio Y., Haffner P. (1998). Gradient-based learning applied to document recognition / Proceedings of the IEEE. 86 (11): 2278–2324 // https://doi:10.1109/5.726791

Основным «классическим» конкурентом LeNet-5 на тот момент был метод опорных векторов [support vector machines или support vector method, SVM], а точнее — его разновидность под названием V-SVM, разработанная Бернхардом Шёлькопфом и его коллегами. В основе SVM лежит идея построения оптимальной разделяющей гиперплоскости, предложенная в 1963 г. Владимиром Вапником и Алексеем Червоненкисом. В 1992 г. Бернхард Босер, Изабель Гийон и Вапник придумали способ создания нелинейного классификатора за счёт объединения этой идеи с идеей перехода от скалярных произведений к произвольным ядрам [1479] . Последняя идея известна в наши дни под названием kernel trick, она была предложена впервые Марком Айзерманом, Эммануилом Браверманом и Львом Розоноэром для метода потенциальных функций [1480] . Звезда SVM взошла в середине 1990-х гг. — новый метод обучения с учителем, благодаря своей математической изящности и впечатляющим результатам, пленил сердца многих специалистов в области машинного обучения. Вообще вклад Вапника и Червоненкиса в математический фундамент современной теории машинного обучения трудно переоценить. Например, ими был разработан способ оценки выразительной силы (иногда также употребляют термины: ёмкость, сложность, богатство, гибкость) моделей-классификаторов на основе так называемой комбинаторной размерности, более известной в наши дни под названием размерность Вапника — Червоненкиса или VC-размерность [1481] . Лучший результат метода V-SVM (модификация SVM) на MNIST в 1998 г. совпадал с результатом Лекуна, обеспечивая те же 0,8% ошибки на тестовой выборке. Однако объём вычислений, необходимый V-SVM для достижения такой точности, многократно превышал [1482] объём вычислений, необходимый LeNet-5. В очередной раз научное сообщество было поставлено перед фактом: нейронные сети, как ту стюардессу из анекдота, не стоило хоронить так быстро.

1479

Guyon I., Boser B., Vapnik V. (1993). Automatic Capacity Tuning of Very Large VC-dimension Classifers / Advances in Neural Information Processing Systems // https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.17.7215

1480

Айзерман М. А., Браверман Э. М., Розоноэр Л. И. (1964). Теоретические основы метода потенциальных функций в задаче об обучении автоматов разделению входных ситуаций на классы // Автоматика и телемеханика. 1964. №6. с. 917-936.

1481

Вапник В. Н., Червоненкис А. Я. Теория распознавания образов (статистические проблемы обучения). Москва: Наука, 1974 // https://books.google.ru/books?id=LAGzAAAAIAAJ

1482

LeCun Y., Bottou L., Bengio Y., Haffner P. (1998). Gradient-based learning applied to document recognition / Proceedings of the IEEE. 86 (11): 2278–2324 // https://doi:10.1109/5.726791

Свёрточные нейронные сети Лекуна не были первой моделью, воплощающей в себе принцип построения глубоких нейронных сетей на основе параметризованных слоёв с регулярной структурой и обучающейся с применением метода обратного распространения ошибки. Первой такой моделью стала нейронная сеть с временной задержкой (Time delay neural network, TDNN), впервые представленная научной общественности в 1987 г. Её создатели — Александр Вайбель, Тосиюки Ханазава, Киёхиро Сикано, Кевин Лэнг и вездесущий Джеффри Хинтон — использовали эту архитектуру в задачах распознавания речи. Входным представлением для TDNN является спектрограмма анализируемого звука, к которой последовательно применяются операции свёртки вдоль осей времени и частотных диапазонов. Именно для TDNN в 1990 г. Коуити Ямагути и его коллеги впервые предложили использовать максимизирующий пулинг. Целью этой работы было создание системы для качественного распознавания речи без привязки к конкретному голосу. TDNN-сети нередко применяются для решения задач в области обработки речи и в наши дни. По всей видимости, в силу того, что TDNN-сети использовались для обработки звука, а не изображений, про них иногда забывают, рассуждая об истории свёрточных нейронных сетей. По современной классификации TDNN-сети считаются свёрточными, что создаёт видимый парадокс: TDNN-сети были свёрточными сетями ещё до того, как

это стало мейнстримом
появились свёрточные сети.

Конструктор, из которого современные разработчики собирают свёрточные нейронные сети, за последние два десятилетия обзавёлся множеством новых деталей. Различными могут быть размеры и формы (форма задаётся за счёт введения маски для ядра свёртки) свёрточных ядер, вертикальный и горизонтальный шаг [stride] между ними (а также шаги в других измерениях, если используется свёртка с большим числом измерений), поле свёртки может выходить за границы слоя с различным размером дополняющего [padding] поля. Сеть может включать в себя разное количество слоёв свёртки, пулинга (максимизирующего, усредняющего, пулинга с областью интереса и т. д.), полносвязных слоёв, слоёв нормализации и так далее. В особо глубоких нейронных сетях могут существовать синаптические связи, огибающие отдельные слои (их обычно называют skip connections — «перепрыгивающие связи»). В различных слоях могут использоваться различные функции активации, слои могут группироваться в более крупные блоки, а при обучении сетей могут применяться различные способы инициализации синаптических весов и другие трюки, направленные на улучшение сходимости и достижение лучших результатов. В 2010-е гг. глубокое обучение стало своеобразным экспериментальным разделом математики, где полученный результат в некоторой мере может зависеть от случая и от удачи исследователей и разработчиков в процессе применения метода проб и ошибок. Этот факт породил сравнение глубокого обучения со средневековой алхимией и множество остроумных мемов на эту тему. К счастью, в отличие от алхимиков, архитекторы нейронных сетей всё-таки неплохо справляются с достижением поставленных целей, а применение объективных метрик успеха при создании моделей исключает субъективизм в трактовке результатов.

Поделиться:
Популярные книги

Хозяйка собственного поместья

Шнейдер Наталья
1. Хозяйка
Фантастика:
фэнтези
5.00
рейтинг книги
Хозяйка собственного поместья

Душелов. Том 2

Faded Emory
2. Внутренние демоны
Фантастика:
фэнтези
боевая фантастика
аниме
5.00
рейтинг книги
Душелов. Том 2

Невеста снежного демона

Ардова Алиса
Зимний бал в академии
Фантастика:
фэнтези
6.80
рейтинг книги
Невеста снежного демона

Санек 3

Седой Василий
3. Санек
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Санек 3

Камень. Книга 4

Минин Станислав
4. Камень
Фантастика:
боевая фантастика
7.77
рейтинг книги
Камень. Книга 4

Смерть любит танцы

Klara Клара
1. Танцы
Фантастика:
фэнтези
8.96
рейтинг книги
Смерть любит танцы

Сводный гад

Рам Янка
2. Самбисты
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Сводный гад

Власть меча

Смит Уилбур
5. Кортни
Приключения:
исторические приключения
5.00
рейтинг книги
Власть меча

Вооружен и очень удачлив. Трилогия

Горбенко Людмила
123. В одном томе
Фантастика:
фэнтези
6.77
рейтинг книги
Вооружен и очень удачлив. Трилогия

Гимназистка. Нечаянное турне

Вонсович Бронислава Антоновна
2. Ильинск
Любовные романы:
любовно-фантастические романы
7.12
рейтинг книги
Гимназистка. Нечаянное турне

Мужчина не моей мечты

Ардова Алиса
1. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.30
рейтинг книги
Мужчина не моей мечты

В осаде

Кетлинская Вера Казимировна
Проза:
военная проза
советская классическая проза
5.00
рейтинг книги
В осаде

Отцы-основатели.Весь Саймак - 9.Грот танцующих оленей

Саймак Клиффорд Дональд
9. Отцы-основатели. Весь Саймак
Фантастика:
научная фантастика
5.00
рейтинг книги
Отцы-основатели.Весь Саймак - 9.Грот танцующих оленей

Купец I ранга

Вяч Павел
1. Купец
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Купец I ранга