何时在机器学习中使用生成算法?

时间:2013-11-15 12:48:18

标签: machine-learning normal-distribution logistic-regression generative-programming

假设我有(x,y)样本制作的训练集。

要应用生成算法,让我们说高斯判别,我必须假设

每个可能的西格玛

p(x|y) ~ Normal(mu, sigma)

或者我只需要知道x ~ Normal(mu, sigma)是否给出了y?

如何评估p(x | y)是否符合多元正态分布,足够好(达到阈值),以便使用生成算法?

1 个答案:

答案 0 :(得分:5)

这是很多问题。

  

要应用生成算法,让我们说高斯   辨别力,我必须假设

     每个可能的sigma

p(x | y)〜正常(μ,sigma)

不,你必须假设某些mu,sigma对是真的。实际上你不知道mu和sigma是什么,所以你需要估计它(频率,最大似然/最大后验估计),或者甚至更好地将你对参数估计的不确定性纳入预测(贝叶斯方法论) )。

  

如何评估p(x | y)是否遵循多元正态分布?

经典,使用拟合优度测试。但是,如果x的维数超过少数,那么这将不起作用,因为标准测试涉及箱中物品的数量,而高维度所需的箱数是天文数字,因此您的预期计数非常低。 / p>

更好的想法是说以下内容:我对x(条件)分布的建模有哪些选择?您可以使用模型比较技术比较这些选项。阅读模型检查和比较。

最后,你的最后一点:

  

对我来说使用生成算法是否足够(达到阈值)?

许多生成方法的悖论,例如Fisher的线性判别分析,以及朴素贝叶斯分类器,即使模型对数据不佳,分类器也可以很好地工作 。没有特别合理的理由说明为什么会出现这种情况,但许多人认为这是经验上的真实。它是否有效可以比假设的分布更好地解释数据更容易检查:只需将数据分成训练和测试并找出答案!