Нейронная сеть-автоассоциатор — пример нейросети с большим числом слоёв В истории искусственных нейронных сетей имеется занятный факт: значительное число предложенных слоистых нейросетевых архитектур были существенно многослойными — это персептрон Розенблатта (многослойная нейросеть, в противоположность правилу обучения персептрона, применимого к единственному нейрону − линейному разделителю или к выходному нейрону сети-персептрона), это когнитрон и неокогнитрон Фукушимы, это нейросеть-автоассоциатор на базе многослойного персептрона с «узким горлом», сеть, построенная алгоритмом каскадной корреляции, и др. Однако, наиболее широкое распространение получили нейронные сети, обучаемые методом обратного распространения ошибки и названные «многослойными» персептронами (MLP — multilayer perceptron) только из-за того, что алгоритм обучения позволял учить все слои нейросети, чего не было в персептронах Розенблатта. Чаще всего MLP-сети являются трехслойными (снова неверный термин − реально в сети всего 2 слоя нейронов, из которых последний обычно вырожден в слой адаптивных сумматоров) − слоев нейронов в этих «многослойных» сетях меньше, чем слоев в иных указанных нейронных сетях. Т.е. в области теоретического и практического интереса к нейронным сетям доминируют малослойные («плоские») архитектуры. Указанные исключения (перечисленные более многослойные сети) только подтверждают это правило (думаю, 99% читателей заметки эти сети-«исключения» не использовали).

неокогнитрон — пример нейронной сети с большим числом слоёв «Плоскими» являются и машины опорных векторов (SVM — support vector machines) − пересекающийся с нейроинформатикой раздел теории обучения. Доходит до абсурда: несмотря на давнее наличие алгоритмов обучения рекуррентных MLP-сетей, возник новый класс рекуррентных сетей (так называемый reservoir computing − см. секцию на конференции ESANN’07) со случайно формируемой рекуррентной частью и обучаемыми линейными выходными нейронами, по аналогии с конструированием нелинейных машин опорных векторов (только с добавлением рекуррентности). Т.е. обучение нейронных сетей опять начали ограничивать выходными нейронами, при случайных наборах весов и случайных топологиях связей на предыдущих слоях (точь в точь, как было у персептрона Розенблатта).

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

Но, возможно, это безобразие может закончиться или существенно уменьшиться. Недавно возникшая критическая масса такова:

Работы по сверточным нейронным сетям (convolutional neural networks; обзор первой декады их развития и применения см. в [1]) представляют собой пример эффективного обучения методом обратного распространения ошибки существенно многослойной нейронной сети для задач распознавания изображений, причем обучаются все слои, в отличие от многослойного персептрона Розенблатта или когнитрона/неокогнитрона. Недавно сверточные нейросети были применены и для распознавания снимков трехмерных объектов − с великолепным результатом [2].
Для избежания «неэффективности» обучения алгоритмом обратного распространения ошибки предложен алгоритм предварительной послойной квазиоптимальной инициализации сильно многослойной сети, которая затем доучивается методом обратного распространения. Великолепные примеры построения нелинейных главных компонент с помощью сильно многослойных сетей-автоассоциаторов даны в [3].
Предыдущий способ обобщен до методов построения сильно многослойных сетей доверия (deep belief nets). Теория изложена в [4,5].
Для специальных задач распознавания образов стали появляться симбиозы идей сверточных нейросетей и методов обучения deep belief nets. Пример такой нейронной сети для распознавания-классификации изображения с видеокамеры мобильного автономного робота дан в [6].
Самое важное − в [2] дан сравнительный анализ возможностей «плоских» нейроархитектур (и SVM в том числе) по сравнению с возможностями сильно многослойных сеток, и этот анализ не в пользу «плоских» архитектур при условии ориентирования на «тяжелые» задачи, актуальные в будущем (например, те же задачи распознавания изображений при необходимости обеспечения инвариантности распознавания к поворотам, сдвигам, искажениям изображенных на картинке объектов). Может повториться эффект, который произвела книга Минского и Пейперта (она надолго снизила интерес к классическим персептронам Розенблатта) − теперь под удар попадают машины опорных векторов, т.к они по сравнению с нейросетями не масштабируются по числу слоев.
Также важно отметить (для тех, кто пропустил появление и развитие сверточных нейронных сетей), что произошел еще один качественный скачок, касающийся способа выделения информативных признаков на изображении. У персептрона Розенблатта детекторы признаков были случайными (нейрон первого слоя получал сигналы с нескольких случайно выбранных точек рецептивного поля, и эти сигналы шли по синапсам со случайными весами). В когнитронах и неокогнитронах выделители признаков конструировались уже исходя из теоретических предположений (для возможности выделения линий определенного наклона, концов линий, разрывов линий,..) и оставались необучаемыми. А в сверточных нейронных сетях детекторы признаков обучаются под конкретную задачу наряду со всей остальной сетью стандартным алгоритмом обратного распространения ошибки.

Т.к. Россия практически не участвовала в 15-летней волне интереса к машинам опорных векторов (В.Вапник создавал эту теорию уже на «Западе»), то возникает возможность присоединиться к волне нового интереса к нейронным сетям с большим числом слоев с предложением новых специализированных нейроархитектур и алгоритмов, либо хотя-бы начать применять указанные новые и старые (сверточные нейросети в своих ранних вариантах празднуют 20-летие) методы на практике.

Литература

LeCun Y., Bottou L., Bengio Y., Haffner P. Gradient-based learning applied to document recognition / Proc. IEEE, 1998. Vol.86, №11. — pp.2278-2324.
Bengio Y., LeCun Y. Scaling learning algorithms towards AI / Large-scale kernel machines (L.Bottou, O.Chapelle, D.DeCoste, J.Weston eds), MIT Press, 2007.
Hinton G., Salakhutdinov R. Reducing the dimensionality of data with neural networks / Science, 2006. Vol.313. — pp.504-507.
Hinton G., Osindero S., Teh Y. A fast learning algorithm for deep belief nets / Neural Computation, 2006. Vol.18. — pp.1527-1554.
Bengio Y., Lamblin P., Popovici D., Larochelle H. Greedy layer-wise training of deep networks / Neural Information Processing Systems 19 (2006). MIT Press, 2007.
Hadsell R., Erkan A., Sermanet P., Scoffier M., Muller U., LeCun Y. Deep belief net learning in a long-range vision system for autonomous off-road driving / Proc. Intelligent Robots and Systems (IROS’08).
Также см. более позднюю заметку про активную разработку новых типов слоёв нейронов для свёрточных и других многослойных нейронных сетей − растёт не только число слоёв в сети, но и номенклатура возможных различающихся вариантов реализации (функционирования) каждого отдельного типа слоя.

Дополнение от 30 апреля 2013
Не прошло и полгода Прошло 4.5 года с момента написания заметки — и методы «глубокого обучения» (deep learning) были включены иностранными экспертами в список десяти ключевых технологий ближайшего будущего.

memo38_2

memo38

источник —>>>

Добавить комментарий

Please log in using one of these methods to post your comment:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s