当前位置:   article > 正文

吴恩达deepAI深度学习第一周课程学习记录

deepai

吴恩达deepAI深度学习第一周课程学习记录

一.loss function & cost function

loss function:一个样本的损失

cost function:将所有样本的值加在一起

logistic Regression中一般直接使用带log 函数的,不使用均方误差

均方误差容易使得结果变得不收敛(convent function)。

二.导数与梯度下降

slope (斜率)= height / width = derivatives

三.计算图

对应tensorflow中的graph的概念

应用chain rule 链式法则进行求导。

四. 二分算法Back propagation

https://www.jianshu.com/p/498f7bf488a2

  1. 基础知识

  1. 利用chain rules 进行一步步求导
  2. 逻辑回归中的梯度下降法

对单个样本而言,逻辑回归Loss function表达式:
z = w T x + b z=w^Tx+b z=wTx+b

y = a = σ ( z ) y=a=σ(z) y=a=σ(z)

L ( a , y ) = − ( y l o g ( a ) + ( 1 − y ) l o g ( 1 − a ) ) L(a,y)=−(ylog(a)+(1−y)log(1−a)) L(a,y)=(ylog(a)+(1y)log(1a))

反向传播过程:

1552875282671

前面过程的da、dz求导:

五.激活函数

不要用sigmoid(),除了对与output layer

tanh(z) 比sigmod(z) 函数好

relu() 二分输出比较好

leaky Relu()一般比较好,但是不常用

使用激活函数的原因是因为:这样才会变成非线性。线性的函数意义不大。

六.向量化

对m个样本来说,其Cost function表达式如下:

Cost function 关于w和b的偏导数可以写成所有样本点偏导数和的平均形式:

七.神经网络的梯度下降法

以本节中的浅层神经网络为例,我们给出神经网络的梯度下降法的公式。

八.随机化参数

注意:w不能随机化为0,这样会让神经网络每一次层中对称的神经元变为一样的。

原因:由于两个隐藏神经元的参数设置为相同的大小,那么两个隐藏神经元对输出单元的影响也是相同的,通过反向梯度下降去进行计算的时候,会得到同样的梯度大小,所以在经过多次迭代后,两个隐藏层单位仍然是对称的。无论设置多少个隐藏单元,其最终的影响都是相同的,那么多个隐藏神经元就没有了意义。

W = np.random.rand((2,2))* 0.01
b = np.zero((2,1))
  • 1
  • 2

给其乘以0.01是为了在使用sigmod函数时方便训练,在0处的导数大,训练速度快。

tanh可以不乘。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/100194
推荐阅读
相关标签
  

闽ICP备14008679号