吴恩达《深度学习》第一门课(3)浅层神经网络

简介: 3.1神经网络概述(1)神经网络每个单元相当于一个逻辑回归,神经网络由逻辑回归的堆叠起来。下图是网络结构:针对网络结构进行计算:1.第一层的正向传播2.第一层的反向传播3.第二层的反向传播(正向只要把微分符号去掉即可)3.

3.1神经网络概述

(1)神经网络每个单元相当于一个逻辑回归,神经网络由逻辑回归的堆叠起来。下图是网络结构:

针对网络结构进行计算:

1.第一层的正向传播

2.第一层的反向传播

3.第二层的反向传播(正向只要把微分符号去掉即可)

3.2神经网络的表示

(1)神经网络各层分别较输入层、掩藏层和输出层,其中说一个网络有几层时一般不包括输入层,如下图是一个两层的网络:

(2)a[0]chang也常用来表示输入特征,a[1]b表示第一层的输出,如第一层(不算输入层)有四个神经元,其输出为(用a表示是因为activation激活函数的缩写):

(3)关于W[m],b[m]是和第m层输出有关的系数,W的维度(第m层单元数,上一层单元数),b的维度为(第m层单元数,1)。

3.3计算一个神经元网络的输出

(1)神经结构如下:

 

(2)每一个神经元做的计算:

(2)向量化表示下面四个式子:

(3)一个输入样本,神经网络的计算

3.4多样本向量化

(1)多样本的计算示意图(a[2](1)前面的2表示第二层,后面的1表示第一个样本):

(2)向量化:

(3)以矩阵A为例,从水平上看,每一列对应着不同的训练样本;从垂直方向看,每一行对应着同一层的不同神经元。

3.5向量化实现的解释

(1)矩阵乘列向量得到列向量:

(2)上面式子中省略了b[1],b[1]的维度与Z[1]相同,再加上python具有广播的功能,所以可以使得向量b与每一列相加。

3.6激活函数

(1)sigmoid激活函数:除了输出层是一个二分类问题基本不会用它。存在梯度消失问题,其函数表达式如下:

(2)tanh激活函数:tanh是非常优秀的,可以中心化数据(-1到1),几乎适合所以场合。存在梯度消失问题,其函数表达式如下:

(3)ReLU激活函数:最常用的默认函数,如果不确定用哪个激活函数,就是用ReLU(函数表达式为a=max(0,z))或则Leaky ReLU(函数表达式为a=max(0.01z,z),0.01参数可改)。ReLU在负半区梯度为零,产生所谓的稀疏性,但由于有足够多的掩藏层是z大于0,所以学习过程还是非常的快。

(4)下面的四种激活函数的图像:

3.7为什么需要非线性激活函数

(1)如果没有非线性激活函数,那么无论网络有多少层,输出始终是输入的线性组合,与一层网络毫无区别。举例如下:

(2)有时候输出可能会用到线性激活函数。

3.8激活函数的导数

 

3.9神经网络的梯度下降

(1)正向传播四个式子:

(2)反向传播六个式子(下面公式3.3.2中应该是dz[2]):

3.10(选修)直观理解反向传播

(1)主要推导过程:

3.11随机初始化

(1)W不能初始化为零否则一层中每个单元都做相同的计算,和一个单元没什么区别,b可以初始化为零。可按照如下方式初始化(0.01的作用是时输出不会太大,太大由由sigmoid、tanh激活函数是将会导致梯度特别小):

相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
135 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
2月前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
356 55
|
15天前
|
机器学习/深度学习 数据可视化 算法
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
神经常微分方程(Neural ODEs)是深度学习领域的创新模型,将神经网络的离散变换扩展为连续时间动力系统。本文基于Torchdyn库介绍Neural ODE的实现与训练方法,涵盖数据集构建、模型构建、基于PyTorch Lightning的训练及实验结果可视化等内容。Torchdyn支持多种数值求解算法和高级特性,适用于生成模型、时间序列分析等领域。
162 77
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
|
7天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
51 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
1月前
|
机器学习/深度学习 监控 算法
基于yolov4深度学习网络的排队人数统计系统matlab仿真,带GUI界面
本项目基于YOLOv4深度学习网络,利用MATLAB 2022a实现排队人数统计的算法仿真。通过先进的计算机视觉技术,系统能自动、准确地检测和统计监控画面中的人数,适用于银行、车站等场景,优化资源分配和服务管理。核心程序包含多个回调函数,用于处理用户输入及界面交互,确保系统的高效运行。仿真结果无水印,操作步骤详见配套视频。
54 18
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于yolov4深度学习网络的公共场所人流密度检测系统matlab仿真,带GUI界面
本项目使用 MATLAB 2022a 进行 YOLOv4 算法仿真,实现公共场所人流密度检测。通过卷积神经网络提取图像特征,将图像划分为多个网格进行目标检测和识别,最终计算人流密度。核心程序包括图像和视频读取、处理和显示功能。仿真结果展示了算法的有效性和准确性。
88 31
|
2月前
|
机器学习/深度学习 算法 信息无障碍
基于GoogleNet深度学习网络的手语识别算法matlab仿真
本项目展示了基于GoogleNet的深度学习手语识别算法,使用Matlab2022a实现。通过卷积神经网络(CNN)识别手语手势,如"How are you"、"I am fine"、"I love you"等。核心在于Inception模块,通过多尺度处理和1x1卷积减少计算量,提高效率。项目附带完整代码及操作视频。
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于深度学习网络的宝石类型识别算法matlab仿真
本项目利用GoogLeNet深度学习网络进行宝石类型识别,实验包括收集多类宝石图像数据集并按7:1:2比例划分。使用Matlab2022a实现算法,提供含中文注释的完整代码及操作视频。GoogLeNet通过其独特的Inception模块,结合数据增强、学习率调整和正则化等优化手段,有效提升了宝石识别的准确性和效率。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解深度学习中的卷积神经网络(CNN)##
在当今的人工智能领域,深度学习已成为推动技术革新的核心力量之一。其中,卷积神经网络(CNN)作为深度学习的一个重要分支,因其在图像和视频处理方面的卓越性能而备受关注。本文旨在深入探讨CNN的基本原理、结构及其在实际应用中的表现,为读者提供一个全面了解CNN的窗口。 ##
|
2月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
86 17

热门文章

最新文章