可生成式和可生成式的区别是什么 有识别力的算法?
当前回答
在实践中,模型的使用如下。
在判别模型中,为了从训练例x中预测标签y,你必须评估:
它只是在考虑x的情况下选择最有可能的类别y。这就像我们试图在类别之间建立决策边界的模型。这种行为在神经网络中非常明显,其中计算的权重可以被视为一个复杂形状的曲线,将空间中一个类的元素隔离开来。
现在,用贝叶斯法则,把方程中的替换为。因为你只对arg max感兴趣,你可以擦掉分母,这对每个y都是一样的,所以,你剩下
这是你在生成模型中使用的方程。
在第一种情况下,你有条件概率分布p(y|x),它模拟了类之间的边界,在第二种情况下,你有联合概率分布p(x, y),因为p(x | y) p(y) = p(x, y),它显式地模拟了每个类的实际分布。
对于联合概率分布函数,给定一个y,你可以计算(“生成”)它各自的x。因此,它们被称为“生成”模型。
其他回答
想象一下,你的任务是将演讲分类为一种语言。
你可以通过以下任何一种方式:
学习每一种语言,然后用你刚刚学到的知识对它进行分类
or
在不学习语言的情况下确定语言模型的差异,然后对语音进行分类。
第一种是生成方法,第二种是判别方法。
查看参考资料了解更多细节:http://www.cedar.buffalo.edu/~srihari/CSE574/Discriminative-Generative.pdf。
我的观点是: 歧视性的方法突出了差异 生成方法不关注差异;他们试图建立一个能代表班级的模型。 两者之间有重叠之处。 理想情况下,两种方法都应该使用:一种有助于发现相似之处,另一种有助于发现不同之处。
之前的答案都很好,我想再补充一点。
从生成算法模型中,我们可以推导出任何分布;而我们只能从判别算法模型中得到条件分布P(Y|X)(或者我们可以说它们只对判别Y的标签有用),这就是为什么它被称为判别模型。判别模型不假设X是独立的给定Y($X_i \perp X_{-i} | Y$),因此通常更强大的计算条件分布。
一般来说,机器学习社区有一个惯例,那就是不要学你不想学的东西。例如,考虑一个分类问题,目标是为给定的x输入分配y个标签。如果我们使用生成模型
p(x,y)=p(y|x).p(x)
我们必须为p(x)建模,而p(x)与当前任务无关。像数据稀疏性这样的实际限制将迫使我们用一些弱独立性假设来建模p(x)。因此,我们直观地使用判别模型进行分类。
不同的模型归纳如下表:
图片来源:监督学习小抄-斯坦福CS 229(机器学习)