深度学习笔记(5) 深层神经网络

  • 1. 深层神经网络
  • 2. 前向传播和反向传播
  • 3. 核对矩阵的维数
  • 4. 参数和超参数
  • 5. 深度学习和大脑的关联性

1. 深层神经网络


当算神经网络的层数时,不算输入层,只算隐藏层和输出层
上图是一个四层的神经网络,有三个隐藏层

L 表示层数,上图:L = 4
输入层的索引为 “0”
第一个隐藏层 n[1] = 5, 表示有5个隐藏神经元
在 lll 层的输入a [l-1] 用 w[l],b[l] 作为权重得到z[l] ,z[l] 再用激活函数 g[l] 得到激活后结果 a[l] ,并且为lll +1层的输入
输入层,x 同样也是0层的激活函数,所以x = a[0] , n[0] = nx = 3


2. 前向传播和反向传播


前向传播的步骤:权重后的激活:输入 a[l-1] ,输出是 a[l] ,缓存为 z[l]
从实现的角度来说,可以缓存下w[l] 和b[l],这样更容易在不同的环节中调用函数

  • 前向传播的步骤:
  • 向量化实现过程:

前向传播需要喂入A[0] 也就是X,a[0] 对应于一个训练样本的输入特征
而A[0] 对应整个训练样本的输入特征

反向传播的步骤:导数的逆推:输入为dadada[l] ,输出为 dadada[l-1] ,dwdwdw[l] ,dbdbdb[l]

  • 反向传播的步骤:
  • 向量化实现过程:

3. 核对矩阵的维数

实现深度神经网络的时候,常用的检查代码是否有错的方法:拿出一张纸过一遍算法中矩阵的维数

  • w的维度:(下一层的维数,前一层的维数),即 w[l] : (n[l] ,n[l-1] )
    但在实现的过程:w的维度:(前一层的维数,下一层的维数)即 w[l] : (n[l-1] , n[l]),因为会用w.T去运算

  • b的维度:(下一层的维数,1),即 b[l] : (n[l] , 1)

  • z[l] ,a[l] 的维度: (n[l] , 1)

向量化后:
Z[l] 可以看成由每一个单独的Z[l] 叠加而得到,Z[l] = (z[l][1],z[l][2],z[l][3] ,…,z[l][m])
m为训练集大小,所以Z[l] 的维度不再是(n[l] ,1),而是(n[l] ,m)
相同的,A[l] :(n[l] ,m),A[0] = X = (n[l] ,m)


4. 参数和超参数

比如算法中的

  • learning rate aaa(学习率)

  • iterations(梯度下降法循环的数量)

  • L(隐藏层数目)

  • n[l](隐藏层单元数目)

  • choice of activation function(激活函数的选择)

都需要设置,这些数字实际上控制了最后的参数W和b的值,所以它们被称作超参数
之后也会介绍其他的超参数,如momentum、mini batch size、regularization parameters等等

寻找超参数的最优值:

走Idea—Code—Experiment—Idea这个循环
尝试各种不同的参数,实现模型并观察是否成功,然后再迭代

可能尝试不同的 aaa 并观察 损失函数J 这么变了,试试一组值,然后可能损失函数发生变化
这个 aaa 值会加快学习过程,并且收敛在更低的损失函数值上(箭头标识),就用这个 aaa 值了


5. 深度学习和大脑的关联性


一个神经网络的逻辑单元可以看成是对一个生物神经元的过度简化,但迄今为止连神经科学家都很难解释究竟一个神经元能做什么,它可能是极其复杂的;
它的一些功能可能真的类似logistic回归的运算,但单个神经元到底在做什么目前还没有人能够真正可以解释。
大脑中的神经元是怎么学习的,至今这仍是一个谜之过程。


参考:

《神经网络和深度学习》视频课程


相关推荐:

深度学习笔记(4) 浅层神经网络
深度学习笔记(3) 向量化逻辑回归
深度学习笔记(2) 神经网络基础
深度学习笔记(1) 深度学习简介


谢谢!

