卷积神经网络(一)
目录
一.卷积神经网络的组成
二.卷积层
目的:
参数:
计算公式
卷积运算过程
三.padding-零填充
1.Valid and Same卷积
2.奇数维度的过滤器
四.stride步长
五.多通道卷积
1.多卷积核(多个Filter)
六.卷积总结
七.池化层(Pooling)
八.全连接层
都看到这里了,点个赞把!!!!
对于普通的神经网络,假如一张图片像素是1000*1000*3的格式,建立一层10个神经元的神经网络,那么计算次数就为1000*1000*3*10,三千万次的计算才能处理一张图片,而且害很难达到理想的效果,更别说建立多层的神经网络了。所以引入了卷积神经网络
一.卷积神经网络的组成
卷积神经网络由一个或多个卷积层,池化层以及全连接层组成。以其他深度学习相比,卷积神经网络在图像等方面有更好的结果。卷积神经网络可以使用反向传播算法进行训练。
卷积神经网络的整体结构为:
输入层:输入图像等信息
卷积层:用来提取图像的底层特征
池化层:防止过拟合,将数据维度减小
全连接层:汇总卷积层和池化层得到的图像的底层特征和信息
输出层:根据全连接层的信息得到概率最大的结果
二.卷积层
目的:
卷积运算的目的是提取输入的不同特征,某些卷积层可能只能提取一些低级的特征,如边缘,线条和角度层级,更多层的网络能从低级特征中迭代提取更复杂的特征
参数:
size:卷积核/过滤器大小,选择有:1*1 , 3*3 , 5*5
padding:零填充,Valid与Same
stride:步长,通常为1
卷积核:比需要提取特征的图片大小要小或者相等,卷积核通过在输入的图片中按照步长不停的一定,每一次移动都进行一次的乘积求和,作为此位置的值
计算公式
计算后得到一个新的矩阵,这个矩阵也被称为特征图
卷积运算过程
对于一张5*5的单通道图片,使用一个3*3大小的卷积核运算得到一个3*3的运算结果
卷积结束后,图片变小了,假设N为图片大小,F为卷积核大小,就相当于
N-F+1=5-3+1=3
如果我们换一个卷积核大小或者加入更多的卷积层之后,图片可能最后就变成1*1大小。而这样是不行的,对于原始图片当中的边源像素来说,只计算了一次,对于中间的像素会有许多次过滤器计算,这样导致了边缘信息丢失。
三.padding-零填充
零填充:在图片的最外层加上若干层0值,一层则记作p=1
为什么要增加0呢,因为0在权重乘积运算中对最终结果不造成影响,也避免了图片增加了额外的干扰信息
这张图片中,还是移动一个像素,并且外面加一层0.
5+2*p-3+1=5
假设为两层
5+2*2-3+1=7,这样得到的图片大小比之前的图片大小害大,所以对于0的填充会有一些选择
1.Valid and Same卷积
为了避免上述情况,一般选择Same这种填充的方法
Valid:不填充,也就是图片最终大小:(N-F+1)*(N-F+1)
Same:添加两层:(N+2p-F+1)*(N+2p-F+1),也就是P=F-1/2
2.奇数维度的过滤器
通过上面式子,如果F不是奇数,那么最终结果就会出现0.5的情况,这样填充就不均匀,所以卷积一般都是使用奇数维度大小
四.stride步长
对于上面的都是步长为1的结果,那么步长不为11的呢
对于一个步长的公式
N+2P-F+1=6+0-3+1=4
对于步长为2的结果
(N+2p-F)/2+1=1.5+1=2.5,不是整数,乡下取整为2,
所以对于任意步长,大小为N,过滤器大小F,步长为S
((N+2P−F)/S+1)*((N+2P−F)/S+1)
五.多通道卷积
当输入有多个通道(channel)时,例如彩色图片就有3通道。卷积核需要拥有相同的通道数,每个卷积核通道与输入层的对应通道进行卷积,将每个通道的卷积结果通过按位相加得到最终的结果
1.多卷积核(多个Filter)
当有多个卷积核时,可以学习到多种不同的特征,对应产生包含多个channel的Feature Map,如果有两个filter,那么output就有两个通道。这里的多少个卷积核也可以理解位多个神经元。相当于外面把多个功能的卷积核的计算结果放在一起,能检测到图片中不同的特征(边缘检测)
六.卷积总结
假设外面有10个Filter,每个Filter3*3*3,并且只有一层卷积
假设有一张图片1000*1000*3,需要多大的零填充
((N+2P-F+1) /S+1)=N,解得P=1
卷积层相当于特征提取的角色,但是没有减少图片的特征数量,在最后的全连接依旧面对大量的计算,所以需要池化层进行特征的减少
七.池化层(Pooling)
从上面的卷积层可以看到,有几个卷积核就有多少个特征图,而当特征图特别多的时候,就意味着外面得到的特征也非常多,那么外面就可以用到池化层了。
池化层主要对卷积层学习到的特征图进行亚采样处理,主要有:
最大池化:Max Pooling,取窗口的最大值作为输出
平均池化:Avg Pooling,取窗口内的所有值的均值作为输出
意义在于:
降低了后续网络层的输入维度,缩减模型大小,提高计算速度,提高了Feature Map的鲁棒性,防止过拟合
对于一个输入的图片,外面使用区域大小为2 2,步长为2的参数进行求最大值操作,同样池化也有一组参数,f,s得到2 2的大小。当然如果外面调整这个超参数,比如是3*3,那么结果就不一样了,通常选择默认都是f=2*2,s=2
池化超参数特点,不需要学习,不像卷积通过下降进行更新。
八.全连接层
卷积层+激活层+池化层可以看成是CNN的特征学习/特征提取层,而学习到的特征(Feature Map)最终应用于模型任务(分类、回归):
先对所有 Feature Map 进行扁平化(flatten, 即 reshape 成 1 x N 向量)
再接一个或多个全连接层,进行模型学习
都看到这里了,点个赞把!!!!
相关文章:

