Jump to ratings and reviews
Rate this book

Generative Adversarial Networks with Python: Deep Learning Generative Models for Image Synthesis and Image Translation

Rate this book
Generative Adversarial Networks are a type of deep learning generative model that can achieve startlingly photorealistic results on a range of image synthesis and image-to-image translation problems. With clear explanations, standard Python libraries, and step-by-step tutorial lessons, you’ll discover how to develop GANs for your own computer vision projects.

652 pages, ebook

Published January 1, 2019

4 people are currently reading
28 people want to read

About the author

Jason Brownlee

47 books76 followers
Jason Brownlee, Ph.D. trained and worked as a research scientist and software engineer for many years (e.g. enterprise, R&D, and scientific computing), and is known online for his work on Computational Intelligence (e.g. Clever Algorithms), Machine Learning and Deep Learning (e.g. Machine Learning Mastery, sold in 2021) and Python Concurrency (e.g. Super Fast Python).

Jason writes fiction under the pseudonym J.D. Brownlee: https://www.goodreads.com/jdbrownlee

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
2 (40%)
4 stars
3 (60%)
3 stars
0 (0%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 2 of 2 reviews
Profile Image for Khan.
161 reviews52 followers
April 5, 2024
Generative AI is seemingly taking over the entire trajectory of the tech industry and ironically generating fierce debates on how this technology is going to be regulated. It's been something that I have been looking at from afar but I never immersed myself into the topic from a practitioner perspective. This book was my first introduction into creating models using the GAN type architecture. Traditionally AI problems fall into two types of learning styles, supervised and unsupervised learning tasks. The first is traditional machine learning techniques where we have labels, meaning we know what we want to predict, we input this into a model and we train the model to predict the input. While unsupervised learning occurs when we don't have a label to train the model but rather a set of data points and we want the model to extract features from these points and essentially learn from the set of points without giving it a specific label column.

Generative AI is different from this, think about the relationship between a bouncer at a club who checks everyones ID before entering the club and an underage teen with a fake id. (** Cough possibly me when I was younger Cough**), The bouncers goal is to ensure no underaged individuals get into the club while the teens goal is to fool the bouncer by getting into the club with a fake id.
The more fake ID's the bouncer sees, the better the bouncer will get at determining what are real id's vs fake id's and the more times the teen gets denied entry by the bouncer, the more times they can improve on their fake id making abilities. This is essentially what generative AI is, except you call the bouncer the discriminator and the underage teen the generator. One of the reasons these models are so difficult to train is because it represents a zero sum relationship between the discriminator and the generator. If the discriminator's ability to spot fakes outpaces the generators ability to make real looking fakes by a sizable margin, the generator is unable to effectively train itself. If the discriminators ability to spot fakes is not trained adequately enough than this results in very poor fakes from the generator because its worst fakes are getting through the discriminator. The goal is to train an adversarial model that is balanced between both sides so that it increases the quality of the model and creates a stable yet balanced model where no side over powers the other. However, the zero sum nature of either side leads to a potentially unstable model. Which brings us to the book.

The book is excellent, its very hard to train GANS since you need GPU accelerators and not CPU. Running a GAN model on CPU can take 15-20 hours in cpu time but minutes in GPU time. To get GPU access, you have to pay and this can make it hard to teach yourself because when you learn anything it takes time and in this case that could be expensive. Overall this book provides a series of methods for GAN modeling which are quite complicated and take a lot of work to sift through but the examples are robust, the code is explained and every chapter is standalone. A fun read, something that I will continue to mess around with for the foreseeable future. Unfortunately, I cannot give you an in-depth analysis on every technique mainly because I don't understand every model yet and that would result in me bullshitting you. With that being said, there are some great techniques in here. It's just hard to understand what are the limits of those techniques and in what context do they excel in? This information is not in the book and it might not be in any book yet because the field is moving so rapidly, its hard to box in when and where those boundaries should be set.

Easy 5 stars for me.
Displaying 1 - 2 of 2 reviews

Can't find what you're looking for?

Get help and learn more about the design.