当前位置: 首页 > ds >正文

深度学习入门(2)

深度学习入门(1):

深度学习入门(1)
https://blog.csdn.net/whdehcy/article/details/149645636?fromshare=blogdetail&sharetype=blogdetail&sharerId=149645636&sharerefer=PC&sharesource=whdehcy&sharefrom=from_link

计算梯度
  1. 数值微分 -->计算耗费时间

    在这里插入图片描述

  2. 误差反向传播法 -->快速高效

    1. 链式法则 反向传播

      每从后向前传播一步,求一步的偏导

  3. 梯度确认

    用数值微分来确认误差反向传播法求出的梯度结果是否相同

神经网络训练相关技巧
  1. 更新参数 --最优化

    1. 随机梯度下降SGD

      在这里插入图片描述

    2. Momentum

      α:动量momentum

      在这里插入图片描述

    3. AdaGrad

      学习率衰减learning rate decay:随着训练次数增加 学习率逐渐减小

      AdaGrad为参数的每个元素适当的调整学习率,同时进行训练

      在这里插入图片描述

    4. Adam

      融合了Momentum和AdaGrad,进行超参数的偏置校正

  2. 权重初始值

    1. 将权重初始值设置为0可以吗?

      不可以,那就没有反向更新的意义 那神经网络的不同节点就没有什么意义了

    2. Xavier初始值

      为了使各层的激活值呈现出具有相同广度的分布,推导了合适的权重尺度

      与前一层有n个节点连接时,初始值使用标准差为1/sqrt(n)的分布

    3. ReLU的权重初始值

      使用He初始值

      与前一层有n个节点连接时,初始值使用标准差为sqrt(2/n)的高斯分布

  3. Batch Normalization BN

    BN:调整各层的激活值分布使其拥有适当的广度,以mini_batch为单位,按mini_batch进行归一化

    1. 可以快速训练,增大学习率
    2. 不太依赖初始值
    3. 抑制过拟合 降低Dropout必要性
  4. 正则化

    正则化应对问题:

    1. 过拟合:

      模型参数多,训练数据少

    权值衰减:在训练过程中对大的权重进行惩罚,来抑制过拟合

    Dropout:在训练过程中随机删除隐藏层的神经元

  5. 超参数

    事前需要认为设定的参数

    1. 超参数的验证:

      验证集:验证集用来隔一段epoch计算一下当前模型的一些评价指标,监控训练过程,调整超参数

    2. 超参数的优化:

      设定范围,随机采样,根据评估结果,缩小设定范围,不断重复,缩小到一定程度的时候,选定一个值

      贝叶斯最优化

卷积神经网络 CNN
  1. 卷积层

    卷积操作:相当于图像处理中的 滤波器运算

    卷积核:相当于前面提到的 权重 几个卷积核就有几个输出特征图

    偏置 依旧存在

    填充 padding:可以实现输出特征图和输入特征图的尺寸相同 填充为了调整输出特征图的尺寸

    步幅 stride:卷积核移动的距离

    code: 省略

    但是现在一般都用pytorch、tensorflow

    卷积层一般都直接调用这个函数

    Conv2d()
    
  2. 池化层

    池化:缩小高、长方向上的空间运算

    池化:下采样(减少特征数)

    最大池化:选取最大的特征保留

    平均池化:选取池化计算区域的平均值

    池化 对微小的位置变化具有鲁棒性

    鲁棒性:模型抗干扰的能力,当输入数据存在噪声、缺失、异常值,或者运行环境发生变化时,鲁棒性强的模型不会轻易失效,仍能给出合理的结果;鲁棒性强的模型能识别被部分遮挡、模糊或光照不均的图像

    code:省略

    但是现在一般都用pytorch、tensorflow

    池化层一般都直接调用这个函数

    #pytorch
    MaxPool2d()
    #tensorflow
    MaxPooling2D()
    
  3. CNN

    1. 卷积层 Conv2d

    2. 批标准化层 BatchNormalization

    3. 激活层 Activation

    4. 池化层 MaxPooling2D / MaxPool2d

    5. 舍弃层 Dropout

    6. 拉直层 Flatten

    7. 全连接层 Dense / Linear

      全连接:nn中,相邻层的所有神经元之间都有连接,称为全连接

  4. 可视化

    tensorboard:

    from torch.utils.tensorboard import SummaryWriter
    writer = SummaryWriter('../logs')
    ...
    ...
    writer.add_image('totensor',img_tensor,dataformats='CHW')
    writer.close()
    
  5. 代表性CNN

    1. LeNet
    2. AlexNet
