Example: Polynomial Curve Fitting


The goal of regression is to predict the value of one or more continuous target variables t given the value of a D-dimensional vector x of input variables.

什么是线性回归?线性回归的目标就是要根据特征空间是D维的输入x,预测一个或多个连续的目标值变量,大多数情况下我们研究的目标值是一维的。

We can obtain a much more useful class of functions by taking linear combinations of a fixed set of nonlinear functions of the input variables, known as basis functions. Such models are linear functions of the parameters, which gives them simple analytical properties, and yet can be nonlinear with respect to the input variables.

这个多项式拟合的例子并不是用一条直线进行回归,这个例子为什么是线性回归呢?这里说的线性是指预测函数y是关于参数w的线性函数。我们可以用一些非线性基函数(basis functions)将我们的输入变量进行非线性变换。

在这个例子中,绿色的曲线是产生数据真正的y=sin(2πx),蓝色的圈圈是在[0,1]区间上均匀采样,加入均值为0的高斯噪声产生的样本。


Talor Expansion

有人会想,为什么我们可以用多项式进行拟合?这时候我们可以借助泰勒展开定理。

若函数f(x)在点a的某一领域内具有(n+1)阶导数,则在该领域内f(x)的n阶泰勒公式为:

其中,当a=0时为泰勒公式的特例,麦克劳林展开

特别地,当f(x)=sin(x)和n=9时,我们有:

也就是说,sin(x)可以用在x=0处的麦克劳林展开,用M阶多项式进行近似,当M越大,拟合效果越好。


Common Basis Functions

更一般地形式


where ϕj(x) is known as basis functions

Polynomial basis functions

Gaussian basis functions

Sigmoid basis functions

where


Objectives and Results



我们的目标是预测值(绿色的点)与训练样本的值(蓝色的点)之间的误差尽量小,采用的损失函数是平方损失函数。



Maximum likelihood and least squares

假设我们的目标变量t是由目标函数y(x,w)加上高斯噪声产生的

其中,ϵ是均值为0,方差为β−1的高斯随机变量,也就是



在给定一个输入x的情况下,目标变量t的条件期望

根据训练样本X以及对应的t,我们可以得到关于参数w和β似然函数

两边取log


其中

极大化似然函数等价于极小化损失函数。在噪声服从均值为0的高斯分布情况下,MLE与Least Square等价


Calculate Parameter

通过梯度下降进行求解


设置梯度为0

最后化简,我们可以得到

特别地,当两个或两个以上的列向量相关性明显的话,ϕTϕ容易接近奇异矩阵,求解的w会有很大的波动


Geometry of least square


这里假设我们的样本大小N=3,特征M=2,t⃗ =(1,2,3)
每个样本的特征空间是2维,其中第一列(1,0,0)我们可以看成是一个特征维度(比如x轴),三维空间中的一个点或者向量,对应下图的φ1,第二列(0,1,0)也是一个特征维度(比如y轴),对应下图的φ2,这两个维度向量构成的向量空间(对这两个向量进行线性组合,系数为w1和w2)就是在三维空间中的一个平面。但是我们的数据样本的t⃗ =(1,2,3)(下图中绿色的向量),显然不在这个平面中,这样进行回归或者拟合就会产生误差(下图中黑色的线段),我们的任务是将这种误差最小化,也就是找一条最短的黑色线段,解决的办法就是将t⃗ 向二维平面(数据的特征空间)进行投影,得到一个y⃗ ,这个y⃗ 就是对两个列向量进行线性组合的结果,系数为w1和w2,也就是我们要求解的参数。我们可以再进一步想想,为什么会有误差呢,如果我们再引进一个特征(再加入一个列向量φ3=(0,0,1),比如z轴),这时候,我们的特征空间就可以表示任何三维空间中的数据了,在这个例子中就不会有误差了。但是实际上,对一个问题进行回归分析,考虑的维度可能是成千上万维甚至无穷维,所以基本上都会有误差。


Regularized Least Squares

Over-fitting的问题可以通过在损失函数中加入正则项(参数的惩罚)


其中λ是正则项的系数,损失函数就变为

参数w的解变为


更一般的形式


这个问题可以转换为带约束的凸优化问题,我们可以基于约束条件,构造拉格朗日函数。


上图左边为Ridge,右边为Lasso,这就是为什么Lasso能够参数稀疏解,进行特征选择。

---

#The Bias-Variance Decomposition

期望的损失函数


其中h(x)是我们的目标函数


Bias和Variance是一个trade-off的问题


Bayesian Linear Regression

参数w的先验概率分布


参数w的后验概率分布

其中

特别地,我们取



对参数w的后验概率分布取log

λ=αβ
MAP与Regularized Least Square等价


Predictive distribution

Bayesian关注的不是参数的获取,而是预测



Equivalent Kernel

预测值可以写成


写成等价核的形式

其中

可以看出是训练样本的目标值的加权求和。我们可以不使用基函数(隐式定义了核),直接定义等价核,从而引出了高斯过程。


Bayesian Model Comparison

Bayesian可以帮助我们做模型选择


其中Model Evidence是

我们需要选择那个Model Evidence最大的模型
Bayes factor


取log

多个参数w的情况下

