Logistic Regression Model(逻辑回归模型)

Cost Function

如下所示,本章讲述了如何拟合cost参数θ:
hypothesis函数在图中复习一下,在图中我们的假设函数范围在0-1之间.

在线性回归方程中我们的代价函数如下:

现在改写一下,去掉平方,让下图蓝色字体等于平方差,实际上还是对数据集从1-m求和的公式,只不过简写了而已,如下图:

简化上面的式子,去掉上标,直接定义,Cost(hθ(x),y):其中hθ(x)代表假设函数,y代表实际函数,如下图:

有了这个等式,我们可以把上一章中的逻辑回归的方程带入到hypothesis函数中,按照下图的粉红色线从右往左依次带入公式,最终J(θ)可以得到下图左下的那张图,其中non-convex代表的含义是非凸函数,但是问题是这样的图形来用作梯度下降会发现,不能保证它收敛到全局最小值。而下图右下侧的图形,使我们想要的convex凸函数图形,也就是J(θ)图形的理想化,这样的图形可以使梯度下降找到全局最小值。

结论:如果我们用非线性的sigmoid函数来作为假设函数回
推代价函数的话,并不能得到很好的凸函数图形。

所以接下来,我们要寻找一个更好的代价函数。
再此之前,先复习一下数学知识,log函数的图像:


于是有了下面的图:


上图左下图形表示: 如果当y=1时,那么代价函数的图形对应的公式为:-log(hθ(x))。这个图的横轴是h(x)即预测值,纵轴是cost函数的值,也就是预测值和真实值的差。
这张图的右侧英文很好的解释了为什么当y=1时,式子是这样的比较好。y代表的是我们数据的真实值,h(x)代表的是预测值,当h(x)=1,我们可以从图中看到,cost=0,当代价函数等于0时,正是我们想要的结果,说明 h(x)(预测值)=y(实际值)=1。但是同理,若h(x)越是趋近0,代价函数也越趋近正无穷,误差也就越大!

这里教授同时也说到另一个问题,当假设函数的值等于0,那么y=1的概率是0。这类似于病人得恶性肿瘤的概率,就是说你的肿瘤完全不可能是恶性的,然而结果是病人的肿瘤确实是恶性的。如果出现这样的结果,我们需要狠狠的惩罚一下这个算法!

接下来看下图,当y=0时代价函数的图:

当hθ(x)趋近与1时,也就是预测的值是1时,而最终真实的y是0,则说明我们需要这个算法付出一个很大的代价!…与上面一样,因为预测出来的值违背了真实值。反过来,如果假设函数预测对了,预测的y是0,而y就是等于0,那么说代价函数在这点上应该就是等于0.

Simplified cost funciton and gradient descent

本章讲解了用梯度下降算法那来拟合出逻辑回归的参数。

Simplified cost funciton

在上面讲述了关于代价函数的表达式,分两种情况,一个是y=1,一个是y=0.而对于这种表达式,我们还有更简便的写法,如下图:

再来张机打高清图:

为什么说这个式子等于上一章说的呢,这里正向推导我是不知道怎么来的,但是教授的反向推导倒是看明白了。他解释了一下反向推导的过程:

当y=1时,我们将其带入高清机打图的公式中:可以看到后面的第二项(1-y)=0,而最终得到的结果=======Cost(hθ(x),y) = -log(hθ(x))。
当y=0时,我们将其带入高清机打图的公式中:可以看到第一项-y=0,而最终得到的结果=======Cost(hθ(x),y) = -log(1-hθ(x))。个人理解这就是逆向推导....

通过上面的写法,将2行的条件代价函数式子写成了一行。而这样写的好处是什么?视频里并木有说…但是这个式子是从统计学中的最大似然估计(Maximum Likelihood Estimate,MLE)得来的。统计学的思路是从不同的式子中有效地找出不同的参数。同时它还有一个好处,就是它是凸函数!所以这就是大部分人使用的逻辑回归代价函数。这里说一句wiki里的:在统计学中,最大似然估计,也称为最大概似估计,是用来估计一个概率模型的参数的一种方法。
接下来将得到的Cost(hθ(x),y)带回到之前说的类似线性J(θ)函数中,如下图:

