Win $20,000. Help build the future of education. Answer the call. Learn more

IBM Developer Blog

Follow the latest happenings with IBM Developer and stay in the know.

Learn how generative AI enables computers to learn the underlying pattern related to the input, and then use that to generate similar content.


Generative AI refers to programs that can use existing content like text, audio files, or images to create new plausible content. The MIT Technology review described generative AI as one of the most promising advances in the world of AI in the past decade. Generative AI enables computers to learn the underlying pattern related to the input, and then use that to generate similar content. There are various techniques to do that such as generative adversarial networks (GANS), transformers, and variational autoencoders.

Let’s talk about GANs before discussing the use cases of generative AI and how daunting it can be for some use cases.

Generative adversarial networks

GANs are the generative models that use two neural networks pit against each other, a generator and a discriminator. The generator or generative network is a neural network that is responsible for generating the new data or content that resembles the source data. The discriminator or discriminative network is a neural network that is responsible for differentiating between the source data and the generated data.

Both of these neural networks are trained in alternating cycles where the generator constantly learns to produce more realistic data, while the discriminator gets better at differentiating fake data from the real data.

GAN for MNIST data Figure 1. GAN for MNIST Data (Credit: Thalles Silva)

You can think of GANs like a counterfeiter and a police officer in a game of cat and mouse, where the counterfeiter is learning to pass fake money, and the police officer is learning to detect it. Gradually, the result of each of them is the improvement of the other side.

Use cases for generative AI

In this blog, I discuss a few interesting applications of GANs to help you learn the types of problems where GANs can be useful. It’s not an exhaustive list, but it does contain some examples of GANs that have been in the media.

Generating examples of image data sets

In 2014, a paper “Generative Adversarial Networks” by Ian Goodfellow talked about the application where GANs were used to generate new data samples for the MNIST handwritten digit data set, the CIFAR-10 small object photograph data set, and the Toronto Face Database.

Generative adversarial nets Figure 2. Taken from Generative Adversarial Nets, 2014

You understand how powerful these GANs are when they can create digits that look exactly like they were handwritten and faces that look exactly like actual human beings. That is part of the reason why there is an extensive debate going on in the AI world about infusing ethics and trust in AI applications.

Generating photographs of human faces

In 2017, a paper titled “Progressive Growing of GANs for Improved Quality, Stability, and Variation” by Tero Karras demonstrated the generation of realistic photographs of human faces. The face generations were trained on celebrity examples, meaning that these faces have some features of celebrities and that makes them seem familiar.

Improving image quality Figure 3. Taken from Progressive Growing of GANs for Improved Quality, Stability, and Variation, 2017

Other use cases

There are many more examples where GANs are useful.

  • Image-to-image conversion
  • Text-to-image conversion
  • Photos to emojis
  • Super resolution
  • Face aging

Conclusion

Generally, when it comes to machine learning, supervised and unsupervised learning are the topics in the data science communities. However, GANs are becoming a global research focus in the AI community. The advances are likely to increase, and generative design techniques are likely to come into the core curricula of data science, creative, and engineering professions globally.