一、监督学习概念
supervised learning 监督学习
input feature 例如 xi = (a,b,c,d) 例如(房屋面积,房间个数,房屋年代)
target variable 例如yi 例如 yi=房屋价格
training example 例如 (xi,yi)
training set training example的集合
hypothesis 一个函数 h(x)
supervised learning的目的(什么是supervised learning)
下图就是一个 监督学习的过程图:
监督学习 读入一个 training set(每一个元素是(xi,yi)),通过一个学习算法,得到一个hypothesis(函数) 。这个hypothesis能够对新的 input feature进行预测得到 新的output
variable ---- y。
两类监督学习:
当target value 是一小搓离散的值就,这就叫做分类问题 --- classification
要预测的目标变量是连续的,就叫做回归问题。---regression
二、线性回归 linear regression
线性回归顾名思义 就知道 回归得到的hypothesis是一个线性函数
例如 我们的 training example是 (xi,yi) xi 是二维的,例如房屋的xi=(面积, 房间数目)。yi代表房屋的总价
那么线性回归就是需要得到一个线性拟合函数 h(xi) = θ1x1 + θ2y1+θ3 = A*X
其中A=(θ1,θ2,θ3),X=(x1,y1,1) ,它们都是向量。
为了定义h(Xi)与yi有多接近我们定义一个cost function:
J(A) = (1/2)*(h(Xi) - yi)**2 (平方)
为什么 J(A)最小的时候就是最佳拟合呢?下面是从概率的角度来分析
最小二乘的概率论解释
从上面可以看出 J(A)最小与最大似然函数最大 是等价的。
三、最小均方算法
怎么求一个A=(θ1,θ2,θ3)使得 J(A) 最小呢?
下面就是 一个算法 LMS (least mean square 最小均方算法)
J(A) = (1/2)*(h(Xi) - yi)**2
J(A)对θ1求偏导,得到偏导数:j1= (θ1*x1 +θ2*y1+θ3 - yi) *x1
J(A)对
θ
2求偏导,得到偏导数:j2 = (θ1*x1 +θ2*y1+θ3 -
yi) *y1
J(A)对
θ
3求偏导,得到偏导数:j3 = (θ1*x1 +θ2*y1+θ3 - yi)
(j1,j2,j3)就是 J(A)在A=(θ1,θ2,θ3)点的梯度(gradient)。梯度就是最陡的方向,也就是 J(A)变小最快的方向。我们可以想像,在(j1,j2,j3)方向走一小步,得
到一个新的点 A’=(θ1' , θ2' , θ3'), J(A')就会比J(A)小,重复这个过程就可以得到J(A)的最小值。从而得到一个 Ai = (
θ1
i,
θ2
i,
θ3
i)使得J(Ai)取得局部(全局
)最小值。
这个过程叫做:递归下降
LMS 每一次都必须遍历整个training set,非常耗时,一般不采用这种方法,但是要理解它的思想
下面一种方法叫 随机递归下降(stochastic gradient descent)它之遍历一遍training set。例如下面所示:有m个training exapmle的training set.
四、局部加权回归 locally weight regression。
如下图所示 整个 训练集的线性相关性不好,但是局部的线性相关性还是不错的。
在 linear regression中我们要解决的问题是
在LWR中我们解决的问题变成了。给定一个 training example。(Xi,yi)
其中wi是一个函数,对于给定的 x, 离x越近的training example 权值越大,反之越小。这也就是说忽略那些离x较远的
training example只关注离他较近的example。也就是 上面大图中所要表达的意思。
这个公式中的τ 叫做bandwith。可以控制 wi的下降速度。
五、(unweighted)Linear regression 和 locally weighted Regression 的区别