2.9 logistic回归中的梯度下降法(非常重要,一定要重点理解)
- 怎么样计算偏导数来实现logistic回归的梯度下降法
- 它的核心关键点是其中的几个重要公式用来实现logistic回归的梯度下降法
- 接下来开始学习logistic回归的梯度下降法
- logistic回归的公式

- 现在只考虑单个样本的情况,关于该样本的损失函数定义如上面第三个公式,其中a是logistic回归的输出,y是样本的基本真值标签值,
- 下面写出该样本的偏导数流程图
- 假设样本只有两个特征x1和x2
- 为了计算Z,我们需要输入参数w1和w2和b

- 因此在logistic回归中,我们要做的就是变换参数w和b的值,来最最小化损失函数,
- 在前面,我们已经前向传播步骤,在单个训练样本上,计算损失函数,现在我们开始讨论怎么样向后计算偏导数,(重点)

- 要想计算损失函数L的导数,
- 首先,我们需要向前一步,先计算损失函数的导数,计算函数L关于a的导数,在代码中,只需要使用da来表示这个变量,
- 事实上,

- 损失函数导数的计算公式就是这样,最终结果关于变量a的导数
- 事实上,
- 现在可以再向后一步,计算dz,dz是损失函数关于z的导数,
- 事实上

- 事实上
- 现在,向后传播的最后一步,w和b需要如何变化,
- 特别的关于w1的导数(函数L对w1求导)
- 关于w2的求导
- 关于b的求导
- db=dz=a-y
- 特别的关于w1的导数(函数L对w1求导)
- 因此,关于单个样本的梯度下降法,所需要做的就是使用这个计算公式计算dz,然后计算dw1、dw2、db,然后
- 更新w1位w1减去学习率乘以dw1

- 更新w2位w2减去学习率乘以dw2

- 更新b为b减去学习率乘以db

- 更新w1位w1减去学习率乘以dw1
- 这就是单个样本实例的一次梯度更新步骤
- 首先,我们需要向前一步,先计算损失函数的导数,计算函数L关于a的导数,在代码中,只需要使用da来表示这个变量,
- 但是训练logistic回归模型,不仅仅只有一个训练样本,而是有m个训练样本的整个训练集,
- 下一节将会介绍,这些想法是如何应用到整个训练样本集当中的。而不仅仅是单个样本。
2.9 logistic回归中的梯度下降法(非常重要,一定要重点理解)的更多相关文章
- 斯坦福《机器学习》Lesson4感想--1、Logistic回归中的牛顿方法
在上一篇中提到的Logistic回归是利用最大似然概率的思想和梯度上升算法确定θ,从而确定f(θ).本篇将介绍还有一种求解最大似然概率ℓ(θ)的方法,即牛顿迭代法. 在牛顿迭代法中.如果一个函数是,求 ...
- 对数几率回归法(梯度下降法,随机梯度下降与牛顿法)与线性判别法(LDA)
本文主要使用了对数几率回归法与线性判别法(LDA)对数据集(西瓜3.0)进行分类.其中在对数几率回归法中,求解最优权重W时,分别使用梯度下降法,随机梯度下降与牛顿法. 代码如下: #!/usr/bin ...
- 在matlab中实现梯度下降法
梯度下降法的原理,本文不再描述,请参阅其它资料. 梯度下降法函数function [k ender]=steepest(f,x,e),需要三个参数f.x和e,其中f为目标函数,x为初始点,e为终止误差 ...
- Logistic回归中损失函数求导证明过程
- Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率
(手机的颜色,大小,用户体验来加权统计总体的值)极大似然估计MLE 1.Logistic回归 Logistic regression (逻辑回归),是一种分类方法,用于二分类问题(即输出只有两种).如 ...
- 机器学习公开课笔记(3):Logistic回归
Logistic 回归 通常是二元分类器(也可以用于多元分类),例如以下的分类问题 Email: spam / not spam Tumor: Malignant / benign 假设 (Hypot ...
- 对线性回归,logistic回归和一般回归的认识
原文:http://www.cnblogs.com/jerrylead/archive/2011/03/05/1971867.html#3281650 对线性回归,logistic回归和一般回归的认识 ...
- 线性回归,logistic回归和一般回归
1 摘要 本报告是在学习斯坦福大学机器学习课程前四节加上配套的讲义后的总结与认识.前四节主要讲述了回归问题,回归属于有监督学习中的一种方法.该方法的核心思想是从连续型统计数据中得到数学模型,然后将该数 ...
- Logistic回归(逻辑回归)和softmax回归
一.Logistic回归 Logistic回归(Logistic Regression,简称LR)是一种常用的处理二类分类问题的模型. 在二类分类问题中,把因变量y可能属于的两个类分别称为负类和正类, ...
随机推荐
- sqli-libs(38-41(堆叠注入)关)
补充知识:堆叠注入(Stacked injections) 从名词的含义就可以看到应该是一堆sql语句(多条)一起执行.而在真实的运用中也是这样的,我们知道在mysql中,主要是命令行中,每一条语句结 ...
- Opencv模块
参考博客:https://blog.csdn.net/u012679707/article/details/79505279
- HahMap相关问题
概述 文章对HashMap的部分细节进行介绍,JDK1.7之前有可能出现环形表的问题,而1.7之后进行了改进,文章对环形表现象的出现进行了解析,然后对HashMap注意的几个问题进行了解答. Hash ...
- laravel Excel导入导出
1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. 该 ...
- 前端之HTML基础篇
HTML基础篇 目录 本章内容: 简介 1. ...
- uni-app 去除顶部导航栏
自学uni-app第一天,因为有一点点的小程序和vue的基础所以感觉对uni-app有一点点的亲切感,从今天呢开始着手从登录页学习uni-app,记录一些用到的知识点,欢迎大家一起学习. 启动页隐藏顶 ...
- GO学习之 为什么选择GO
一.Go语言为并发而生 如上所述,硬件制造商正在为处理器添加越来越多的内核以提高性能.所有数据中心都在这些处理器上运行,更重要的是,今天的应用程序使用多个微服务来维护数据库连接,消息队列和维护缓存.因 ...
- C语言笔记 10_文件读写&预处理器
文件读写 上一章我们讲解了 C 语言处理的标准输入和输出设备.本章我们将介绍 C 程序员如何创建.打开.关闭文本文件或二进制文件. 一个文件,无论它是文本文件还是二进制文件,都是代表了一系列的字节.C ...
- Tomcat,Jboss,Weblogic通过jndi连接数据库
1. Tomcat配置Jndi数据源 1.1在tomcat服务器的lib目录下加入数据库连接的驱动jar包 1.2修改tomcat服务器的conf目录下server.xml配置文件 编辑server ...
- C/C++ 传递信息给Java
#开始 今天有人问我C++怎么给Java传递消息 大概需求是 用C++写了一个窗口 需要把编辑框里面的东西传递给Java做处理 #解决过程 我现在能想到的有三个简单的方法 1. Socket编程 通过 ...
