神经网络与深度学习课程学习笔记(第二章)

第二章 神经网络基础

自学Andrew Ng老师的神经网络公开课,作一些笔记,老师讲的非常详细,通俗易懂,感觉不需要做第一章的笔记,所以没有

2.1 二分分类

什么是二分分类问题,用图像中是否有小猫的例子来说明,图像的颜色像素数值是算法的输入,是否有小猫是算法的输出。
在logistic回归和神经网络中需要用到的关键符号,以及它们的表示方法。比如对于所有的训练样本,要写成一个大的矩阵,矩阵的每一列是一个训练样本输入,多个样本就横着写,训练样本的输出也是这样写,每一列是一个训练样本输出。

2.2 logistic回归

Logistic回归是一种监督学习算法,用来输出估计状态集合为0,1的学习结果。
我们的目的是输出估计的0或1,或者说,输出估计值为1的概率,如果采用线性函数:wx+b,无法输出两个状态,则我们使用sigmod函数,从而 y = s ( w x + b ) y=s(wx+b) y=s(wx+b) z = w x + b z=wx+b z=wx+b y = s ( z ) y=s(z) y=s(z)sigmod函数可以在z为非常大时输出1,在z为非常小时输出0。
对于参数,一种写法时theta,theta0表示b,也就是x^0的参数,theta其他值对应w,教程中不使用theta而是使用w和b,更容易理解。

2.3 代价函数

右上角带括号的角标是指第i个样本,统一写法。
如何训练参数w和b,我们的目的是让y/hat与y的差距尽可能小,设计一个损失函数(误差函数),
L ( y ^ , y ) L(\hat y, y) L(y^,y)
这个函数可以是欧几里得距离,但是会在下一步梯度下降法时出现很多局部最优解,从而这里设计
L ( y ^ , y ) = − y l o g y − ( 1 − y ) l o g ( 1 − y ) L(\hat y, y) = -ylogy-(1-y)log(1-y) L(y^,y)=ylogy(1y)log(1y)
这个公式也能做到损失函数的要求,还能够避免梯度下降法的局部最优解。
将所有的训练样本的损失函数求均值后,得到的值为代价函数
J ( w , b ) = 1 m ∑ i L ( y ^ i , y i ) J(w,b)=\frac {1}{m}\sum_i{L(\hat y^{i}, y^{i})} J(w,b)=m1iL(y^i,yi)
损失函数是针对单个训练样本,代价函数是所有训练样本损失函数的均值,用来控制整个模型的训练程度,我们的训练就是针对代价函数。

2.4 梯度下降法

本节就讲了上一节提出的代价函数,如何取得能够使代价函数最小的w和b的值,用到的方法就是梯度下降法。梯度下降法就是重复的更新w和b,每次更新的步长就是 α d w \alpha dw αdw α d b \alpha db αdb α \alpha α是学习率,值越大,步长越大。然后后边还讲了导数和偏导数的概念,还好学过高数,不难。

2.5 导数

这节直接跳过

2.6 更多导数例子

这节就是讲导数会变的情况,讲的是真的细啊

2.7 计算图

介绍了计算图的概念,就是把一个公式拆分成多个子公式,形成一个图的形式。

2.8 计算图的导数计算

这节通过反向计算计算图的导数,分别求代价函数J相对于各个项的导数,引出了反向计算。反向计算是为了得到代价函数中的每一个参数的导数,从而通过导数结合前边的梯度下降法,就可以按梯度的方向去更新参数,最终寻找到代价函数的最小值。

2.9 logistic回归中的梯度下降法

这一节是将前几节的梯度下降法,logistic回归公式,还有反向计算结合起来,举例
z = w 1 x 1 + w 2 x 2 + b z=w^1x^1+w^2x^2+b z=w1x1+w2x2+b

y ^ = a = s i g m o d ( z ) \hat y = a = sigmod(z) y^=a=sigmod(z)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值