从这个图中,我们可以看出,简单模型可以产生的数据D比较单一,而复杂模型可以产生比较复杂多样数据,但是分配到这些数据D的概率比较低,也就是复杂模型的Model Evidence较低,适中的模型复杂度有较高的Model Evidence,而简单模型虽然有较高的Model Evidence,但是其拟合能力差。


Bayesian Framework Summary

  • 可以避免过拟合
  • 需要对模型进行假设,也就是选择合适的先验,不合理的先验会导致一些问题(例如高斯先验的方差如果取无限大的话,无法对参数w进行积分)

PRML-Chapter3 Linear Models for Regression的更多相关文章

  1. [Scikit-learn] 1.1 Generalized Linear Models - Logistic regression & Softmax

    二分类:Logistic regression 多分类:Softmax分类函数 对于损失函数,我们求其最小值, 对于似然函数,我们求其最大值. Logistic是loss function,即: 在逻 ...

  2. PRML读书笔记——3 Linear Models for Regression

    Linear Basis Function Models 线性模型的一个关键属性是它是参数的一个线性函数,形式如下: w是参数,x可以是原始的数据,也可以是关于原始数据的一个函数值,这个函数就叫bas ...

  3. PRML读书会第三章 Linear Models for Regression(线性基函数模型、正则化方法、贝叶斯线性回归等)

    主讲人 planktonli planktonli(1027753147) 18:58:12  大家好,我负责给大家讲讲 PRML的第3讲 linear regression的内容,请大家多多指教,群 ...

  4. [Scikit-learn] 1.1 Generalized Linear Models - Lasso Regression

    Ref: http://blog.csdn.net/daunxx/article/details/51596877 Ref: https://www.youtube.com/watch?v=ipb2M ...

  5. [Scikit-learn] 1.1 Generalized Linear Models - from Linear Regression to L1&L2

    Introduction 一.Scikit-learning 广义线性模型 From: http://sklearn.lzjqsdd.com/modules/linear_model.html#ord ...

  6. [Scikit-learn] 1.5 Generalized Linear Models - SGD for Classification

    NB: 因为softmax,NN看上去是分类,其实是拟合(回归),拟合最大似然. 多分类参见:[Scikit-learn] 1.1 Generalized Linear Models - Logist ...

  7. Regression:Generalized Linear Models

    作者:桂. 时间:2017-05-22  15:28:43 链接:http://www.cnblogs.com/xingshansi/p/6890048.html 前言 本文主要是线性回归模型,包括: ...

  8. [Scikit-learn] 1.5 Generalized Linear Models - SGD for Regression

    梯度下降 一.亲手实现“梯度下降” 以下内容其实就是<手动实现简单的梯度下降>. 神经网络的实践笔记,主要包括: Logistic分类函数 反向传播相关内容 Link: http://pe ...

  9. Popular generalized linear models|GLMM| Zero-truncated Models|Zero-Inflated Models|matched case–control studies|多重logistics回归|ordered logistics regression

    ============================================================== Popular generalized linear models 将不同 ...

随机推荐

  1. 【ML数学知识】极大似然估计

    它是建立在极大似然原理的基础上的一个统计方法,极大似然原理的直观想法是,一个随机试验如有若干个可能的结果A,B,C,... ,若在一次试验中,结果A出现了,那么可以认为实验条件对A的出现有利,也即出现 ...

  2. 测试mysql

    sysbench 测试mysql TODO emacs

  3. 如何使移动web页面禁止横屏?

    https://segmentfault.com/q/1010000005813183 一般只有移动版有这种需求,我们一般不去禁止,而是比例缩放,css实现,竖屏1rem = 9pt ,横屏1rem ...

  4. bootstrap系统学习

    1.响应式中注意的内容: 一行(row)必须在.container中. col-xs- col-sm- col-md- col-lg- 列偏移 .col-md-offset-* 列排序 .col-md ...

  5. 刷完了leetcode的数据库题目~

    很久很久很久之前,我上传了几条数据库题目,并没有坚持,今天跟新一下进度吧,其实没啥难度w(* ̄︶ ̄)

  6. Java笔试之输入输出

    在校招笔试中,有的时候我们要自己设计输入输出,下面罗列一些常见的输入输出: 首先把输入包加载进来: import java.util.* ; 一 ,输入 1,输入一个整数,浮点数,输入一个数组 : p ...

  7. 个人知识管理系统Version1.0开发记录(03)

    demo  设 计 一个知识点demo,在数据库和用户界面的互动事件.分三个层次,数据存储,数据方法工具,数据呈现界面.这一次先完成数据存储,按以下逻辑实现.工具:eclipse,oracle数据库, ...

  8. confluence+Mysql5.7 版本安装破解

    此篇稍微过下msyql 的处理方案:其他详细请参照上一篇文章地址:https://www.cnblogs.com/flyrock/p/9693327.html mysql 最新版本8.0 有点坑,co ...

  9. hdu4678 Mine 规律或者博弈。(博弈的sg函数不懂我是找的规律)

    链接:题意就是告诉你一个扫雷图里面每个雷的位置,有两个人,每个人都知道雷的确切位置,每个人一次可以点一部,问你谁能赢. 链接:http://acm.hdu.edu.cn/showproblem.php ...

  10. Zabbix在CentOS7上的安装方法:

    ).zabbix-server 要安装zabbix-server首先需要安装MySQL数据库,当然你可以将MySQL换成其他的数据库 1.1)创建zabbix数据库:CREATE DATABASE z ...