高斯判别分析(GDA)的对数似然函数

我在理解Andrew Ng的CS229笔记中给出的GDA的似然函数时遇到了困难。

l(φ,µ0,µ1,Σ) = log (从i到m的乘积) {p(x(i)|y(i);µ0,µ1,Σ)p(y(i);φ)}

链接是 http://cs229.stanford.edu/notes/cs229-notes2.pdf 第5页。

对于线性回归,函数是(从i到m的乘积)p(y(i)|x(i);theta),这对我来说是合理的。为什么这里的变化是给出p(x(i)|y(i)),并且乘以p(y(i);phi)?提前感谢您的帮助


回答:

第5页的起始公式是

l(φ,µ0,µ1,Σ) = log <从i到m的乘积> p(x_i, y_i;µ0,µ1,Σ,φ)

暂时不考虑参数φ,µ0,µ1,Σ,可以简化为

l = log <乘积> p(x_i, y_i)

使用链式法则,可以将其转换为

l = log <乘积> p(x_i|y_i)p(y_i)

或者

l = log <乘积> p(y_i|x_i)p(x_i).

在第5页的公式中,φ被移到了p(y_i)中,因为只有p(y)依赖于它。

似然函数从联合概率分布p(x,y)开始,而不是从条件概率分布p(y|x)开始,这就是为什么GDA被称为生成模型(从x到y和从y到x建模),而逻辑回归被认为是判别模型(从x到y单向建模)。两者各有优缺点。似乎在下文有关于此的章节。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注