您的位置:首页 > 其它

判别式模型与产生式模型解析(Discriminative Model vs. Generative Model)

2015-07-12 11:59 204 查看
学习Machine Learning的朋友们一定会接触到两个概念,判别式模型(DiscriminativeModel)和产生式模型(Generative Model)。很多技术贴都尝试对二者进行详细的解释,但是往往由于初学者的积累不够,不能迅速理解其中的内涵,于是本文不吝笔墨对其再进行梳理一翻,希望对初学Machine Learning的学者提供一些理论性的支持。

首先,讲述机器学习到底是在做什么事情?对于数据分析师来说,大多数时间所做的事情,就是预测数据。比如,假定有数据,然后预测数据。预测数据不是拍脑袋,需要有一个规则,这个规则可以理解为高等数学里面所说的函数。所以,有了函数,就有了变量的对应关系,就能预测了。这样,给定预测数据x和预测规则,就能获得预测结果y。于是,我们要做的事情就是把这个规则找出来。找出规则一般有两种方法:第一种方法就是人为地规定一套方法,第二种方法就是用机器学习的方法。机器学习的方法是怎样的呢?

假定我们已经有了一些关于x和y的对应关系,获得了一个数据集。这个数据集称为训练集(training set),通过分析训练集,获得
判别式模型产生式模型就是两种通过训练集来获得最终的决策规则的基本思路。

判别式模型认为:获得y基于x的条件分布是关键的。给定某个特定的x,对应的最大的y为决策的结果。因此,关键是找到的表达形式。中包括若干未知参数,因此也可以表示为。因此,需要通过训练集分析获得然后进一步获得。
机器学习采用极大似然估计的方法来确定未知参数,定义在训练集上的似然函数为:。机器学习的目标是选择特定的未知参数让这个似然函数最大化。在这个条件下,我们需要分析的分布函数是,我们直接对这个分布函数的表现形式作假设。

产生式模型认为:我们需要预测的决策结果y是事物的本质,而我们在做预测时拥有的可观测数据x为事物的表现。比如:y可以是“大象”或者“猴子”,是本质。而x是我们看到的某个动物的特征,比如“吃草”、“生活在森林”、“群居”等等…我们需要通过这些特征,来判断它究竟是什么动物。写到这里,就明白了,这实际上是一个贝叶斯判别的思路。本质上,是决定了!怎么理解呢?从解决问题的思路上来看,我们还是需要找到,然后找使得最大的那个y。但是,因为是y决定了x而不是x决定了y,所以我们不能直接对的分布形式进行假设。此时就要用到贝叶斯公式

因此决策目标:

因为,我们可以对和的概率分布作假设。我们另,。和是待估计参数。这样就依然可以用极大似然估计的方法对和进行估计,极大似然函数表示为:

综上所述,获得预测变量的根本目的是找到。判别式模型直接对的表现形式做假设,因为它认为是x决定了y。产生式模型认为是y决定了x因此不能直接对的表现形式做假设,所以需要借助于贝叶斯公式进行分析。最终对未知参数进行估计时都转化为对极大似然函数的优化问题进行求解。如下图所示:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: