* Часть 1: [ Введение ][1]
* Часть 2: [ _Manifold learning_ и скрытые (_latent_) переменные ][2]
* Часть 3: [Вариационные автоэнкодеры (_VAE_) ][3]
* Часть 4: [_Conditional VAE_][4]
* **Часть 5: _GAN_ (Generative Adversarial Networks) и tensorflow**
* Часть 6: _VAE_ + _GAN_
(Из-за вчерашнего бага с перезалитыми картинками на хабрасторейдж, случившегося не по моей вине, вчера был вынужден убрать эту статью сразу после публикации. Выкладываю заново.)
При всех преимуществах вариационных автоэнкодеров **_VAE_**, которыми мы занимались в предыдущих постах, они обладают одним существенным недостатком: из-за плохого способа сравнения оригинальных и восстановленных объектов, сгенерированные ими объекты хоть и похожи на объекты из обучающей выборки, но легко от них отличимы (например, размыты).
Этот недостаток в куда меньшей степени проявляется у другого подхода, а именно у _генеративных состязающихся сетей_ — **_GAN_**’ов.
Формально _GAN’ы_, конечно, не относятся к автоэнкодерам, однако между ними и вариационными автоэнкодерами есть сходства, они также пригодятся для следующей части. Так что не будет лишним с ними тоже познакомиться.
**_GAN_**’ы впервые были предложены в статье **_[1, Generative Adversarial Nets, Goodfellow et al, 2014]_** и сейчас очень активно исследуются. Наиболее state-of-the-art генеративные модели так или иначе используют _adversarial_.
Схема **_GAN_**:
![][5]
[Читать дальше →][6]
[1]:
https://habrahabr.ru/post/331382/
[2]:
https://habrahabr.ru/post/331500/
[3]:
https://habrahabr.ru/post/331552/
[4]:
https://habrahabr.ru/post/331664/
[5]:
https://habrastorage.org/web/faf/0a8/b00/faf0a8b002584baca17e693e877b871b.png
[6]:
https://habrahabr.ru/post/332000/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut