深度学习笔记总结(1) 神经网络和深度学习(Neural Networks and Deep Learning)

简介: 针对深度学习基础部分,有必要恶补一些吴恩达的深度学习课程,其实晚上有很多总结和笔记,本系列文章是针对黄海广大佬整理的《深度学习课程笔记(V5.47)》的总结和自己的理解,以便加深印象和复习。

1 第一周 深度学习引言


1.1 深度学习为什么会兴起

  • 数据规模
    数据规模越来越大,远超过传统机器学习算法的学习能力。
  • 计算量
  • 算法的创新
    发展和提出了多样的神经网络,具有强大的计算机能力

    1.png
    image
  • 计算机硬件的发展
    比如GPU、TPU的出现


2 第二周 神经网络的编程基础


2.1 逻辑回归


下面是逻辑回归的输出函数:


2.png


2.2 损失函数


损失函数又叫做误差函数,用来衡量算法的运行情况,Loss function:𝐿(𝑦 , 𝑦).通过这个𝐿称为的损失函数,来衡量预测输出值和实际值有多接近。


逻辑回归用的损失函数为:



3.png

为什么用这个函数作为损失函数?


4.png


2.3 梯度下降算法


梯度下降算法就是为了通过  最小化代价函数(成本函数)J(w,b)来更新参数w和b,说白了就是原先的w和b会使函数更大,需要更新一下,使损失变小。



5.png


逻辑回归的代价函数(成本函数)𝐽(𝑤, 𝑏)是含有两个参数的:



6.png


3 第三周  浅层神经网络


3.1 激活函数


  • sigmoid

sigmoid激活函数曲线像一个字母"S",我们选择它作为激活函数的主要原因是sigmoid的值域为(0,1).因此,它特别适合用于我们必须将概率预测为输出的模型。由于任何事件发生的概率仅存在于0和1的范围之间,因此sigmoid是不错的选择。


softmax函数是一种更通用的逻辑激活函数,用于多类分类。


7.png

  • tanh


tanh看起来和sigmoid差不多。tanh 函数是 sigmoid 的向下平移和伸缩后的结果。对它进行了变形后,穿过了 (0,0)点,并且值域介于+1 和-1 之间,函数图像也是S形。

但是tanh效果总是优于 sigmoid 函数。因为函数值域在-1 和+1 的激活函数,其均值是更接近零均值的。在训练一个算法模型时,如果使用 tanh 函数代替 sigmoid 函数中心化数据,使得数据的平均值更接近 0 而不是 0.5.


8.png

tanh函数主要用于两类之间的分类任务。


重点:sigmoid 函数和 tanh 函数两者共同的缺点是,在𝑧特别大或者特别小的情况下,导数的 梯度或者函数的斜率会变得特别小,最后就会接近于 0,导致降低梯度下降的速度。


  • relu
    ReLU是目前使用最多的激活函数,它几乎用于所有卷积神经网络或深度学习。
    值域是[0,无穷]

9.png

  • leaky relu
    Leaky Relu。 当x是负值时,这个函数的值不是等于 0,而是轻微的倾斜,如图。 这个函数通常比 Relu 激活函数效果要好,尽管在实际中 Leaky ReLu 使用的并不多

    10.png
  • relu和leaky relu的优点: 第一,在𝑧的区间变动很大的情况下,激活函数的导数或者激活函数的斜率都会远大于0,在程序实现就是一个 if-else 语句,而 sigmoid 函数需要进行浮点四则运算,在实践中, 使用 ReLu 激活函数神经网络通常会比使用 sigmoid 或者 tanh 激活函数学习的更快。第二,sigmoid 和 tanh 函数的导数在正负饱和区的梯度都会接近于 0,这会造成梯度弥散,而 Relu 和 Leaky ReLu 函数大于 0 部分都为常熟,不会产生梯度弥散现象。(同时应该注 意到的是,Relu 进入负半区的时候,梯度为 0,神经元此时不会训练,产生所谓的稀疏性, 而 Leaky ReLu 不会有这问题)
  • 激活函数选择的经验:1 . 如果输出是 0、1 值(二分类问题),则输出层选择 sigmoid 函数,然后其它的所  有单 元都选择 Relu 函数。2. 这是很多激活函数的默认选择,如果在隐藏层上不确定使用哪个激活函数,那么通常会 使用 Relu 激活函数。有时,也会使用 tanh 激活函数,但 Relu 的一个优点是:当𝑧是负值的 时候,导数等于 0。
  • 常见激活函数比较

    11.png


3.2 为什么要用激活函数


如果你是用线性激活函数或者叫恒等激励函数,那么神经网络只是把输入线性组合再输 出。

如果你使用 线性激活函数或者没有使用一个激活函数,那么无论你的神经网络有多少层一直在做的只是 计算线性函数,所以不如直接去掉全部隐藏层。


4 第四周 深层神经网络


4.1 参数VS超参数


深度神经网络的超参数指:算法中的学习率(learning rate)、iterations(梯度下降法循环的数量)、L(隐藏层数目)、𝑛𝑙、choice of activation function(激活函数的选择)都需要我们自己来设置,这些数字实际上控制了最后的参数𝑊和𝑏的值,所以它们被称作超参数。

相关文章
|
8天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
125 55
|
17天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
104 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
4天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于yolov4深度学习网络的公共场所人流密度检测系统matlab仿真,带GUI界面
本项目使用 MATLAB 2022a 进行 YOLOv4 算法仿真,实现公共场所人流密度检测。通过卷积神经网络提取图像特征,将图像划分为多个网格进行目标检测和识别,最终计算人流密度。核心程序包括图像和视频读取、处理和显示功能。仿真结果展示了算法的有效性和准确性。
50 31
|
11天前
|
机器学习/深度学习 算法 信息无障碍
基于GoogleNet深度学习网络的手语识别算法matlab仿真
本项目展示了基于GoogleNet的深度学习手语识别算法,使用Matlab2022a实现。通过卷积神经网络(CNN)识别手语手势,如"How are you"、"I am fine"、"I love you"等。核心在于Inception模块,通过多尺度处理和1x1卷积减少计算量,提高效率。项目附带完整代码及操作视频。
|
14天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于深度学习网络的宝石类型识别算法matlab仿真
本项目利用GoogLeNet深度学习网络进行宝石类型识别,实验包括收集多类宝石图像数据集并按7:1:2比例划分。使用Matlab2022a实现算法,提供含中文注释的完整代码及操作视频。GoogLeNet通过其独特的Inception模块,结合数据增强、学习率调整和正则化等优化手段,有效提升了宝石识别的准确性和效率。
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解深度学习中的卷积神经网络(CNN)##
在当今的人工智能领域,深度学习已成为推动技术革新的核心力量之一。其中,卷积神经网络(CNN)作为深度学习的一个重要分支,因其在图像和视频处理方面的卓越性能而备受关注。本文旨在深入探讨CNN的基本原理、结构及其在实际应用中的表现,为读者提供一个全面了解CNN的窗口。 ##
|
18天前
|
机器学习/深度学习 人工智能 算法
深度学习入门:用Python构建你的第一个神经网络
在人工智能的海洋中,深度学习是那艘能够带你远航的船。本文将作为你的航标,引导你搭建第一个神经网络模型,让你领略深度学习的魅力。通过简单直观的语言和实例,我们将一起探索隐藏在数据背后的模式,体验从零开始创造智能系统的快感。准备好了吗?让我们启航吧!
44 3
|
24天前
|
机器学习/深度学习 自然语言处理 算法
深入理解深度学习中的卷积神经网络(CNN)
深入理解深度学习中的卷积神经网络(CNN)
33 1
|
24天前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解深度学习中的卷积神经网络(CNN)
深入理解深度学习中的卷积神经网络(CNN)
|
6天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
44 17