卷积神经网络(一)
目录 一.卷积神经网络的组成 二.卷积层 目的: 参数: 计算公式 卷积运算过程 三.padding-零填充 1.Valid and Same卷积 2.奇数维度的过滤器 四.stride步长 五.多通道卷积 1.多卷积核(多个Filter) 六.卷积总结 七.池化层(Pooling) 八.全连接层…...

加密与安全_ sm-crypto 国密算法sm2、sm3和sm4的Java库
文章目录 Presm-crypto如何使用如何引入依赖 sm2获取密钥对加密解密签名验签获取椭圆曲线点 sm3sm4加密解密 Pre 加密与安全_三种方式实现基于国密非对称加密算法的加解密和签名验签 sm-crypto https://github.com/antherd/sm-crypto 国密算法sm2、sm3和sm4的java版。基于js…...

VR 尺寸美学主观评价-解决方案-现场体验研讨会报名
棣拓科技VR创新解决方案助力尺寸美学所见即所得! 诚邀各位行业专家莅临指导交流 请扫描海报二维码踊跃报名,谢谢 中国上海 2024.10.25 亮点介绍 1、通过精湛渲染技术,最真实展现设计效果,并通过VR设备一比一比例进行展现。 2、设置相关设…...

网络基础入门指南(三)
一、远程管理交换机 1.配置IP地址 远程管理需要通过IP地址访问网络设备交换机的接口,默认无法配置IP地址需要使用虚接口vlan1 2.配置远程登录密码 远程管理需要配置VTY接口VTY是虚拟终端,是一种网络设备远程连接的方式vty 0 4表示可同时打开5个会话 3…...

大众萨克森:SNP助力汽车制造智能化,实现SAP S/4HANA系统成功升级
关于大众萨克森 VW Sachsen 大众汽车(Volkswagen Sachsen GmbH)包括位于德国茨维考的汽车工厂、位于德累斯顿的透明工厂和位于开姆尼茨的发动机工厂。茨维考汽车厂拥有 7,900名员工,每天生产1,350辆高尔夫和帕萨特汽车。在开姆尼茨的发动机工…...

20240912 每日AI必读资讯
OpenAI计划在接下来的两周内发布Strawberry - 独立产品:尽管草莓是ChatGPT的一部分,但它将作为一个独立的产品发布,具体如何提供尚不清楚。它可能会出现在用户选择的AI模型下拉菜单中,与现有服务有所不同。 - 推理功能ÿ…...

Linux之Shell命令
Shell 是一个 C 语言编写的脚本语言,它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理,Shell 将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。 程序执行方式:编译、解释 Sh…...

前端Vue框架实现html页面输出pdf(html2canvas,jspdf)
代码demo: <template><el-dialog class"storageExportDialog" :fullscreen"true" title"" :visible.sync"visible" v-if"visible" width"600px"><div id"exportContainer" …...

