Linear Regression 线性回归
1. hypothesis function
又叫决策函数(decision function),这里是线性模型,
θ
是参数。
hθ(x)=∑i=0nθixi=θTx
2. cost function
这里是最小二乘法,least squares function
J(θ)=12∑i=1m(hθ(x(i)−y(i)))2
3. gradient descent
梯度下降,要沿着最抖的(steepest)梯度方向更新参数
θj=θj−α∂∂θjJ(θ)
3.1 batch gradient descent
可直接从公式2和3推导得到,称批梯度下降,i是内循环
θj=θj−α∑i=1m(y(i)−hθ(x(i))) x(i)j
3.2 stochastic gradient descent
若是每来一个参数就更新参数,就是随机梯度下降,i是外循环
θj=θj−α (y(i)−hθ(x(i))) x(i)j
Logistic Regression
redefine hypothesis
hθ(x)=g(θTx)
where
g(z)=11+e−z
g(z) 是 logistic function,或者叫 sigmoid function。
Logistic Classification
P(y=1 | x;θ)=hθ(x)
P(y=0 | x;θ)=1−hθ(x)
合并后
p(y | x;θ)=(hθ(x))y(1−hθ(x))1−y
带入所有的样本点,并用最大似然估计,最大化似然函数
Perceptron Learning Algorithm 感知机
redefine
g(z)={10if z≥0ifz<0
Newton’s Methods 牛顿法与拟牛顿法
若要求函数
f(θ)
的零点,除了直接求解析解和前面讲过的梯度下降之外,也可以用牛顿法。
更新规则如下:
θ:=θ−f(θ)f′(θ)
这个原理从几何作图上比较好理解,然而我懒得画图。
当然,若是求函数
l′(θ)
的极值,相当于求其导数的零点,因此转化成了
θ:=θ−l′(θ)l′′(θ)
在 LR 中,参数
θ
是向量值,所以我们也要把牛顿法推广到多维的设定,称牛顿-拉夫逊方法(Newton-Raphson method)
θ=θ−H−1∇θl(θ)
其中 H 是海森矩阵,定义为:
后面的 ∇θl(θ) 表示 l(θ) 对 θ 的偏导。
由于需要去求海森矩阵的逆矩阵 H−1 很复杂和耗费计算量,所以可以用拟牛顿法,即用矩阵 G 近似代替 H−1 ,可以用下面几种算法实现。
- DFP算法
- BFGS算法
- Broyden类算法