One common way to define discriminative models is that they model $P(Y|X)$, where $Y$ is the label, and $X$ is the observed variables. Conditional generative models do something quite similar, but the modeled distribution of $Y$ tends to be more complex -- for example, $Y$ might be a distribution of images, where the conditioning variable $X$ might be the image class. Usually it is quite intuitive whether a model is discriminative, or conditional generative, but in some cases it seems quite unclear, so I wonder: is the distinction between the two purely arbitrary?
Here is a list of models of $P(Y|X)$ for different $Y$ and $X$, listed in order of increasing "generativeness"
A semantic segmentation model (a convolutional network) outputting a distribution over classes for each pixel in an image.
A convolutional network which regresses dense monocular depth -- outputting a normal distribution over depths for each pixel in an image.
Same as 4, but with no conditioning noise in the generator.
A GAN which outputs dense monocular depth from RGB input, using both the typical GAN loss and also a regression loss.
A cycleGAN model which lets you sample from the distribution $Y|X$, where $X$ is an image, and $Y$ is a rendition of that image in the style of a Monet painting.
A conditional GAN model which generates a photorealistic image of any class of animal (the animal label being the conditioning variable).
I think almost everyone agrees 1 and 6 are discriminative and conditional generative respectively. The same for 2 and 5 respectively, but the justification is less clear. Finally for 3 and 4, it's quite unclear to me how they should be classified. 3 models a far less complex distribution over dense depth maps because of the lack of conditioning noise, and leans towards the discriminative side, and vice versa for 4.
So: 1: Is there a clean distinction between discriminative and conditional generative models? 2: Is it just some arbitrary function of how complex the modeled distribution is? 3: If there is a good definition, how would it classify the above models?