斯坦福大学机器学习笔记(2)逻辑回归

上一篇线性回归是连续的量,用的是梯度下降或者正规方程来求解。
这一篇讲 分类 离散的量。

课程官网
吴恩达老师机器学习课程笔记
斯坦福大学的课程视频

判定边界
首先随便不管是什么参数θ,我们需要的是输入x之后只输出1或者0两个答案中的一个。这种要求的话一般要阶跃函数比较贴切。不过比起那种武断的分类,逻辑回归用的是概率,概率大于0.5则分类为1.也就是说,我们实际上还是**输出0~1的连续的值【概率值】然后大于0.5的分类到1,小的分到0去。**连续可导的函数才能在后期用梯度下降算法求导求代价值
逻辑回归
客户端公式是h(x),输入x,输出分类到1的可能性。程序内部要给定θ的一系列值,然后实际函数用的是g(z)这个函数图像。总之θTx≥0时,预测分类为1.

在这里插入图片描述
//自己试一试怎么画出一个圆形的区域吧

代价函数
好,现在要开始让机器自动找合适的θ了
一个合适的θ,应该在理应分类为1的时候预测的h(x)输出为0.5~1 ,所以预测值越靠近0,代价越大。
在这里插入图片描述
所以求代价的值就用这个公式

在这里插入图片描述
分类为0的情况得反一下,所以整个公式是
在这里插入图片描述
那么,每个样本的代价总和就是加起来除以数量取平均就是了,跟线性回归一样
在这里插入图片描述
//之所以不像线性回归那样直接用( 预测值-分类值 )^2 是因为不合适,会有很多个局部最小值。

简化一下公式
利用1和0的特性做一做乘法,这样就只是一条公式,而不是分段函数
在这里插入图片描述
在得到这样一个代价函数以后,我们便可以用梯度下降算法来求得能使代价函数最小的参数了。
复习一下
梯度下降的算法就是:参数值=原本的参数值 - 学习率 * 代价函数对参数的导数
你看,假设横轴是参数值,纵轴是代价函数,一个u型的函数图像的话就是找最低点的参数值,当参数值偏小,导数就是负的,梯度下降算法就会往上加。

总之,经过一番艰苦卓绝的求导之后就变成下面这个公式【开头的文章链接里有写过程,我忘记了h(x)不是单纯的θx系列 而是一个分数,结果求导错了,就懒得再搞了】【实际上,就是因为有这么一个g(z)函数,才让线性回归和逻辑回归变成了完全不同的回归】
在这里插入图片描述
对了,别忘记特征缩放

优化梯度下降

我们用梯度下降(用偏导值改θ)的时候,代价的值J(θ)基本上是一定下降的【除非这不收敛】所以其实可以不去计算代价的值,只算偏导
共轭梯度法 BFGS (变尺度法) 和L-BFGS (限制变尺度法) 是更高级的优化算法,我们先设定好代价函数和偏导的公式,然后它就会使用比梯度下降更复杂的算法来最小化代价函数。通常是用线性搜索(line search)算法 自动尝试不同的学习速率 ,并自动选择一个好的学习速率 ,因此它甚至可以为每次迭代选择不同的学习速率。当然还有其他更难的知识,所以我们就别自己学着做优化了,直接调用别人的库方便可靠又实用。
先准备一个子函数,输入θ向量,返回代价值和偏导值向量
然后调用优化函数,输入(子函数地址,θ初值,迭代次数等条件),返回(优化完成的θ值,算得的代价值,优化结束标识符)

多类别分类:一对多
要把样本分出好几种分类的话
在这里插入图片描述
就,每次单独拎出一个种类去分类,找合适的θ。有4种分类的话就有四组θ参数。以后输入新样本值,每组θ都要算一遍,找到概率最高的那个就是了,哪怕最高也只有0.233,那也是他。

损失函数:交叉熵详解
深度学习:感知器学习算法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值