我们尽量让J(θ)取得最小值,假设我们给出一个新的样本值x,用下面的式子来输出对假设的预测,假设我们的hypothesis预测的概率就是P(y=1|x;θ),这个式子的含义关于θ参数时y=1的概率。

结论:我们通过逆向推导可以很清晰的理解逻辑回归代价函数的简单版,它是通过统计学总结出来的。将Cost()函数简化后带回原式得到J(θ):

最终,我们需要关心的是如何最小化代价函数J(θ),而最小化的方法就是使用梯度下降算法。

gradient descent

利用梯度下降法重复更新θj,如下图:

a代表的是学习速率,这和线性回归时后的梯度下降是一样的,而对J(θ)进行微积分,得到的是图中蓝色字体的公式(其实就是预测误差乘上X(i)j),将其带回到原来的式子中,可以得到如下形式的写法:

再来看,如果当我们有一组θ向量时,我们用梯度的这个式子同时更新θ值,但是细细的想一下这个式子,是不是很眼熟呢?其实这个式子是跟线性回归梯度下降时,当θ=1时是一个式子!!如下图:

那么线性回归的梯度下降算法和逻辑回归的算法是同一个算法吗?来看看二者之间的区别:
最大的区别就是虽然梯度下降的表达式是一样的,但是对于hθ(x)来说,它们的定义是不同的
线性回归:hθ(x)=θ^T·X
逻辑回归:hθ(x)=1/(1+e^-(θ^T·X))

下图所示:

当我们在线性回归梯度下降时,讲述了如何监控梯度下降算法如何保证收敛(特征缩放的方法 feature scaling),同样的我们也可以将其用在逻辑回归的梯度下降中。忘记了可以看这篇博客。
特征缩放的博客需要补一下!!!之前跳过了中间Octave课程,没想到把特征缩放视频也跳过去了…第二周笔记的最后会补一下,这里mark一下。!!!
特征缩放的博客需要补一下!!!

结论:在梯度下降算法中,我们可以将逻辑回归方程的算法求导过程仿照线性回归的梯度下降一样推导。而逻辑回归方程中的J(θ)如下:

梯度公式如下:

Advanced Optimization

本节讲述高级优化算法和一些高级优化概念,使用这些方法会使我们逻辑回归算法的速度更快,能更好的解决大型的机器学习问题。
梯度下降算法:

如果我们不用梯度下降算法,其实还有其他高级算法供我们选择,而最好的方式就是调库使用。
其他的算法:
共轭梯度法(Conjugate gradient);
BFGS算法;
L-BFGS算法。
这些算法优点是不需要我们手动的选择α;速度快于梯度下降法。缺点是复杂。
所以我们只需要会使用它们,而不需要深究其中的原理。

在视频中,教授用Octave举例了fminunc函数。再次不做记录了。
本章重点:对于想快速求解大量数据的代价函数,我们可以采用调库形式的高级算法进行求解。学会调库,调库并不可耻~

展望结语

忧伤,从上一次笔记到现在已经过了小半个月了,中间各种研究java工作相关的东西,晚上回家是真的挤不出时间了….现在继续恢复正常,每天一个小视频,坚持坚持!今日打卡,滴滴滴!下一次的博客是多类分类和过拟合笔记。。。。
             已经在奔往机器学习的路上——!

