码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 神经网络中卷积和池化的区别


    1、什么叫卷积?

    卷积层是用一个固定大小的矩形区去席卷原始数据,将原始数据分成一个个和卷积核大小相同的小块,然后将这些小块和卷积核相乘输出一个卷积值(注意这里是一个单独的值,不再是矩阵了)。

    卷积的本质就是用卷积核的参数来提取原始数据的特征,通过矩阵点乘的运算,提取出和卷积核特征一致的值,如果卷积层有多个卷积核,则神经网络会自动学习卷积核的参数值,使得每个卷积核代表一个特征。

    卷积首先要定义一个卷积核,卷积核通常是一个正方形,长宽就是卷积核的尺寸,比如(2,2)的卷积核,表示用:

    [W11  W12

    W21 W22]

    大小的卷积核来对原始数据进行卷积。卷积核的权重参数w11-w22就是该卷积核的特征值,卷积结果是输入数据和卷积核的内积和全加运算。

    首先我们需要知道什么是卷积计算,它其实是一种简单数学运算,有两个步骤:一个是矩阵内积乘法,另一个是将内积乘法的结果进行全加。

    (1)矩阵内积乘法

    矩阵的内积乘法非常简单,就是把两个相乘的矩阵,相同位置的元素进行乘法运算,这个时候会得到一个新的矩阵(在这里我们需要注意一下,卷积是在作矩阵内积乘法,而不是矩阵乘法)。

    (2)全加计算

    这个新矩阵的全部值会进行相加,然后会得到一个值,这个值才是卷积运算的结果。

    2、什么是池化

    池化(Pooling):也称为欠采样或下采样。主要用于特征降维,压缩数据和参数的数量,减小过拟合,同时提高模型的容错性。比如以(2,2)作为一个池化单位,其含义就是每次将2*2=4个特征值根据池化算法合并成一个特征值,常用的池化算法有以下几种:

    1. 平均值:取4个特征值的平均值作为新的特征值。
    2. 最大值:取4个特征值中最大值作为新的特征值。
    3. 最小值:取4个特征值中最小值作为新的特征值。

    3、特征图像与卷积核

    对于实际的卷积过程中,它一方面有输入图像,这些输入图像被称作是特征图像(注:卷积神经网络中,原始的输入是真实的图像,经过卷积后会生成特征图像),另一方面还需要有卷积核。

    卷积核的值是人为设定的,它是可以调节的,在实际的卷积神经网络中,卷积核的值就是网络的参数。对卷积网络进行训练,就是在调节这些卷积核心的参数。在实际中一般不会用太大的卷积核,常见的卷积核大小有3*3,5*5,1*1的大小。

    特征图像和卷积核都是以矩阵的形式存在,因此它们可以进行卷积计算。卷积计算的输入不仅可以是图像,还可以是其它的二维矩阵信息(当然还有一维和三维的卷积,这里就不多介绍了)。卷积核首先会对特征图像的第一个区域进行卷积运算,这个卷积计算的结果,会作为输出特征图像上的一个点。将像素图中相连的4个像素提取成了一个像素,通俗一点是什么意思呢?读者可以好好体会一下:将一个小区域的图像中的特征提取成用一个值来表示。

    总结:

    (1)卷积是从一小块图像区域中提取出特征值来表示这一小块区域的内在特征(或者说内在含义)。

    (2)池化是将相临的多个特征用一个特征来代替,压缩特征维度。

    卷积和池化是图像人工智能应用场景中绕不过去的两种基本处理过程,所以我们还是先了解他俩的内在含义吧。

    转载于:什么是卷积和池化-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/choushi5845/article/details/100747117?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-100747117-blog-79964306.235%5Ev38%5Epc_relevant_sort_base1&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-100747117-blog-79964306.235%5Ev38%5Epc_relevant_sort_base1&utm_relevant_index=1

  • 相关阅读:
    【微信开发第二章】SpringBoot实现微信公众号普通消息和模板消息回复
    PyTorch概述(八)---ADAM
    生成模型(自编码器、VAE、GAN)
    C#调用C++类,托管C++方式实现(创建C++ CLR dll项目)
    python保存h264格式视频(linux和windows)
    SQL SERVER数据库1——创建数据库
    Find My婴儿车|苹果Find My技术与婴儿车结合,智能防丢,全球定位
    新建excel出现由于找不到vcruntime140_1.dll,无法继续执行代码。系统错误
    【Flink源码】JobManager启动流程
    vue的组件使用
  • 原文地址:https://blog.csdn.net/u014035838/article/details/133748902
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | 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号