Discriminative x │ ├── learn p(y | x) │ └── choose y directly Generative y │ ├── learn p(x | y) ├── combine with p(y) │ └── infer the best y for x