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

卷积神经网络(一)

目录

一.卷积神经网络的组成

二.卷积层

目的:

参数:

计算公式

 卷积运算过程

三.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模型下拉菜单中,与现有服务有所不同。 - 推理功能&#xff…...

Linux之Shell命令

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

前端Vue框架实现html页面输出pdf(html2canvas,jspdf)

代码demo&#xff1a; <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项目初始化实际操作第一步&#xff1a;新建文件夹&#xff08;项目文件&#xff09;第二步&#xff1a;打开我们项目第三步&#xff1a;打开终端 部署环境第四步: XML中新增文本 二、 2023年Vscode中Fiori界面三 、2024年Vscode中Fiori界面 一、Fiori项目初始…...

二百六十三、Java——IDEA项目打成jar包,然后在Linux中运行

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

【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. 引言 在人工智能的浪潮中&#xff0c;ChatGPT以其卓越的语言理解和生成能力&#xff0c;成为了一个革命性的工具。它不仅仅是一个聊天机器人&#xff0c;更是一个能够协助我们日常工作、学习和创造的智能伙伴。随着ChatGPT 3.5和4.0版本的推出&#xff0c;其功能和应用范围…...

E32.【C语言 】练习:蓝桥杯题 懒羊羊字符串

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

Linux 网络基础概念

文章目录 一、初始协议1、理解2、协议分层3、软件分层4、OSI七层模型5、TCP/IP五层模型 二、再识协议1、为什么要有TCP/IP协议2、什么是TCP/IP协议3、TCP/IP协议与操作系统的关系&#xff08;宏观上&#xff0c;怎么实现的&#xff09; 三、网络传输基本流程1、mac地址2、TCP/I…...

【题目】MySQL选择题

来源&#xff1a;MySQL专项练习选择题 1.有一个User用户表&#xff0c;要删除整张表&#xff08;指完全删除表数据和结构&#xff09;&#xff0c;下面正确的MySQL语句是&#xff1a; A.DELETE TABLE User; B.DROP TABLE User; C.TRUNCATE TABLE User; D.DELETE FROM User …...

自然语言处理系列六十三》神经网络算法》LSTM长短期记忆神经网络算法

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

亚马逊IP关联及其解决方案

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

Definition and Detection of Defects in NFT Smart Contracts论文解读、复现

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

Neo4j图数据库

文章目录 一、Neo4J相关介绍1.为什么需要图数据库方案1&#xff1a;Google方案2&#xff1a;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&#xff0c;deployment是多个pod的集合&#xff08;多个副本实现高可用、负载均衡等&#xff09;。 使用yaml文件来配置、部署资源对象。 Deployment YAML示例&#xff1a; vi ng-deploy.yaml apiVersion: apps/v1 kind: Deployment…...

、SEATA分布式事务——XA模式

指令替换 项目需求&#xff1a;将加法指令替换为减法 项目目录如下 /MyProject ├── CMakeLists.txt # CMake 配置文件 ├── build/ #构建目录 │ └── test.c #测试编译代码 └── mypass2.cpp # pass 项目代码 一&#xff0c;测试代码示例 test.c // test.c #includ…...

nanobot应用场景:用Qwen3-4B构建Linux运维助手,自动解析nvidia-smi输出

nanobot应用场景&#xff1a;用Qwen3-4B构建Linux运维助手&#xff0c;自动解析nvidia-smi输出 1. 项目介绍&#xff1a;超轻量级AI运维助手 nanobot是一款受OpenClaw启发的超轻量级个人人工智能助手&#xff0c;专门为Linux运维场景设计。这个工具最大的特点是轻量高效&…...

dockerc故障排除终极指南:10个常见错误和解决方案清单

dockerc故障排除终极指南&#xff1a;10个常见错误和解决方案清单 【免费下载链接】dockerc container image to single executable compiler 项目地址: https://gitcode.com/gh_mirrors/do/dockerc dockerc作为一款container image to single executable compiler工具&…...

DeepSeek-Coder-V2-Lite-Instruct社区成功案例:开发者如何用AI助手实现项目突破

DeepSeek-Coder-V2-Lite-Instruct社区成功案例&#xff1a;开发者如何用AI助手实现项目突破 【免费下载链接】DeepSeek-Coder-V2-Lite-Instruct 开源代码智能利器——DeepSeek-Coder-V2&#xff0c;性能比肩GPT4-Turbo&#xff0c;全面支持338种编程语言&#xff0c;128K超长上…...

Chandra AI企业知识管理方案:文档智能检索与摘要生成

Chandra AI企业知识管理方案&#xff1a;文档智能检索与摘要生成 1. 引言 企业每天都在产生海量文档——合同、报告、PPT、技术文档...这些宝贵的知识资产往往散落在各处&#xff0c;查找困难&#xff0c;利用率低。传统的关键词搜索就像在黑暗中摸索&#xff0c;找到的文档可…...

丹青幻境功能全解析:宣纸UI、动态LoRA、文艺交互实操

丹青幻境功能全解析&#xff1a;宣纸UI、动态LoRA、文艺交互实操 1. 数字艺术创作新范式 在数字艺术创作领域&#xff0c;丹青幻境Z-Image Atelier带来了一场界面革命。这款工具将4090显卡的强大算力隐藏在仿古宣纸界面背后&#xff0c;为创作者提供了前所未有的沉浸式体验。…...

s2-pro语音合成新玩法:用标签控制语气,轻松制作带情绪的语音内容

s2-pro语音合成新玩法&#xff1a;用标签控制语气&#xff0c;轻松制作带情绪的语音内容 1. 语音合成技术的新突破 在数字内容创作领域&#xff0c;语音合成技术正变得越来越重要。传统的语音合成系统往往只能生成单调、机械的语音&#xff0c;缺乏情感表达和自然韵律。而s2-…...

Java全栈工程师面试实录:从基础到实战的深度技术探讨

Java全栈工程师面试实录&#xff1a;从基础到实战的深度技术探讨 一、面试开场 面试官&#xff08;李工&#xff09;&#xff1a;你好&#xff0c;欢迎来到我们公司。我是李工&#xff0c;负责技术面试。今天我们会围绕你的技术栈进行一些深入交流。 应聘者&#xff08;张明&am…...

SiameseUIE多任务统一Schema设计:一套定义覆盖NER/关系/事件/情感

SiameseUIE多任务统一Schema设计&#xff1a;一套定义覆盖NER/关系/事件/情感 1. 引言&#xff1a;信息抽取的“瑞士军刀” 想象一下&#xff0c;你手头有一堆杂乱无章的中文文档——可能是新闻稿、用户评论、技术报告或者客服对话。老板让你快速从中找出所有提到的人名、公司…...

UEFI SCT编译调试踩坑记:我的AARCH64环境搭建与问题解决实录

UEFI SCT编译调试实战&#xff1a;AARCH64环境搭建与疑难问题全解析 当你在深夜的办公室里盯着屏幕上闪烁的光标&#xff0c;第N次尝试编译UEFI SCT测试套件时&#xff0c;那种既熟悉又陌生的挫败感再次袭来。作为UEFI开发者&#xff0c;我们都经历过这样的时刻——官方文档看似…...