SAP Fiori UI5-环境搭建-2022-2024界面对比
文章目录 一、Fiori项目初始化实际操作第一步:新建文件夹(项目文件)第二步:打开我们项目第三步:打开终端 部署环境第四步: XML中新增文本 二、 2023年Vscode中Fiori界面三 、2024年Vscode中Fiori界面 一、Fiori项目初始…...

二百六十三、Java——IDEA项目打成jar包,然后在Linux中运行
一、目的 在用Java对原Kafka的JSON字段解析成一条条数据,然后写入另一个Kafka中,代码写完后打成jar包,放在Linux中,直接用海豚调度运行 二、Java利用fastjson解析复杂嵌套json字符串 这一块主要是参考了这个文档,然…...

【OpenCV2.2】图像的算术与位运算(图像的加法运算、图像的减法运算、图像的融合)、OpenCV的位运算(非操作、与运算、或和异或)
1 图像的算术运算 1.1 图像的加法运算 1.2 图像的减法运算 1.3 图像的融合 2 OpenCV的位运算 2.1 非操作 2.2 与运算 2.3 或和异或 1 图像的算术运算 1.1 图像的加法运算 add opencv使用add来执行图像的加法运算 图片就是矩阵, 图片的加法运算就是矩阵的加法运算, 这就要求加…...

ChatGPT 3.5/4.0使用手册:解锁人工智能的无限潜能
1. 引言 在人工智能的浪潮中,ChatGPT以其卓越的语言理解和生成能力,成为了一个革命性的工具。它不仅仅是一个聊天机器人,更是一个能够协助我们日常工作、学习和创造的智能伙伴。随着ChatGPT 3.5和4.0版本的推出,其功能和应用范围…...

E32.【C语言 】练习:蓝桥杯题 懒羊羊字符串
1.题目 【问题描述】 “懒羊羊”字符串是一种特定类型的字符串,它由三个字符组成,具有以下特点: 1.字符串长度为 3. 2.包含两种不同的字母。 3.第二个字符和第三个字符相同 换句话说,“懒羊羊”字符串的形式应为 ABB,其中A和B是不…...

Linux 网络基础概念
文章目录 一、初始协议1、理解2、协议分层3、软件分层4、OSI七层模型5、TCP/IP五层模型 二、再识协议1、为什么要有TCP/IP协议2、什么是TCP/IP协议3、TCP/IP协议与操作系统的关系(宏观上,怎么实现的) 三、网络传输基本流程1、mac地址2、TCP/I…...
【题目】MySQL选择题
来源:MySQL专项练习选择题 1.有一个User用户表,要删除整张表(指完全删除表数据和结构),下面正确的MySQL语句是: A.DELETE TABLE User; B.DROP TABLE User; C.TRUNCATE TABLE User; D.DELETE FROM User …...

自然语言处理系列六十三》神经网络算法》LSTM长短期记忆神经网络算法
注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列六十三神经网络算法》LSTM长短期记忆神经网络算…...

亚马逊IP关联及其解决方案
在电子商务领域,亚马逊作为全球领先的在线购物平台,吸引了众多商家和个人的参与。然而,随着业务规模的扩大,商家在使用亚马逊服务时可能会遇到IP关联的问题,这不仅影响账户的正常运营,还可能带来一系列不利…...

Definition and Detection of Defects in NFT Smart Contracts论文解读、复现
背景知识\定义 NFT 是数字或物理资产所有权的区块链表示。不仅限于数字图片,视频和画作等艺术品也可以转化为 NFT 进行交易。近年来受到广泛关注,2021 年 NFT 交易额达到约 410 亿美元。 智能合约 是在区块链上运行的图灵完备程序。支持各种去中心化…...

Neo4j图数据库
文章目录 一、Neo4J相关介绍1.为什么需要图数据库方案1:Google方案2:Facebook 2.特定和优势3.什么是Neo4j4.Neo4j数据模型图论基础属性图模型Neo4j的构建元素 5.软件安装 二、CQL语句1.CQL简介2.CREATE 命令3.MATCH 命令4.RETURN 子句5.MATCH和RETURN6.C…...
k8s API资源对象
API资源对象Deployment 最小的资源是pod,deployment是多个pod的集合(多个副本实现高可用、负载均衡等)。 使用yaml文件来配置、部署资源对象。 Deployment YAML示例: vi ng-deploy.yaml apiVersion: apps/v1 kind: Deployment…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...

docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)
上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...