热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

吴恩达DeepLearning.ai笔记(1-4)--深层神经网络

神经网络和深度学习—深层神经网络1.深度网络中的前向传播2.核对矩阵的维度DNN结构示意图如图所示:对于第L层神经网络,单个样本其各个参数的矩阵维度为:

神经网络和深度学习—深层神经网络

1.深度网络中的前向传播


2. 核对矩阵的维度

DNN结构示意图如图所示:


对于第L层神经网络,单个样本其各个参数的矩阵维度为:

  • W[l](n[l],n[l1])
  • b[l](n[l],1)
  • dW[l](n[l],n[l1])
  • db[l](n[l],1)
  • Z[l](n[l],1)
  • A[l]=Z[l](n[l],1)

3. 为什么使用深层表示

人脸识别和语音识别:


     对于人脸识别,神经网络的第一层从原始图片中提取人脸的轮廓和边缘,每个神经元学习到不同边缘的信息;网络的第二层将第一层学得的边缘信息组合起来,形成人脸的一些局部的特征,例如眼睛、嘴巴等;后面的几层逐步将上一层的特征组合起来,形成人脸的模样。随着神经网络层数的增加,特征也从原来的边缘逐步扩展为人脸的整体,由整体到局部,由简单到复杂。层数越多,那么模型学习的效果也就越精确。

     对于语音识别,第一层神经网络可以学习到语言发音的一些音调,后面更深层次的网络可以检测到基本的音素,再到单词信息,逐渐加深可以学到短语、句子。

     所以从上面的两个例子可以看出随着神经网络的深度加深,模型能学习到更加复杂的问题,功能也更加强大。

电路逻辑计算:


假定计算异或逻辑输出:

y=x1x2x3xn

对于该运算,若果使用深度神经网络,每层将前一层的相邻的两单元进行异或,最后到一个输出,此时整个网络的层数为一个树形的形状,网络的深度为O(log2(n)),共使用的神经元的个数为:


即输入个数为n,输出个数为n-1。

但是如果不使用深层网络,仅仅使用单隐层的网络(如右图所示),需要的神经元个数为2n1 个 。同样的问题,但是深层网络要比浅层网络所需要的神经元个数要少得多。

4. 前向和反向传播

首先给定DNN的一些参数:





4. 参数和超参数

参数:

参数即是我们在过程中想要模型学习到的信息,W[l]b[l]

超参数:

超参数即为控制参数的输出值的一些网络信息,也就是超参数的改变会导致最终得到的参数W[l]b[l]的改变。

举例:

  • 学习速率:α
  • 迭代次数:N
  • 隐藏层的层数:L
  • 每一层的神经元个数:n[1]n[2],
  • 激活函数g(z)的选择


推荐阅读
author-avatar
浅笑你的妩媚
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有