Foreword |
|
xv | |
Preface |
|
xvii | |
|
Part I Introduction to Generative Deep Learning |
|
|
|
|
3 | (20) |
|
What Is Generative Modeling? |
|
|
4 | (1) |
|
Generative Versus Discriminative Modeling |
|
|
5 | (1) |
|
The Rise of Generative Modeling |
|
|
6 | (2) |
|
Generative Modeling and AI |
|
|
8 | (1) |
|
Our First Generative Model |
|
|
9 | (1) |
|
|
9 | (1) |
|
The Generative Modeling Framework |
|
|
10 | (2) |
|
|
12 | (3) |
|
|
15 | (3) |
|
Generative Model Taxonomy |
|
|
18 | (2) |
|
The Generative Deep Learning Codebase |
|
|
20 | (1) |
|
|
20 | (1) |
|
|
21 | (1) |
|
|
21 | (1) |
|
|
21 | (2) |
|
|
23 | (36) |
|
|
24 | (1) |
|
|
25 | (1) |
|
What Is a Neural Network? |
|
|
25 | (1) |
|
Learning High-Level Features |
|
|
26 | (1) |
|
|
27 | (1) |
|
Multilayer Perceptron (MLP) |
|
|
28 | (1) |
|
|
28 | (2) |
|
|
30 | (5) |
|
|
35 | (2) |
|
|
37 | (1) |
|
|
38 | (2) |
|
Convolutional Neural Network (CNN) |
|
|
40 | (1) |
|
|
41 | (5) |
|
|
46 | (3) |
|
|
49 | (2) |
|
|
51 | (2) |
|
Training and Evaluating the CNN |
|
|
53 | (1) |
|
|
54 | (5) |
|
|
|
3 Variational Autoencoders |
|
|
59 | (36) |
|
|
60 | (1) |
|
|
61 | (1) |
|
The Fashion-MNIST Dataset |
|
|
62 | (1) |
|
The Autoencoder Architecture |
|
|
63 | (1) |
|
|
64 | (1) |
|
|
65 | (2) |
|
Joining the Encoder to the Decoder |
|
|
67 | (2) |
|
|
69 | (1) |
|
Visualizing the Latent Space |
|
|
70 | (1) |
|
|
71 | (3) |
|
|
74 | (1) |
|
|
75 | (5) |
|
|
80 | (2) |
|
Training the Variational Autoencoder |
|
|
82 | (2) |
|
Analysis of the Variational Autoencoder |
|
|
84 | (1) |
|
Exploring the Latent Space |
|
|
85 | (1) |
|
|
85 | (2) |
|
Training the Variational Autoencoder |
|
|
87 | (2) |
|
Analysis of the Variational Autoencoder |
|
|
89 | (1) |
|
|
90 | (1) |
|
|
91 | (1) |
|
|
92 | (1) |
|
|
93 | (2) |
|
4 Generative Adversarial Networks |
|
|
95 | (34) |
|
|
96 | (1) |
|
Deep Convolutional GAN (DCGAN) |
|
|
97 | (1) |
|
|
98 | (1) |
|
|
99 | (2) |
|
|
101 | (3) |
|
|
104 | (5) |
|
|
109 | (1) |
|
GAN Training: Tips and Tricks |
|
|
110 | (3) |
|
Wasserstein GAN with Gradient Penalty (WGAN-GP) |
|
|
113 | (1) |
|
|
114 | (1) |
|
|
115 | (1) |
|
Enforcing the Lipschitz Constraint |
|
|
116 | (1) |
|
The Gradient Penalty Loss |
|
|
117 | (2) |
|
|
119 | (2) |
|
|
121 | (1) |
|
|
122 | (1) |
|
|
123 | (1) |
|
|
124 | (2) |
|
|
126 | (1) |
|
|
127 | (2) |
|
|
129 | (38) |
|
|
130 | (1) |
|
Long Short-Term Memory Network (LSTM) |
|
|
131 | (1) |
|
|
132 | (1) |
|
|
133 | (1) |
|
|
134 | (3) |
|
Creating the Training Set |
|
|
137 | (1) |
|
|
138 | (1) |
|
|
138 | (2) |
|
|
140 | (2) |
|
|
142 | (2) |
|
|
144 | (2) |
|
|
146 | (3) |
|
Recurrent Neural Network (RNN) Extensions |
|
|
149 | (1) |
|
Stacked Recurrent Networks |
|
|
149 | (2) |
|
|
151 | (2) |
|
|
153 | (1) |
|
|
153 | (1) |
|
Masked Convolutional Layers |
|
|
154 | (2) |
|
|
156 | (2) |
|
|
158 | (1) |
|
Analysis of the Pixel CNN |
|
|
159 | (3) |
|
|
162 | (2) |
|
|
164 | (3) |
|
6 Normalizing Flow Models |
|
|
167 | (22) |
|
|
168 | (1) |
|
|
169 | (1) |
|
|
170 | (2) |
|
|
172 | (1) |
|
The Change of Variables Equation |
|
|
173 | (1) |
|
|
174 | (1) |
|
|
174 | (1) |
|
|
175 | (6) |
|
Training the Real NVP Model |
|
|
181 | (3) |
|
Analysis of the Real NVP Model |
|
|
184 | (2) |
|
Other Normalizing Flow Models |
|
|
186 | (1) |
|
|
186 | (1) |
|
|
187 | (1) |
|
|
188 | (1) |
|
|
189 | (16) |
|
|
189 | (2) |
|
|
191 | (1) |
|
|
192 | (1) |
|
|
193 | (1) |
|
Sampling Using Langevin Dynamics |
|
|
194 | (3) |
|
Training with Contrastive Divergence |
|
|
197 | (4) |
|
Analysis of the Energy-Based Model |
|
|
201 | (1) |
|
Other Energy-Based Models |
|
|
202 | (1) |
|
|
203 | (2) |
|
|
205 | (30) |
|
|
206 | (2) |
|
Denoising Diffusion Models (DDM) |
|
|
208 | (1) |
|
|
208 | (1) |
|
The Forward Diffusion Process |
|
|
209 | (1) |
|
The Reparameterization Trick |
|
|
210 | (1) |
|
|
211 | (3) |
|
The Reverse Diffusion Process |
|
|
214 | (3) |
|
The U-Net Denoising Model |
|
|
217 | (7) |
|
Training the Diffusion Model |
|
|
224 | (1) |
|
Sampling from the Denoising Diffusion Model |
|
|
225 | (3) |
|
Analysis of the Diffusion Model |
|
|
228 | (3) |
|
|
231 | (4) |
|
|
|
|
235 | (32) |
|
|
236 | (1) |
|
|
236 | (1) |
|
|
237 | (1) |
|
|
238 | (1) |
|
Queries, Keys, and Values |
|
|
239 | (2) |
|
|
241 | (1) |
|
|
242 | (3) |
|
|
245 | (3) |
|
|
248 | (2) |
|
|
250 | (2) |
|
|
252 | (3) |
|
|
255 | (1) |
|
|
256 | (3) |
|
|
259 | (1) |
|
|
260 | (4) |
|
|
264 | (3) |
|
|
267 | (30) |
|
|
268 | (1) |
|
|
269 | (1) |
|
|
269 | (7) |
|
|
276 | (1) |
|
|
277 | (1) |
|
|
278 | (1) |
|
|
279 | (1) |
|
|
280 | (1) |
|
|
281 | (1) |
|
Weight Modulation and Demodulation |
|
|
282 | (1) |
|
Path Length Regularization |
|
|
283 | (1) |
|
|
284 | (2) |
|
|
286 | (1) |
|
|
286 | (1) |
|
Self-Attention GAN (SAGAN) |
|
|
286 | (2) |
|
|
288 | (1) |
|
|
289 | (3) |
|
|
292 | (2) |
|
|
294 | (3) |
|
|
297 | (34) |
|
|
298 | (1) |
|
Transformers for Music Generation |
|
|
299 | (1) |
|
The Bach Cello Suite Dataset |
|
|
300 | (1) |
|
|
300 | (3) |
|
|
303 | (1) |
|
Creating the Training Set |
|
|
304 | (1) |
|
|
305 | (2) |
|
Multiple Inputs and Outputs |
|
|
307 | (2) |
|
Analysis of the Music-Generating Transformer |
|
|
309 | (4) |
|
Tokenization of Polyphonic Music |
|
|
313 | (4) |
|
|
317 | (1) |
|
|
317 | (3) |
|
|
320 | (6) |
|
|
326 | (1) |
|
|
327 | (2) |
|
|
329 | (2) |
|
|
331 | (28) |
|
|
331 | (1) |
|
|
332 | (2) |
|
The CarRacing Environment |
|
|
334 | (2) |
|
|
336 | (1) |
|
|
336 | (2) |
|
|
338 | (1) |
|
Collecting Random Rollout Data |
|
|
339 | (2) |
|
|
341 | (1) |
|
|
341 | (2) |
|
|
343 | (3) |
|
Collecting Data to Train the MDN-RNN |
|
|
346 | (1) |
|
|
346 | (1) |
|
|
347 | (1) |
|
Sampling from the MDN-RNN |
|
|
348 | (1) |
|
|
348 | (1) |
|
The Controller Architecture |
|
|
349 | (1) |
|
|
349 | (2) |
|
|
351 | (2) |
|
|
353 | (3) |
|
|
356 | (3) |
|
|
359 | (32) |
|
|
360 | (1) |
|
|
361 | (1) |
|
|
362 | (1) |
|
|
362 | (1) |
|
|
362 | (5) |
|
|
367 | (2) |
|
|
369 | (4) |
|
|
373 | (4) |
|
|
377 | (1) |
|
|
377 | (1) |
|
|
378 | (1) |
|
|
379 | (1) |
|
|
380 | (1) |
|
|
380 | (1) |
|
Examples from Stable Diffusion |
|
|
381 | (1) |
|
|
381 | (1) |
|
|
382 | (1) |
|
|
382 | (1) |
|
|
383 | (2) |
|
|
385 | (3) |
|
|
388 | (1) |
|
|
389 | (2) |
|
|
391 | (26) |
|
Timeline of Generative AI |
|
|
392 | (2) |
|
2014-2017: The VAE and GAN Era |
|
|
394 | (1) |
|
2018-2019: The Transformer Era |
|
|
394 | (1) |
|
2020-2022: The Big Model Era |
|
|
395 | (1) |
|
The Current State of Generative AI |
|
|
396 | (1) |
|
|
396 | (4) |
|
|
400 | (2) |
|
|
402 | (3) |
|
|
405 | (2) |
|
The Future of Generative AI |
|
|
407 | (1) |
|
Generative AI in Everyday Life |
|
|
407 | (2) |
|
Generative AI in the Workplace |
|
|
409 | (1) |
|
Generative AI in Education |
|
|
410 | (1) |
|
Generative AI Ethics and Challenges |
|
|
411 | (2) |
|
|
413 | (4) |
Index |
|
417 | |