阅读 74

神经网络和深度学习(Neural Networks and Deep Learning)

@[toc]

1.1欢迎

1.2 什么是神经网络

最简单的神经网络

在这里插入图片描述

1.3 用神经网络进行监督学习

CNN:适合于图像数据

RNN:适合(一维)时间序列数据

structured data结构化数据与unstructured data非结构化数据

1.4 为什么深度学习会兴起?

data(big data)

computer(CPU、GPU)

algorithms

好的算法的提升和计算机性能的改进都是为了计算速度的提升,使得程序可以在可接受的时间内完成。而大数据更大的作用在于得到结果的准确性的提升。

activation function激活函数

sigmoid函数:有部分区域梯度趋于0,参数变化会很慢,机器学习会很慢

ReLU函数:rectified linear unit 修正线性单元,可以解决上述问题

idea、code和experiment的循环

2.1 二分分类

logistic回归:二分分类算法

图片的矩阵表示:RGB通道 参数

forward propagation正向传播

backward propagation反向传播

2.2 logistic回归

二分分类问题,所以希望输出值是介于0到1之间的值

在这里插入图片描述

2.3 logistic回归损失函数 logistic regression cost function

loss function/error function:

损失函数应用于单个样本,成本函数是所有样本的总和。

表示的是1到m项损失函数的平均

2.4 梯度下降法 gradient descent

2.5 导数

2.6 更多导数的例子

2.7计算图 computation graph

2.8 使用计算图求导

链式求导法则

2.9 logistic回归中的梯度下降法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PmoTCKpQ-1625930799955)(../AppData/Roaming/Typora/typora-user-images/image-20210709112838403.png)]

2.10 m个样本的梯度下降

在这里插入图片描述

2.11 向量化 vectorization

2.12 向量化的更多例子

python的numpy库

np.dot() np.exp() np.log() np.zeros() np.abs() np.maximum()

2.13 向量化logistic回归

numpy的广播函数 broadcasting

import numpy as np
z = np.dot(w.T,X)+b  #向量加实数b,b会自动扩展成一个一维向量

2.14 向量化logistic回归的梯度输出

2.15 python中的广播

2.16 python numpy向量的说明

a = np.random.randn(5)
a
array([-1.29892536,  0.63302139,  1.49281709,  0.90560309,  1.3649011 ])

a,shape
(5,)
a.reshape(5,1)
array([[-1.29892536],
       [ 0.63302139],
       [ 1.49281709],
       [ 0.90560309],
       [ 1.3649011 ]])

b = np.random.randn(5,1)
b
array([[-0.50337928],
       [ 0.34076192],
       [ 0.16021539],
       [ 0.4894436 ],
       [ 0.4527971 ]])
b.shape
(5,1)

2.17 Jupyter_ipython的快速指南

shift+Enter 运行一段代码

cell run cell把文本语言变正常

2.18 (选修)logistic损失函数的解释

最小化损失函数就是最大化

最大似然估计maximum likelihood function

3.1神经网络概览

3.2 神经网络表示

一般标准的话不把输入层input layer看做标准的层

所以一个三层神经网络一般叫做标准的双层神经网络

3.3 计算神经网络的输出

[] : 方括号代表同一样本的不同层layer

():圆括号代表不同样本的同一层layer

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.4 多个样本的向量化

3.5 向量化实现的解释

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ycUwobxo-1625930799961)(../AppData/Roaming/Typora/typora-user-images/image-20210709225154841.png)]

3.6激活函数

tanh激活函数几乎总比sigma函数表现更好,使得数据的平均值接近0,有标准化的效果。

但是输出层要求值为0或1,所以输出层建议用sigma函数。

选择激活函数的经验法则

sigma函数:二元分类,输出值要求是0或者1(输出层)

ReLU函数:其他单元都用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i3C8Xbi5-1625930799962)(../AppData/Roaming/Typora/typora-user-images/image-20210709230639393.png)]

3.7 为什么需要激活函数?

可以理解成激活函数实际上是把输出值控制在一定的范围内。

3.8 激活函数的导数

sigma函数

tanh函数

ReLU函数

3.9 神经网络的梯度下降法

3.10 直观理解反向传播

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ObeON5ay-1625930799963)(../AppData/Roaming/Typora/typora-user-images/image-20210710153249133.png)]

3.11 随机初始化

W初始化不能选择0,b可以

初始化选择的参数应该小一些,不然会减慢学习速度。

4.1 深层神经网络

4.2 前向和反向传播

4.3 深层网络中的前向传播

4.4 核对矩阵的维数

样本中各个量的维度

4.5 为什么使用深层表示

4.6 搭建深层网络神经块

4.7 参数VS超参数

W、b:参数

影响W、b的参数叫做超参数

4.8 这和大脑有什么关系?

作者:Cache_wood

原文链接:https://www.jianshu.com/p/3e9d0201574e

文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