Answers.Body: <p>Another way of seeing the differences between these models in the case of binary classification for instance between a class A and a class B:</p>
  
  <p>A generative model will be trained to model the properties of class A and another one will be trained to model the properties of class B. If we want to know if a new sample belongs to class A or B, we will compare it to each model and decide. The advantage is that we are able to synthetically generate more samples of these classes using the generative property of the model. The models have a "global knowledge" of what the classes are.</p>
  
  <p>On the other hand, a discriminative model will "pay attention" to what differentiates the 2 classes. It is more straightforward and often computationally less expensive as the model does not need to grasp everything about each class but only what makes them different.</p>
  
  <p>This is for the big picture. I find this course slides quite helpful to understand these concepts in more details (especially the first slides that are equation-free): <a href="http://www.cedar.buffalo.edu/~srihari/CSE574/Discriminative-Generative.pdf" rel="nofollow noreferrer">http://www.cedar.buffalo.edu/~srihari/CSE574/Discriminative-Generative.pdf</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-05-31T14:05:19.640Z
Answers.Text: With respect to the link,slide 11 classifies the Neural networks to the discriminating methods, where with the rise of [GANs](https://en.wikipedia.org/wiki/Generative_adversarial_network) it may clearly also be a generative model.
Answers.UserDisplayName: havakok
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-11-10T19:08:45.553Z
Answers.LastActivityDate: 2016-11-10T19:08:45.553Z
Answers.UserDisplayName: Eskapp
Answers.Body: <p>The intution that I have about these is that generative are "from abstract to concrete" whereas discriminative models are "from concrete to abstract".</p>
  
  <p>For example: Detecting if a photo has a cat or not is about going from the photo i.e concrete to the abstract concept of a cat. Whereas generating a photo of a cat given some abstract properties about the cat is going from abstract to concrete.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-11-10T18:59:44.897Z
Answers.Text: However, generative model can also detect if a photo pictures a cat or not, but discriminative models cannot generate data.
Answers.UserDisplayName: Eskapp
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-10-10T04:13:55.047Z
Answers.LastActivityDate: 2016-10-10T04:13:55.047Z
Answers.UserDisplayName: Ankur
Body: <p>I'm trying to gain some intuition beyond definitions, in any possible dimension. I'd appreciate references to read.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-02-14T10:07:15.410Z
Comments.Text: the [so post](https://stackoverflow.com/questions/879432/what-is-the-difference-between-a-generative-and-a-discriminative-algorithm) has some good answers on this
Comments.UserDisplayName: OuttaSpaceTime
Tags: <machine-learning><models>
Title: How can one intuitively understand generative v/s discriminative models, specifically with respect to when each is useful?
UserDisplayName: Tejal
ThreadText: # How can one intuitively understand generative v/s discriminative models, specifically with respect to when each is useful?
  
  (Asked by: username_0 on 2016-10-09)
  
  I'm trying to gain some intuition beyond definitions, in any possible dimension. I'd appreciate references to read.
  
  **Tags:** machine-learning, models
  
  > **Comments:**
  > **username_1**: the [so post](https://stackoverflow.com/questions/879432/what-is-the-difference-between-a-generative-and-a-discriminative-algorithm) has some good answers on this  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2016-11-10. Score: 1
  
  Another way of seeing the differences between these models in the case of binary classification for instance between a class A and a class B:
  
  A generative model will be trained to model the properties of class A and another one will be trained to model the properties of class B. If we want to know if a new sample belongs to class A or B, we will compare it to each model and decide. The advantage is that we are able to synthetically generate more samples of these classes using the generative property of the model. The models have a "global knowledge" of what the classes are.
  
  On the other hand, a discriminative model will "pay attention" to what differentiates the 2 classes. It is more straightforward and often computationally less expensive as the model does not need to grasp everything about each class but only what makes them different.
  
  This is for the big picture. I find this course slides quite helpful to understand these concepts in more details (especially the first slides that are equation-free): <http://www.cedar.buffalo.edu/~srihari/CSE574/Discriminative-Generative.pdf>
  
  > **Comments:**
  > **username_3**: With respect to the link,slide 11 classifies the Neural networks to the discriminating methods, where with the rise of [GANs](https://en.wikipedia.org/wiki/Generative_adversarial_network) it may clearly also be a generative model.  
  
  ---
  
  ### Answer by username_4 on 2016-10-10. Score: 1
  
  The intution that I have about these is that generative are "from abstract to concrete" whereas discriminative models are "from concrete to abstract".
  
  For example: Detecting if a photo has a cat or not is about going from the photo i.e concrete to the abstract concept of a cat. Whereas generating a photo of a cat given some abstract properties about the cat is going from abstract to concrete.
  
  > **Comments:**
  > **username_2**: However, generative model can also detect if a photo pictures a cat or not, but discriminative models cannot generate data.  
  
  ---
  
  