深度学习

深度学习:加深了层的神经网络 通过隐藏层 就可以创建深度网络

  1. 经典深度学习网络

    1. VGG

      由卷积层和池化层构成的基础CNN,特点在于将有权重的层(卷积层/全连接层)叠加至16层(或19层),具备了深度。VGG16 / VGG19

    2. GoogLeNet

      特点在于网络不仅在纵向上有深度,在横向上也有宽度(Inception结构:并行多路径)

    3. ResNet

      更深,特点在于引入了横跨层的快捷结构,间隔跳跃式地连接来加深层

  2. 迁移学习

    使用ImageNet这个数据集学习到的权重数据,称为迁移学习

    将训练完的权重(的一部分)复制到其他神经网络,进行再学习(fine tuning)

    适用于数据集较少的时候、

  3. 应用案例

    1. 目标检测

      从图像中确定目标的位置,并进行分类

      R-CNN 区域-卷积神经网络

    2. 图像分割

      在像素水平上对图像进行分类,对输入图像的所有像素进行分类

      FCN

    3. 图像标题的生成

      NIC 由深层的CNN和处理自然语言的RNN构成

      多模态处理

    4. 图像风格的变换

    5. 图像生成

      GAN 生成对抗网络

      无监督学习

    6. 自动驾驶

      SegNet

    7. Deep Q-Network 强化学习

迁移学习

将训练完的权重(的一部分)复制到其他神经网络,进行再学习(fine tuning)

适用于数据集较少的时候、

  1. 应用案例

    1. 目标检测

      从图像中确定目标的位置,并进行分类

      R-CNN 区域-卷积神经网络

    2. 图像分割

      在像素水平上对图像进行分类,对输入图像的所有像素进行分类

      FCN

    3. 图像标题的生成

      NIC 由深层的CNN和处理自然语言的RNN构成

      多模态处理

    4. 图像风格的变换

    5. 图像生成

      GAN 生成对抗网络

      无监督学习

    6. 自动驾驶

      SegNet

    7. Deep Q-Network 强化学习

      让计算机在摸索试验的过程中自主学习

http://www.xdnf.cn/news/16434.html

相关文章:

  • J2EE模式---数据访问对象模式
  • JavaWeb项目(纯Servlet+JSP+前端三大件)入门(从0开始)
  • 传统框架与减震楼盖框架地震动力响应分析与有限元模拟
  • HashMap的线程安全性 vs ConcurrentHashMap
  • cacti漏洞CVE-2022-46169复现
  • JavaScript 中 let 在循环中的作用域机制解析
  • 智慧校园(智能出入口控制系统,考勤,消费机,电子班牌等)标准化学校建设,加速业务规模发展,满足学校、家长及学生对智能化、便捷化校园管理的需求清单如下
  • MyBatis-Plus极速开发指南
  • Ⅹ—6.计算机二级综合题11---14套
  • Spring 生态创新应用:现代架构与前沿技术实践
  • 2025年-ClickHouse 高性能实时分析数据库(大纲版)
  • GaussDB 数据库架构师修炼(九) 逻辑备份实操
  • 学习笔记《区块链技术与应用》第二天 共识机制
  • ESP32学习笔记_Peripherals(4)——MCPWM基础使用
  • cha的操作
  • LP-MSPM0G3507学习--11ADC之二双通道高速DMA采样
  • 人工智能——插值方法、边缘填充、图像矫正、图像掩膜、ROI切割、图像添加水印、图像噪点消除
  • 九联UNT413AS_晶晨S905L3S芯片_2+8G_安卓9.0_线刷固件包
  • 蓝光中的愧疚
  • MySQL索引背后的B+树奥秘
  • Power Compiler:漏电功耗、内部功耗、切换功耗及其计算方式(NLPM)
  • 网络安全-机遇与挑战
  • 【内网穿透】使用FRP实现内网与公网Linux/Ubuntu服务器穿透项目部署多项目穿透方案
  • 在幸狐RV1106板子上用gcc14.2本地编译安装ssh客户端/服务器、vim编辑器、sl和vsftpd服务器
  • Apache Ranger 权限管理
  • 【优选算法】链表
  • 局域网 IP地址
  • 卡尔曼滤波器噪声方差设置对性能影响的仿真研究
  • 亚马逊广告策略:如何平衡大词和长尾词的效果?
  • JAVA_FIFTEEN_异常