Coursera 机器学习 -- 逻辑回归 笔记 【第二周】相关推荐

  1. 吴恩达深度学习 | (15) 结构化机器学习项目专项课程第二周学习笔记

    课程视频 第二周PPT汇总 吴恩达深度学习专项课程共分为五个部分,本篇博客将介绍第三部分结构化机器学习项目专项的第二周课程:机器学习(ML)策略(2) . 目录 1. 进行误差分析 2. 清除标注错误 ...

  2. 机器学习 逻辑回归算法应用案例

    机器学习 逻辑回归算法应用案例 时间:2020.09.12 出处:https://www.kesci.com/home/project/5bfe39b3954d6e0010681cd1 注明:初学逻辑 ...

  3. [转载] 吴恩达机器学习逻辑回归练习题:逻辑回归及规则化(python实现)

    参考链接: 了解逻辑回归 Python实现 练习题背景:网易云课堂->吴恩达机器学习课程->逻辑回归练习题 对于练习题的详细内容,和课程中推荐的octave编程实现,请见:吴恩达机器学习逻 ...

  4. 机器学习——逻辑回归

    机器学习--逻辑回归 一.逻辑回归 logistic回归又称logistic回归分析,常用于数据挖掘,疾病自动诊断,经济预测等领域.它是一种广义的线性回归分析模型,因此与多重线性回归分析有很多相同之处 ...

  5. 泰坦尼克(机器学习逻辑回归)

    泰坦尼克(机器学习逻辑回归) 原文链接 数据预处理 import pandas as pd train=pd.read_csv('C:/Users/Admin/Downloads/train.csv' ...

  6. 吴恩达机器学习课程笔记——第二周

    1. 多变量线性回归(Linear Regression with Multiple Variables) 也称为多元线性回归,一元就是一个变量,多元就是多个变量,在这里也可以叫做多个特征 1.1 多 ...

  7. 【学习周报】深度学习笔记第二周

    学习目标: 吴恩达深度学习课程week2 学习内容: 梯度下降法(Gradient Descent) 计算图(Computation Graph) 逻辑回归中的梯度下降(Logistic Regres ...

  8. 西电-机器学习-逻辑回归

    逻辑回归 本次作业的目的是建立一个逻辑回归模型,用于预测一个学生是否应该被大学录取. 简单起见,大学通过两次考试的成绩来确定一个学生是否应该录取.你有以前数届考生的成绩,可以做为训练集学习逻辑回归模型 ...

  9. EduCoder 机器学习 逻辑回归

    逻辑回归是属于机器学习里面的监督学习,它是以回归的思想来解决分类问题的一种非常经典的二分类分类器.由于其训练后的参数有较强的可解释性,在诸多领域中,逻辑回归通常用作 baseline 模型,以方便后期 ...

最新文章

  1. 投票 | RONG奖学金最佳人气奖评选活动开始啦!
  2. 惠普z640服务器装系统,顾问文档: HP Z440、Z640 和 Z840 工作站 - 在采用 Broadwell 处理器的系统上安装 HP ZTurbo Quad Pro 后,出现黑屏...
  3. MyBatis——动态SQL语句——if标签和where标签复合使用
  4. 用程序算法做人生选择
  5. drools6.5_Drools 6.5.0.Final可用
  6. char* 赋值 const char* 释放_嵌入式Linux开发《C语言专题(十:彻底搞懂“关键字”const)》...
  7. 目的入口(dst_entry)
  8. Python自动控制鼠标中键滚动并截屏保存图像
  9. 疫情政务问答助手算法冠军开源
  10. 【科研作图】软件推荐资源汇总PPT瑞思拜!
  11. python网络爬虫入门(三)—— 做个简陋的pixabay 图片下载器
  12. 关于谷歌浏览器62版本之后引用video.js不能自动播放的问题(Cross-origin plugin content from http://vjs.zencdn.net/swf/5.0.0-rc
  13. why elmlang:最简最安全的full ola stack的终身webappdev语言选型
  14. excel软件的IF函数及其用法
  15. html表格添加序号,通过layui给数据表格添加序号
  16. 实验室主机Ubuntu远程控制+自动开关机
  17. 关于“未使用GUID分区表”无法安装的解决方案
  18. linux生成表格的后缀,使用XSSFWork创建的xlsx后缀Excel文件无法打开
  19. 安装使用完虚拟机UltraISO后,删除电脑中多出的“CD驱动器”盘符
  20. DLNA 在自己的APP 中添加投屏功能

热门文章

  1. IT职场,技能比情商重要N倍
  2. 从实现原理谈谈低代码
  3. 桑基图可视化图表使用技巧全解析
  4. Windows电脑 添加 安卓或者苹果平板作为拓展屏(spacedesk )
  5. 利用photoshop cs5新增功能之“智能填充
  6. 什么是用户感?看看这4个产品经理的感性设计
  7. (图解)一步一步使用CPP实现深度学习中的卷积
  8. 私有化短链接管理系统-魔众短链接系统 v1.0.0
  9. 和月薪5W的华为程序员聊过后,才知道自己一直在打杂...
  10. 龙蜥社区技术委员会主席杨勇:下一代操作系统展望