Third week of machine learning on Coursera

Third week of machine learning on Coursera

@(Coursera)


Classification

Logistic Regression Model其实是个分类算法,逻辑回归的假设函数其实是线性模型的基础上加上了个sigmod()函数:

hθ(x)=g(θTx)

g(z)=11+ezsigmoid.

Descision Boundary(决策边界)

Sigmoid()函数图像为:
这里写图片描述
- 当 z0g(z)0.5,1 ;
- 当 z0g(z)<0.5,0 ;

所以当 θTx0,hθ(x)=1.
此时令 θTx=0 ,得到的图形就是训练集的决策边界。
这里写图片描述
例如,如上图中得到的直线 x1+x2=3 就是训练集的决策边界。


线性模型如上篇博客所述《second week》,它的假设函数和损失函数分别为

hθ(x)=θTX

J(θ)=12mi=1m(hθ(x(i))y(i))2

对线性模型求解最优的 θ 从而保证损失函数最小的方法是通过损失函数对每个 θj 求梯度,不断的更新 θj ,从而使得损失函数到达全局最优点。即梯度下降法。
备注:今天在回顾梯度下降法的时候,发现有个概念理解不对,求解损失函数的最小值时,为什么不能直接通过损失函数对 θ 求导=0,来求解 Jθ 的最小值呢?因为损失函数对 θ 的导数一定可以求出来,但是令导数为0时, θ 的解却不一定可以求出来。所以也是为什么使用梯度下降法的原因,通过多次迭代使得损失函数逐渐逼近最小值。


Logistic Regression的假设函数:

hθ(x)=11+eθTx

由于逻辑回归是个分类算法,它的假设函数值表示的是对应某个类的概率。
h(i)θ(x)=P(y=i | x;θ), i=1,2

它的损失函数不同于线性模型选择的均方损失函数(最小二乘法),而是选择的是 log对数损失函数。
注:关于损失函数的讲解请看这篇博客 机器学习-损失函数
损失函数:
J(θ)=1mi=1mCost(hθ(xi),y(i))

Cost(hθ(x),y)={log(hθ(x)),y=1;log(1hθ(x)),y=0;

上面两式结合得:
Cost=ylog(hθ(x))(1y)log(1hθ(x))

J(θ)=1mi=1m(ylog(hθ(x))(1y)log(1hθ(x)))

为了使 J(θ) 最小,重复:
θj:θjαθjJ(θ)=1mi=1m(hθ(x(i))y(i))x(i)j

注: J(θ)θAndrewNg


解决过拟合:

1、减少特征数量
- 手动选择需要保留的特征;
- 模型选择算法;

2、正则化
- 保留所有的特征,但是减小参数 θj 的数量级;
- 当我们有很多特征,每一个都对预测 y 值有用时,选择正则化;


Regularized linear regression

J(θ)=12m[i=1m(hθ(x(i))y(i))2+λj=1nθ2j]

上述损失函数 J(θ) 增加了一个正则项 λnj=1θ2j ,注意这里的 j1,...,n.
所以对应梯度下降迭代:

θ0:θ0α1mi=1m(hθ(x(i))y(i))x(i)0

θj:=θjα[1mi=1m(hθ(x(i))y(i))x(i)j+λmθj]=θj(1αλm)α1mi=1m(hθ(x(i))y(i))x(i)j

上述 1αλm<1 ,依次来减小 θj 的值,避免 θj 那项过拟合。


对于正规方程中,这里写图片描述


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值