Вариационный автоэнкодер: должен ли кодер иметь такое же количество слоев, что и декодер?
Должен ли кодер иметь такое же количество слоев, как и декодер, в Variational Autoencoder? Я получил немного лучший результат с кодером (Dense): 54-10-5-3 и Decoder (Dense): 3-5-10-25-35-45-54
2 ответа
Нет, нередко иметь асимметричные архитектуры, например, [1, 2, 3 и т. Д.].
Tang, Shuai, et al. "Изучение асимметричной структуры кодера-декодера для обучения представлению предложений на основе контекста". Препринт arXiv arXiv:1710.10380 (2017). PDF
ЛиНалисник, Эрик и Падрейк Смит. "Разбиваемые вариационные автоэнкодеры". Международная конференция по обучению представительств (ICLR). 2017. pdf
Нэш, Чарли и Крис К.И. Уильямс. "Вариационный автоэнкодер формы: глубокая генеративная модель частично сегментированных трехмерных объектов". Форум компьютерной графики. Том 36. № 5. 2017. pdf
Вы задали отличный вопрос, и ответ - нет.
Поскольку Aldream уже указал несколько работ, в которых используется асимметричная архитектура, я хотел бы указать на теоретическую работу, связанную с вашим вопросом.
Я полагаю, что лучшее объяснение можно найти в документе конференции ICLR 2017: "Вариационный кодер с потерями", Си Чен и др.
Раздел 2 является обязательным для чтения разделом. Автор связывает вариационный автоэнкодер с кодированием с обратной связью и показывает, что средняя длина кода (которая эквивалентна вариационной нижней границе) всегда имеет дополнительную длину кода при использовании приближенного апостериорного распределения. Когда декодер VAE (который является логарифмической вероятностью p(x|z)) может моделировать данные без необходимости q(z|x), VAE игнорирует скрытую переменную!
Это означает, что если у нас очень сильный декодер (например, такое же количество слоев, как у кодера), то существует риск того, что VAE может полностью игнорировать изучение q (z | x), просто установив q (z | x) в значение следовательно, p(z) сохраняет потери KL равными 0.
Для более подробной информации, пожалуйста, прочитайте статью выше. На мой взгляд, подключение VAE к кодированию с обратной связью элегантно.