在线性回归中,用于衡量准确度的Cost函数为:
\(J(\theta)\;=\;{1 \over 2} \sum_{i=1}^m (y^{(i)}-\theta^Tx^{(i)})^2\)
以下为该函数的推导过程:
在线性回归中我们认为任意数据集都可以通过一个线性函数来拟合:
\(h(\theta)\;=\;\theta_1x^{(1)}+\theta_2x^{(2)}+\ldots+\theta_mx^{(m)}+\theta_0\)
其中最后一项与x本身无关,因此将\(\theta\)作为一个参数矩阵,可以得到:
\(y^{(i)}\;=\;\theta^Tx^{(i)}+\epsilon^{(i})\)
其中\(\epsilon^{(i)}\)为误差项,即不在特征中但是影响最终值得所有因素比如随机噪声等。
我们假设该项的每个子项满足IID即独立同分布(拥有相同的概率分布但是相互堵路)
在线性回归中,我们假设该项符合均值为0,方差为\(\sigma^2\)的高斯分布。因此\(\epsilon^{(i)}\)的概率密度公式为:
\(p(\epsilon^{(i)})\;=\;{1 \over \sqrt {2\pi}\sigma} exp(-{(\epsilon^{(i)})^2 \over 2\sigma^2})\)
通过上述式子可以推导出在给定参数\(\theta\)和x的情况下,得到目标结果y的概率函数:
\(p(y^{(i)}|x^{(i)};\theta)\;=\;{1 \over \sqrt {2\pi}\sigma} exp(-{(y^{(i)}-\theta^Tx^{(i)})^2 \over 2\sigma^2})\)
其中\(p(y^{(i)}|x^{(i)};\theta)\)的含义为:给定\(x^{(i)}\)和参数\(\theta\)时,得到y的概率。其中参数\(\theta\)不是随机变量。该式也可以写成:
\(y^{(i)}|x{(i)};\theta\sim\mathscr N(\theta^Tx^{(i)},\sigma^2)\)
假设我们有X表示训练集,则我们需要一个关于\(\theta\)函数,才能对其进行调整。
在这里我们引入一个 似然度(likelihood)函数
\(L(\theta)\;=\;L(\theta;X,\vec y)\;=\;p(\vec y|X;\theta)\)
由于\(\epsilon^{(i)}\)相互独立,所以上式也可以写成:
\(L(\theta)\;=\;\prod_{i=1}^m p(y^{(i)}|x^{(i)};\theta)\)
\(=\;\prod_{i=1}^m {1 \over \sqrt {2\pi}\sigma} exp(-{(y^{(i)}-\theta^Tx^{(i)})^2 \over 2\sigma^2})\)
线性回归的目的是为了让函数尽可能的拟合所有点,即对于给定\(x^{(i)}\),得到\(y^{(i)}\)的概率最大。因此,目标就是最大化似然度函数\(L(\theta)\)
为了计算方便,我们引入对数似然度函数(log likelihood),即:
\(\mathscr l(\theta)\;=\; log\,L(\theta)\)
\(=\;log \prod_{i=1}^m {1 \over \sqrt {2\pi}\sigma} exp(-{(y^{(i)}-\theta^Tx^{(i)})^2 \over 2\sigma^2}) \)
\(=\;\sum_{i=1}^m log {1 \over \sqrt {2\pi}\sigma} exp(-{(y^{(i)}-\theta^Tx^{(i)})^2 \over 2\sigma^2}) \)
应用log函数的性质\(log(AB)=log(A)+log(B)\),\(log(exp(x))=x\):
\(=\;m\,log {1 \over \sqrt {2\pi}\sigma} \, – \, {1 \over 2\sigma^2} \sum_{i=1}^m (y^{(i)}-\theta^Tx^{(i)})^2 \)
则最大化对数似然度函数就可以变成最小化上式的后半部分:
\( {1 \over 2} \sum_{i=1}^m (y^{(i)}-\theta^Tx^{(i)})^2\)
即线性回归的Cost函数\( J(\theta) \)