Inception score
The Inception Score (IS) is an algorithm used to assess the quality of images created by a generative image model such as a generative adversarial network (GAN).[1] The score is calculated based on the output of a separate, pretrained Inception v3 image classification model applied to a sample of (typically around 30,000) images generated by the generative model. The Inception Score is maximized when the following conditions are true:
- The entropy of the distribution of labels predicted by the Inceptionv3 model for the generated images is minimized. In other words, the classification model confidently predicts a single label for each image. Intuitively, this corresponds to the desideratum of generated images being "sharp" or "distinct".
- The predictions of the classification model are evenly distributed across all possible labels. This corresponds to the desideratum that the output of the generative model is "diverse".[2]
It has been somewhat superseded by the related Fréchet inception distance.[3] While the Inception Score only evaluates the distribution of generated images, the FID compares the distribution of generated images with the distribution of a set of real images ("ground truth").
Definition
[edit]Let there be two spaces, the space of images and the space of labels . The space of labels is finite.
Let be a probability distribution over that we wish to judge.
Let a discriminator be a function of type where is the set of all probability distributions on . For any image , and any label , let be the probability that image has label , according to the discriminator. It is usually implemented as an Inception-v3 network trained on ImageNet.
The Inception Score of relative to isEquivalent rewrites include is nonnegative by Jensen's inequality.
Pseudocode:
INPUT discriminator .
INPUT generator .
Sample images from generator.
Compute , the probability distribution over labels conditional on image .
Sum up the results to obtain , an empirical estimate of .
Sample more images from generator, and for each, compute .
Average the results, and take its exponential.
RETURN the result.
Interpretation
[edit]A higher inception score is interpreted as "better", as it means that is a "sharp and distinct" collection of pictures.
, where is the total number of possible labels.
iff for almost all That means is completely "indistinct". That is, for any image sampled from , discriminator returns exactly the same label predictions .
The highest inception score is achieved if and only if the two conditions are both true:
- For almost all , the distribution is concentrated on one label. That is, . That is, every image sampled from is exactly classified by the discriminator.
- For every label , the proportion of generated images labelled as is exactly . That is, the generated images are equally distributed over all labels.
References
[edit]- ^ Salimans, Tim; Goodfellow, Ian; Zaremba, Wojciech; Cheung, Vicki; Radford, Alec; Chen, Xi; Chen, Xi (2016). "Improved Techniques for Training GANs". Advances in Neural Information Processing Systems. 29. Curran Associates, Inc. arXiv:1606.03498.
- ^ Frolov, Stanislav; Hinz, Tobias; Raue, Federico; Hees, Jörn; Dengel, Andreas (December 2021). "Adversarial text-to-image synthesis: A review". Neural Networks. 144: 187–209. arXiv:2101.09983. doi:10.1016/j.neunet.2021.07.019. PMID 34500257. S2CID 231698782.
- ^ Borji, Ali (2022). "Pros and cons of GAN evaluation measures: New developments". Computer Vision and Image Understanding. 215: 103329. arXiv:2103.09396. doi:10.1016/j.cviu.2021.103329. S2CID 232257836.