Generative Adversarial Networks and WaveNet
https://www.quora.com/What-are-some-recent-and-potentially-upcoming-breakthroughs-in-deep-learning
- Denton et al. “Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks” (NIPS 2015) : https://scholar.google.com/citations?citation_for_view=RJV6hA4AAAAJ%3A2osOgNQ5qMEC&hl=en&user=RJV6hA4AAAAJ&view_op=view_citation
- Radford et al. “Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks” (ICLR 2015): https://scholar.google.com/citations?citation_for_view=36ofBJgAAAAJ%3AYsMSGLbcyi4C&hl=en&user=36ofBJgAAAAJ&view_op=view_citation
- Mathieu et al. “Deep multi-scale video prediction beyond mean square error” : https://scholar.google.com/citations?citation_for_view=SSTIBK0AAAAJ%3AW7OEmFMy1HYC&hl=en&sortby=pubdate&user=SSTIBK0AAAAJ&view_op=view_citation
What is a GAN?
The key intuition of GAN can be easily considered as analogous to art forgery, which is the process of creating works of art that are falsely credited to other, usually more famous, artists.
Deep convolutional generative adversarial networks
https://github.com/jacobgil/keras-dcgan
- snippet.python
def generator_model(): model = Sequential() model.add(Dense(input_dim=100, output_dim=1024)) model.add(Activation('tanh')) model.add(Dense(128*7*7)) model.add(BatchNormalization()) model.add(Activation('tanh')) model.add(Reshape((128, 7, 7), input_shape=(128*7*7,))) model.add(UpSampling2D(size=(2, 2))) model.add(Convolution2D(64, 5, 5, border_mode='same')) model.add(Activation('tanh')) model.add(UpSampling2D(size=(2, 2))) model.add(Convolution2D(1, 5, 5, border_mode='same')) model.add(Activation('tanh')) return model
- snippet.python
def discriminator_model(): model = Sequential() model.add(Convolution2D(64, 5, 5, border_mode='same', input_shape=(1, 28, 28))) model.add(Activation('tanh')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Convolution2D(128, 5, 5)) model.add(Activation('tanh')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Flatten()) model.add(Dense(1024)) model.add(Activation('tanh')) model.add(Dense(1)) model.add(Activation('sigmoid')) return model