Архитектура автоэнкодера с одним скрытым слоем — КиберПедия 

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...

Архитектура автоэнкодера с одним скрытым слоем

2020-05-07 242
Архитектура автоэнкодера с одним скрытым слоем 0.00 из 5.00 0 оценок
Заказать работу

Изначально в качестве исходной архитектуры была выбрана Vanilla, изображенная на рисунке 2.4.

Рисунок 2.4 — Архитектура автоэнкодера Vanilla

Такой автоэнкодер является сетью из трех слоев, то есть нейронной сетью с одним скрытым слоем. Вход и выход совпадают, следовательно, восстановить входные данные, используя, например, оптимизатор adam и функцию ошибки кросс-энтропии.

, где  и  — размеры слоя;  — значения сигнала в точке ;  — значение сигнала, восстановленного автоэнкодером, в точке .

В такой архитектуре мы заменяем классические функции активации с ReLU на Leaky ReLU, так как у нейронной сети присутствуют отрицательные веса:

Программная модель автоэнкодера изображена на рисунке 2.5.

Рисунок 2.5 — Программная модель архитектуры Vanilla

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

Рисунок 2.6 — График значении функции кросс-энтропии при обучении

Рисунок 2.7 — Результат работы модели с функцией ошибки кросс-энтропии

Для текущей задачи лучше использовать функция ошибки среднеквадратичного отклонения, так как она используется в задачах линейной регрессии:

Обучение такой же модели с функцией ошибки среднеквадратичного отклонения показывает более лучший результат. График значении функции ошибки изображены на рисунке 2.8.

Рисунок 2.8 — График значении функции среднеквадратичного отклонения при обучении

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

Результаты показали, что данная архитектура имеет недостаточное количество обучаемых гиперпараметров автоэнкодера и одного скрытого слоя недостаточно.

 Архитектура автоэнкодера с несколькими скрытыми слоями

Можно улучшить модель автоэнкодера с одним скрытым слоем добавив в него еще несколько скрытых слоёв. В таком случае он сможет выделять более сложные нелинейные закономерности и признаки в изображениях. Такая модель автоэнкодера использует 3 скрытых слоя вместо одного. Программная модель автоэнкодера с несколькими скрытыми слоями изображена на рисунке 2.9.

Рисунок 2.9 — Программная модель автоэнкодера с несколькими скрытыми слоями

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

Как видно из рисунка 2.10 насыщения графика ошибки имеет тот же характер, как и в случае с архитектурой vanilla.

Рисунок 2.10 — График насыщения функции ошибки модели с несколькими скрытыми слоями при обучении

Текущая модель лучше воспроизводит детали сигнала, особенно в регионах пика минимума и максимума. В данных должна присутствовать некоторая пространственная инвариантность, поэтому лучше применить слои свертки.

Сверточные автоэнкодеры

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

В сверточных автоэнкодерах веса распределяются между всеми входными точками, что помогает сохранить локальную пространственность. Представление -й карты признаков определяется как:

, где  — смещение -й карты признаков, * обозначает свертку,  — активация.

Используется однократное смещение на скрытую карту, а восстановление — как:

 где  — смещение на входной канал, — группа скрытых карт признаков,  — флип-операция над обоими весами размерностей.

В практических условиях автоэнкодеры, применяемые к изображениям, всегда являются сверточными автоэнкодерами - они работают намного лучше.

Рисунок 2.11 — Архитектура сверточного энкодера

Рисунок 2.12 — Архитектура сверточного декодера

График функции ошибки, изображенный на рисунке 2.13, насыщается примерно так же, как и остальные рассмотренные ранее две модели автоэнкодеров.

Рисунок 2.13— График насыщения функции ошибки модели со сверточными слоями при обучении

 


Поделиться с друзьями:

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.012 с.