机器学习-吴恩达笔记整理1(9章结束)

本文介绍了反向传播算法在计算神经网络参数导数中的作用,以及梯度检测作为验证其正确性的方法。通过随机初始化权重,进行正向传播和代价函数计算后,利用梯度检测确保反向传播的准确性。最后,通过优化算法如梯度下降来最小化代价函数。整个流程包括选择网络架构、初始化权重、正向传播、计算代价、梯度检测和优化。
摘要由CSDN通过智能技术生成

机器学习-吴恩达笔记整理:

反向传播的梯度检测:

一些知识点
1.反向传播
是计算代价函数关于所有参数的导数或者偏导数的方法
2.梯度检测
检测的方法:
梯度检测的方法
伪代码:
伪代码
目的:
验证反向传播中计算出的导数是否等于或者是在数值上非常接近用反向传播计算出的导数,如果两种方法计算出的导数是一样的后者很接近,说明反向传播计算是正确的
注意:
检验完之后记得关闭 不然在训练时很慢,梯度检验是帮助验证反向传播是否正确

随机初始化:

初始化目的:在训练前要对theta进行初始化,初始化后就可以通过梯度下降来最小化函数
例如:
1、 全0初始化:在逻辑回归的时候可以,但是在训练网络的时候没有用,输入=输出,因为输入-隐藏单元的权重相等,所有隐藏单元的学习相同
2、 随机初始化:为了解决对称权重问题(1带来的问题)

综上:

训练一个神经网络,首先先将权重随机初始化为一个接近0的范围在[-e,e]之间的数,然后进行反向传播,在进行梯度检验,最后使用梯度下降或者其他优化函数来最小化代价函数J(θ)

神经网络流程

1.选择一种网络架构:
对于输入神经元数量=特征x(i)的维度
对于输出神经元个数:
如果是多分类问题:输出=所要区分的类别个数,记得要把输出y写成向量的形式
隐藏层层数和隐藏层单元个数的选择:隐藏层单元个数相同
2.随机初始化权重
3.正向传播算一下h(x)
4.计算代价函数
5.用反向传播计算代价函数的导数或者偏导数
6.使用反向传播的梯度检测
7.用优化算法共轭梯度,梯度下降法和反向传播相结合去计算θ


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值