GAN stands for Generative Adversarial Networks that generate data samples from the statistical distribution of the data. It used a combination of two networks: generator and discriminator.
GANs are used for improving the accuracy of AI and for generating objects automatically that require human creativity. A GAN is a machine learning model where two neural networks compete with each other to become more accurate in their predictions i.e. Generator & Discriminator.
The generator works on the concept of the convolutional neural network, and the discriminator on the concept of the deconvolutional neural network. The generator produces outputs that are realistic looking and the discriminator identifies the fake ones from the real ones.
A generator network takes a random normal distribution and gives a generated sample that is similar to or close to the original distribution as output.
A discriminator tries to evaluate the output generated by the generator with the original sample and gives a value between 0 and 1 as output. If the value is close to 0, then the generated sample is actually fake, and if the value is close to 1 then the generated sample is considered real.
Basically, the job of the discriminator is to identify whether the generated sample is real or fake upon comparing it with the original sample. The job of the generator is to generate samples that are close to the original sample in order to fool the discriminator.
DCGAN uses Convolutional Neural Networks and is far better than regular GAN. CNN i.e. Convolutional Neural Networks are good for extracting important features and representations from the data making it more stable and useful for generating higher-quality images.
By adding some extra information like the label “y”, we can make GANs better
From the reference image, one can see that the generator and discriminator are both conditioned with label y. This could be any form of additional information, such as class labels or data.
Conditional GANs (cGAN) learn to produce better images by using additional information fed into the model.
Why should one use cGAN over others?
By providing additional information cGANs:
The image-to-image translation is an application where a particular image is transformed with the properties of any other image.
Pix2Pix GAN uses conditional GAN to translate one type of image to another type of image.
Pix2Pix can be used for:
CycleGAN makes the use of unpaired image translation and not paired image translation. This technique takes any two pairs of images and interchanges the properties of both images. It is just an updated version of Pix2Pix GAN.
As you can see from the reference image, these techniques can be very useful. We can use it to translate a photo into a painting and vice versa.
Stacked Generative Adversarial Networks (StackGAN) can generate images getting only text descriptions as input.
The architecture comprises of stacked series of text and image GAN models. It has two GANs i.e. stage-1GAN and stage-2 GAN. StackGAN uses a sketch-refinement process where the first level generator i.e. Stage-1 GAN, is conditioned on the text and generates a low-resolution image.
The second level generator i.e. Stage-2 GAN is conditioned both on the text as well as on the low-resolution image. It takes the stage-1 results and adds more detail to them.
Facial inpainting is used for generating facial features for missing pixels in a face image.
This technique is used to produce a more realistic face image from an image with missing content.
Some of the real-life applications of GAN are as follows:
At Daten & Wissen, we explore new possibilities and implement modern technologies in day-to-day life. If you want to implement AI in your business to make it more efficient or advanced, then click on the button below and connect with us.
Tell us your technical needs… We will be happy to help you.
Daten & Wissen is the team of expert AI engineers to help your business to embark on a transformational journey with the adoption of this futuristic technology.
Object detection is basically a solution used in computer vision to locate and identify…Read more