码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • CNN、ResNet学习笔记


    学习链接:卷积神经网络(CNN)详解 - 知乎1. 卷积神经网络结构介绍如果用全连接神经网络处理大尺寸图像具有三个明显的缺点: (1)首先将图像展开为向量会丢失空间信息; (2)其次参数过多效率低下,训练困难; (3)同时大量的参数也很快会导致网络过拟…https://zhuanlan.zhihu.com/p/47184529

    一文看懂卷积神经网络-CNN(基本原理+独特价值+实际应用)- 产品经理的人工智能学习库 (easyai.tech)icon-default.png?t=M7J4https://easyai.tech/ai-definition/cnn/CNN笔记:通俗理解卷积神经网络_v_JULY_v的博客-CSDN博客_cnn卷积神经网络icon-default.png?t=M7J4https://blog.csdn.net/v_JULY_v/article/details/51812459【什么是CNN?】浙大大佬教你怎么卷CNN,卷积神经网络CNN从入门到实战,通俗易懂草履虫听了都点头(人工智能、深度学习、机器学习、计算机视觉)_哔哩哔哩_bilibiliicon-default.png?t=M7J4https://www.bilibili.com/video/BV1zF411V7xu?p=1&vd_source=cb9a5b44dbe37f5ca1c843ebd86d44f8

     

    一、CNN(卷积神经网络)

    卷积神经网络_百度百科 (baidu.com)icon-default.png?t=M7J4https://baike.baidu.com/item/%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C

    典型的 CNN 由3个部分构成:

    1. 卷积层
    2. 池化层
    3. 全连接层

    如果简单来描述的话:

    卷积层负责提取图像中的局部特征;池化层用来大幅降低参数量级(降维);全连接层类似传统神经网络的部分,用来输出想要的结果。

    二、何为卷积层和池化层?

    卷积层(Convolutional layer)

    卷积神经网络中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法最佳化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更多层的网路能从低级特征中迭代提取更复杂的特征。

    池化层(Pooling Layer)

    池化(Pooling)是卷积神经网络中另一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效地原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

    池化层通常会分别作用于每个输入的特征并减小其大小。最常用形式的池化层是每隔2个元素从图像划分出2*2的区块,然后对每个区块中的4个数取最大值。这将会减少75%的数据量。

    除了最大池化之外,池化层也可以使用其他池化函数,例如“平均池化”甚至“L2-范数池化”等。过去,平均池化的使用曾经较为广泛,但是最近由于最大池化在实践中的表现更好,平均池化已经不太常用。

    由于池化层过快地减少了数据的大小,文献中的趋势是使用较小的池化滤镜,甚至不再使用池化层。

    卷积层作用总结

    • 提取图像的特征,并且卷积核的权重是可以学习的,由此可以猜测,在高层神经网络中,卷积操作能突破传统滤波器的限制,根据目标函数提取出想要的特征
    • “局部感知,参数共享”的特点大大降低了网络参数,保证了网络的稀疏性,防止过拟合,之所以可以“参数共享”,是因为样本存在局部相关的特性。

    池化层作用总结

    • 特征不变性(feature invariant)

            汇合操作使模型更关注是否存在某些特征而不是特征具体的位置可看作是一种很强的先验,使特征学习包含某种程度自由度,能容忍一些特征微小的位移

    • 特征降维

            由于汇合操作的降采样作用,汇合结果中的一个元素对应于原输入数据的一个子区域(sub-region),因此汇合相当于在空间范围内做了维度约减(spatially dimension reduction),从而使模型可以抽取更广范围的特征同时减小了下一层输入大小,进而减小计算量和参数个数

    •  在一定程度上能防止过拟合的发生

    三、激活函数作用

    激活函数是神经网络模型重要的组成部分

    激活函数(Activation Function)是一种添加到人工神经网络中的函数,旨在帮助网络学习数据中的复杂模式。类似于人类大脑中基于神经元的模型,激活函数最终决定了要发射给下一个神经元的内容。

    在人工神经网络中,一个节点的激活函数定义了该节点在给定的输入或输入集合下的输出。标准的计算机芯片电路可以看作是根据输入得到开(1)或关(0)输出的数字电路激活函数。因此,激活函数是确定神经网络输出的数学方程式

    深度学习十大常用激活函数讲解:深度学习领域最常用的10个激活函数,一文详解数学原理及优缺点|深度学习|梯度_新浪科技_新浪网来源:机器之心icon-default.png?t=M7J4https://finance.sina.com.cn/tech/2021-02-24/doc-ikftssap8455930.shtml(后续专门写一篇深度学习领域常用激活函数)

    四、使用AI Studio使用CNN实现猫狗分类

    步骤

     训练模型

     预测结果

     

  • 相关阅读:
    部署LVS-NAT群集实验
    Redis Cluster搭建(单机搭建)
    [Spring笔记] Spring-33-Advice通知类型
    linux服务器磁盘满了怎么办
    Linux线程的同步与互斥
    【干货】【全网最全】【全网最详细】 javaWeb关于Thymeleaf+SpringBoot 的学习教程,看这一篇就够了。
    【MATLAB教程案例51】传统神经网络学习——使用matlab神经网络工具箱实现BP、PNN、GRNN神经网络等
    【axios网络请求库】认识Axios库;axios发送请求、创建实例、创建拦截器、封装请求
    大模型从入门到应用——LangChain:代理(Agents)-[计划与执行]
    【Windows Server 2019】企业虚拟专用网络服务的配置和管理(下)
  • 原文地址:https://blog.csdn.net/weixin_61587867/article/details/126559212
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号