What is the difference between Predictive/Discriminative AI and Generative AI
1️⃣ 考察意图
这道题看似基础,但面试官真正想看的不是背诵“判别式做分类,生成式做生成”这种教科书定义。考察类型是概念辨析+工程取舍,刁钻点在于:你是否理解两者在概率建模本质上的差异,以及这种差异如何驱动实际技术选型(比如为什么LLM是生成式但能做分类?为什么GAN是生成式但判别器是判别式?)。答好了能展示你对ML底层逻辑的扎实理解,以及从理论到工程落地的迁移能力。
2️⃣ 标准答
核心区别:建模对象不同
- 判别式(Discriminative):直接学习条件概率 P(y|x),即给定输入 x,输出标签 y 的概率。它不关心数据是怎么生成的,只关心决策边界。典型代表:逻辑回归、SVM、ResNet、BERT(分类头)。
- 生成式(Generative):学习联合概率 P(x,y) 或数据分布 P(x),能模拟数据生成过程。典型代表:朴素贝叶斯、GAN、VAE、GPT、扩散模型。
训练目标与损失函数
- 判别式:最小化分类/回归损失,如交叉熵(Cross-Entropy)、均方误差(MSE)。目标函数直接优化决策边界,计算高效。
- 生成式:最大化似然(MLE)或对抗损失(GAN的minimax game)。例如GPT用自回归方式最大化下一个token的log概率;扩散模型优化噪声预测的MSE。生成式需要建模整个数据分布,计算成本高一个量级。
应用场景与trade-off
- 判别式:适合有明确标签的任务,如分类、回归、排序。优点是推理快、数据效率高(小样本也能收敛)。坑:对分布外(OOD)数据鲁棒性差,比如用ImageNet训练的ResNet看到一张猫的素描会乱猜。
- 生成式:适合数据生成、密度估计、缺失值填充。优点是可采样新数据、能做半监督学习(用生成模型做数据增强)。缺点:训练不稳定(GAN的mode collapse)、计算开销大(扩散模型需多步采样)。
实际落地的坑+解法
- 坑1:很多人以为BERT是生成式(因为用了Masked LM),但BERT本质是判别式——它学习 P(y|x) 来预测被mask的token,不建模完整序列分布。解法:明确区分“自回归生成”(GPT)和“掩码预测”(BERT),前者是生成式,后者是判别式。
- 坑2:生成式模型做分类时(如用GPT做zero-shot分类),本质是计算 P(y|x) 的变体——通过比较不同prompt下的生成概率来决策。这利用了生成式对 P(x) 的建模能力,但推理成本高(需多次前向)。解法:小场景用判别式(如BERT分类头),大场景用生成式(如LLM做few-shot分类),根据延迟和精度要求选型。
关键论文/工具
- 判别式:ResNet(He et al., 2015)、BERT(Devlin et al., 2018)
- 生成式:GAN(Goodfellow et al., 2014)、GPT系列(Radford et al., 2018)、DDPM(Ho et al., 2020)
- 混合模型:VAE(Kingma & Welling, 2013)既是生成式也含判别式编码器
3️⃣ 答题模板(30 秒电梯版)
“这个问题我从三个层面回答:第一,概率建模本质——判别式学 P(y|x),生成式学 P(x,y) 或 P(x);第二,训练目标差异——判别式最小化分类损失,生成式最大化似然或对抗损失;第三,工程取舍——判别式推理快、数据效率高,但无法生成新数据;生成式能采样但计算成本高、训练不稳定。总结一句:选型取决于任务——有标签且要低延迟用判别式,要生成新数据或做半监督用生成式。”
4️⃣ 高频追问 & 应对
追问 1:那为什么GPT能做分类任务(如情感分析)?它到底是生成式还是判别式?
GPT本质是生成式,因为它建模 P(x)(自回归预测下一个token)。做分类时,它通过计算不同prompt下的条件概率 P(\text{label} | \text{input}) 来决策——比如输入“电影很棒,情感是”,比较“积极”和“消极”的生成概率。这利用了生成式对 P(x) 的建模,但推理成本高(需多次前向)。工程上,小场景用BERT(判别式)更高效,大场景用GPT(生成式)更灵活。
追问 2:GAN里既有生成器又有判别器,它算生成式还是判别式?
GAN整体是生成式,因为目标是学习数据分布 P(x)。生成器负责采样新数据,判别器只是辅助工具——它学 P(y|x) 来区分真假,但最终目的是让生成器逼近真实分布。所以GAN是“生成式框架+判别式组件”。类似地,VAE的编码器是判别式(学 P(z|x)),解码器是生成式(学 P(x|z)),整体算生成式。
追问 3:在数据增强场景,你会选判别式还是生成式?为什么?
选生成式。因为判别式只学决策边界,无法生成新样本。比如用ResNet做数据增强,只能做简单的仿射变换(旋转、裁剪),无法产生语义新样本。而生成式(如DDPM)能生成逼真的新数据,提升分类器鲁棒性。但注意:生成式模型本身需要大量训练数据,如果原始数据极少(<1000张),生成式会过拟合,此时用判别式+传统增强更靠谱。
5️⃣ 避坑 · 常见错误答法
- ❌ “判别式就是分类,生成式就是生成,两者完全不同。” → ✅ “两者在概率建模上有本质区别,但实际应用中有交叉:生成式模型(如GPT)也能做分类,判别式模型(如BERT)也能做生成(如文本填充),只是效率和效果不同。”
- ❌ “生成式模型一定比判别式好,因为能生成数据。” → ✅ “生成式计算成本高、训练不稳定(如GAN的mode collapse),判别式在标签充足时精度更高、推理更快。选型要看任务:分类用判别式,生成用生成式,半监督用生成式做数据增强。”
6️⃣ 简历呼应
- 如果你有CV/NLP项目:从实际选型切入,比如“在情感分析任务中,我对比了BERT(判别式)和GPT(生成式)的精度与延迟,发现BERT在1000样本下准确率92%、延迟5ms,GPT只有88%但延迟50ms,最终选了BERT。” 展示工程权衡能力。
- 如果你只做过传统ML:用朴素贝叶斯(生成式)和逻辑回归(判别式)的对比迁移,比如“在垃圾邮件分类中,朴素贝叶斯假设特征独立,逻辑回归不假设,后者在小样本下更鲁棒。” 展示对概率模型本质的理解。
- 如果你是校招无项目:聚焦论文复现,比如“我复现了GAN的minimax损失函数,发现判别器收敛太快会导致生成器梯度消失,于是用标签平滑(Label Smoothing)缓解。” 展示动手能力和对理论坑的认知。
- 《On Discriminative vs. Generative Classifiers: A comparison of logistic regression and naive Bayes》(Ng & Jordan, 2002)
- 《Generative Adversarial Nets》(Goodfellow et al., 2014)
- 《Denoising Diffusion Probabilistic Models》(Ho et al., 2020)
- 《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》(Devlin et al., 2018)
- 《Language Models are Few-Shot Learners》(GPT-3, Brown et al., 2020)