Bayesian linear regression

Let $S={(x^{(i)}, y^{(i)})}_{i=1}^m$ be a training set of i.i.d. examples from unknow distribution. The standard probabilistic interpretation of linear regression states that

$$ y^{(i)} = \theta^T x^{(i)} + \varepsilon^{(i)}, \qquad i=1, \dots, m $$

where the $\varepsilon^{(i)}$ are i.i.d. “noise” variables with independent $\mathcal N(0, \sigma^2)$ distributions. It follows that $y^{(i)} - \theta^T x^{(i)} \sim \mathcal N(0, \sigma^2) $, or equivalently,

$$ P(y^{(i)} | x^{(i)} = \frac{1}{\sqrt{2\pi} \sigma} \text{exp}(-\frac{(y^{(i)} - \theta^T x^{(i)})^2}{2\sigma^2}) $$

In Bayesian linear regression, we assume that a prior distribution over parameters is also given; a typical choice, for instance, is $\theta \sim \mathcal N(0, \tau^2 I)$. Using Bayes’s rule, we obtain the parameter posterior,

\begin{equation} p(\theta, | S) =\frac{p(\theta) p(S | \theta)}{\int_{\theta’} p(\theta’) p(S | \theta’) d\theta’}  = \frac{p(\theta) \prod_{i=1}^{m} p(y^{(i)} | x^{(i)}, \theta)}{\int_{\theta’} p(\theta’) \prod_{i=1}^{m} p(y^{(i)} | x^{(i)}, \theta’) d\theta’} \label{ppost}\end{equation}

Assuming the same noise model on testing points as on training points, the “output” of Bayesian linear regression on a new test point $x_*$ is not just a single guess “$y_*$”, but rather an entire probability distribution over possible outputs, knows as the posterior predictive distribution:

\begin{equation}p(y_* | x_* , S) = \int_{\theta} p(y_* | x_* , \theta ) p(\theta | S) d\theta \label{postd}\end{equation}

For many types of models, the integrals in (\ref{ppost}) and (\ref{postd}), are difficult to compute, and hence, we often resort to approximations, such as maximum a posteriori MAP estimation. MAP1, MAP2. Also you can see Regularization and Model selection.

$$\hat{\theta} = \text{arg max}_{\theta} p(\theta, | S) =\text{arg max}_{\theta} \prod_{i=1}^{m} p(y^{(i)} | x^{(i)}, \theta)$$

In the case of Bayesian linear regression, however, the integrals actually are tractable! In particular, for Bayesian linear regression, one can show that (in 2.1.1 The standard linear model: http://www.gaussianprocess.org/gpml/)

$$ \theta | S \sim \mathcal N(\frac{1}{\sigma^2}A^{-1}X^Ty, A^{-1}) $$

$$ y_* | x_*, S \sim \mathcal (\frac{1}{\sigma^2}x_*^TA^{-1}X^Ty, x_*^TA^{-1}x_* + \sigma^2) $$

where $A = 1/\sigma^2 X^TX + 1/\tau^2 I$. the derivation of these formulas is somewhat involved. Nonetheless, from these equations, we get at least a flavor of what Bayesian models are all about: the posterior distribution over the test output $y_*$ for a test input $x_*$ is a gaussian distribution – this distribution reflects the uncertainty in our predictions $y_* = \theta^Tx_* + \varepsilon_*$ arising from both the randomness in $\varepsilon_*$ and the uncertainty in our choice of parameter $\theta$. In contrast, classical probabilistic linear regression models estimate parameters $\theta$ directly from the training data but provide no estimate of how reliable these learned parameters may be.

原文地址:https://www.cnblogs.com/eliker/p/11309896.html

时间: 2024-11-04 09:21:29

Bayesian linear regression的相关文章

贝叶斯线性回归(Bayesian Linear Regression)

贝叶斯线性回归(Bayesian Linear Regression) 标签(空格分隔): 监督学习 @ author : [email protected] @ time : 2015-06-19 原文地址 贝叶斯线性回归Bayesian Linear Regression 原文地址 关于参数估计 极大似然估计 渐进无偏 渐进一致 最大后验估计 贝叶斯估计 贝叶斯估计核心问题 贝叶斯估计第一个重要元素 贝叶斯估计第二个重要元素 贝叶斯估计的增量学习 贝叶斯线性回归 贝叶斯线性回归的学习过程 贝

机器学习---线性回归(Machine Learning Linear Regression)

线性回归是机器学习中最基础的模型,掌握了线性回归模型,有利于以后更容易地理解其它复杂的模型. 线性回归看似简单,但是其中包含了线性代数,微积分,概率等诸多方面的知识.让我们先从最简单的形式开始. 一元线性回归(Simple Linear Regression): 假设只有一个自变量x(independent variable,也可称为输入input, 特征feature),其与因变量y(dependent variable,也可称为响应response, 目标target)之间呈线性关系,当然x

Spark MLlib Linear Regression线性回归算法

1.Spark MLlib Linear Regression线性回归算法 1.1 线性回归算法 1.1.1 基础理论 在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析.这种函数是一个或多个称为回归系数的模型参数的线性组合. 回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析.如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间

Machine learning with python - Linear Regression

Machine learning with python Linear Regression 数据来自 cs229  Problem Set 1 (pdf) Data: q1x.dat, q1y.dat, q2x.dat, q2y.dat PS1 Solution (pdf) 从左上往右下 batchGradientDescent的cost随迭代次数的增加而下降,和收敛结果 stochasticGradientDescent的cost随迭代次数的增加而下降,和收敛结果 normalEquatio

rhadoop linear regression 问题

library(rhdfs) library(rmr2) hdfs.init() hdfs.delete("/user/output/lm.output") map <- function(k,lines) { lines<-unlist(strsplit(lines,'#')) k<-lines[1] x<-unlist(strsplit(lines[2],',')) y<-unlist(strsplit(lines[3],',')) x<-as.

Regularization in Linear Regression & Logistic Regression

一.正则化应用于基于梯度下降的线性回归 上一篇文章我们说过,通过正则化的思想,我们将代价函数附加了一个惩罚项,变成如下的公式: 那么我们将这一公式套用到线性回归的代价函数中去.我们说过,一般而言θ0我们不做处理,所以我们把梯度下降计算代价函数最优解的过程转化为如下两个公式. 我们通过j>0的式子,能够分析得出,θj 我们可以提取公因子,即将上式变成: 由于θj的系数小于1,可以看出, 正则化线性回归的梯度下降算法的变化在于,每次都在原有算法更新规则的 基础上令 θ 值减少了一个额外的值. 那么至

Matlab实现线性回归和逻辑回归: Linear Regression &amp; Logistic Regression

原文:http://blog.csdn.net/abcjennifer/article/details/7732417 本文为Maching Learning 栏目补充内容,为上几章中所提到单参数线性回归.多参数线性回归和 逻辑回归的总结版.旨在帮助大家更好地理解回归,所以我在Matlab中分别对他们予以实现,在本文中由易到难地逐个介绍. 本讲内容: Matlab 实现各种回归函数 ========================= 基本模型 Y=θ0+θ1X1型---线性回归(直线拟合) 解决

Programming Assignment 1: Linear Regression

Warm-up Exercise Follow the instruction, type the code in warmUpExercise.m file: A = eye(5); Computing Cost (for One Variable) By the formula for cost function (for One Variable): J(θ0, θ1) = 1/(2m)*∑i=1~m(hθ(x(i)-y(i))2 We can implement it in comput

Machine_learning_cs229线性回归 Linear regression(2)

这篇博客针对的AndrewNg在公开课中未讲到的,线性回归梯度下降的学习率进行讨论,并且结合例子讨论梯度下降初值的问题. 线性回归梯度下降中的学习率 上一篇博客中我们推导了线性回归,并且用梯度下降来求解线性回归中的参数.但是我们并没有考虑到学习率的问题. 我们还是沿用之前对于线性回归形象的理解:你站在山顶,环顾四周,寻找一个下山最快的方向走一小步,然后再次环顾四周寻找一个下山最快的方向走一小步,在多次迭代之后就会走到最低点.那么在这个理解中,学习率其实是什么呢?学习率就是你走的步子有多长. 所以