深度学习笔记(5) 深层神经网络相关推荐

  1. 深度学习笔记:卷积神经网络的可视化--卷积核本征模式

    目录 1. 前言 2. 代码实验 2.1 加载模型 2.2 构造返回中间层激活输出的模型 2.3 目标函数 2.4 通过随机梯度上升最大化损失 2.5 生成滤波器模式可视化图像 2.6 将多维数组变换 ...

  2. 深度学习笔记:卷积神经网络的Tensorflow实现

    文章出处:深度学习笔记11:利用numpy搭建一个卷积神经网络 免费视频课程:Hellobi Live | 从数据分析师到机器学习(深度学习)工程师的进阶之路 在上一讲中,我们学习了如何利用 nump ...

  3. 【深度学习笔记1】神经网络的搭建与简单应用

    目录 推荐阅读 前言 神经网络与深度学习 使用Tensorflow搭建神经网络 环境搭建和导包遇到的问题: 问题1:Duplicate registrations for type 'optimize ...

  4. 吴恩达深度学习 | (12) 改善深层神经网络专项课程第三周学习笔记

    课程视频 第三周PPT汇总 吴恩达深度学习专项课程共分为五个部分,本篇博客将介绍第二部分改善深层神经网络专项的第三周课程:超参数调试.Batch Normalization和深度学习框架. 目录 1. ...

  5. 1.3)深度学习笔记------浅层神经网络

    目录 1)Neural Network Overview 2)Neural Network Representation 3)Computing a Neural Network's Output(重 ...

  6. 吴恩达【神经网络和深度学习】Week4——深层神经网络

    文章目录 Deep Neural Network 1.Deep L-layer Neural Network 2.Forward Propagation in a Deep Network 3.Get ...

  7. 吴恩达Coursera深度学习课程 course1-week4 深层神经网络 作业

    P0 前言 第一门课 : 神经网络与深度学习 第四周 : Deep Neural Networks(深层神经网络) 主要知识点 : 深度神经网络.DNN的前向和反向传播(Forward & B ...

  8. 吴恩达深度学习笔记- lesson4 卷积神经网络

    文章目录 Week 1 卷积神经网络基础 4.1.1 计算机视觉(Computer vision) 4.1.2 边缘检测示例(Edge detection example) 4.1.3 更多边缘检测内 ...

  9. 吴恩达深度学习 —— 4.1 深层神经网络

    什么是深度学习网络,我们已经学过了逻辑回归,并且见过了单隐层神经网络,下图是一个双隐层神经网络,以及一个五隐层的神经网络的例子. 我们说逻辑回归是一个浅层模型,浅层或是深层是一个程度的问题,要记住当我 ...

  10. 深度学习总结:深层神经网络(tensorflow实战)

    tensorflow实战Google深度学习框架 人工智能.机器学习.深度学习关系图 人工智能:让计算机掌握人类看起来非常直观的常识,如自然语言理解.图像识别.语音识别等等 如何数字化表达现实世界中的 ...

最新文章

  1. 用户进程与内核进程通信netlink实例
  2. Docker之Dockerfile 指令详解
  3. wpf page 界面渲染完成后执行自动操作_Vue项目骨架屏自动生成方案(dps)
  4. 第一百二十三期:免费在线制图神器!不上水印支持中文版,GitHub标星已破1万2
  5. (案例五)将数据保存在MongoDB中
  6. 支持js代码的博客有哪些?
  7. 电子围栏原理解析---原理
  8. 离开职场3年的宝妈,是该重回职场,还是自己创业呢?
  9. python dataframe去除重复项_python - Pandas DataFrame处理查找DataFrame中的重复项 - 堆栈内存溢出...
  10. C语言用0832输出正弦波,[求助]关于使用DAC0832输出正弦波的汇编算法【恢复】
  11. python解析本地HTML文件
  12. 基于DFA算法的敏感词过滤的go语言实现
  13. SpringMvc生成Excel和PDF
  14. 关于菜鸟的圆通电子面单打印
  15. 技术分享 | DNS解析不生效的原因及解决方法
  16. 身为一个SEO/SEM/运营专员,一天的工作是怎样的?
  17. MC服务器启动脚本写法
  18. 照片背景底色更换工具(思路简介及源码)
  19. EasyGBS对接宇视SDK,多次点击录像回放出现崩溃是什么原因?
  20. 编写Java程序,使用 Socket类模拟用户加入 QQ 群时,QQ 小冰发送欢迎消息的场景(用户充当客户端,QQ 小冰充当服务端)

热门文章

  1. javascript 类继承
  2. Linux网络服务-Web Service之【apache的功能、安装、配置文件介绍以及实验实例】(三)...
  3. 阿里云服务器从购买,备案,安装部署中遇到的一些坑
  4. python tuple类型和list_Python 入门(四)List和Tuple类型
  5. 如何在Qt中使用自定义数据类型
  6. Java过滤器详细文档,简介,实例,应用
  7. Linux软件管理之yum
  8. linux基础:7、基础命令介绍(2)
  9. 图像算法移植到DSP及其优化步骤
  10. PHP中exec、system等函数调用linux命令问题