什么是卷积神经网络

在机器视觉和其他很多问题上,卷积神经网络(Convolutional Neural Network,CNN)取得了当前最好的效果,被广泛用于各个领域,在很多问题上都取得了当前最好的性能。

卷积神经网络原理

卷积神经网络发展历史中的第一个里程碑事件是20世纪60年代的科学家提出了感受野(Receptive Field)。当时科学家通过对猫的视觉皮层细胞研究发现,每一个视觉神经元只会处理一小块区域的视觉图像,即感受野。

深度学习的许多研究成果都离不开对大脑认知原理的研究,尤其是对视觉原理的研究。1981年的诺贝尔医学奖颁发给了 David Hubel(出生于加拿大的美国神经生物学家)、TorstenWiesel和Roger Sperry。前两位的主要贡献是发现了视觉系统的信息处理,可视皮层是分级的。

人类的视觉原理如下:从原始信号摄入开始(瞳孔摄入像素(Pixels)),接着进行初步处理(大脑皮层某些细胞发现边缘和方向),然后抽象(例如大脑判定眼前物体的形状,是圆形的),接着进一步抽象(例如大脑进一步判定该物体是只气球)。对于不同的物体,人类视觉也是通过这样逐层分级来进行认知的:可以看到,最底层特征基本上是类似的,就是各种边缘,越往上越能提取出此类物体的一些特征(轮子、眼睛、躯干等),到最上层,不同的高级特征最终组合成相应的图像,从而能够让人类准确地区分不同的物体。

我们可以很自然地想到:是否可以模仿人类大脑的这个特点构造多层神经网络,较底层的识别初级的图像特征,若干底层特征组成更上一层特征,最终通过多个层级的组合在顶层做出分类呢?答案是肯定的,这也是卷积神经网络的灵感来源。

1980年前后,日本科学家福岛邦彦(Kunihiko Fukushima)在Hubel和Wiesel工作的基础上,模拟生物视觉系统并提出了一种层级化的多层人工神经网络,即“神经认知”(Neurocognitron),以进行手写字符识别和其他模式识别任务。神经认知模型在后来也被认为是现今卷积神经网络的前身。在福岛邦彦的神经认知模型中,两种最重要的组成单元是“S型细胞”(S-Cells)和“C型细胞”(C-Cells),这两类细胞交替堆叠在一起构成了神经认知网络。其中,S型细胞用于抽取局部特征(Local Features),C型细胞则用于抽象和容错,这与现今卷积神经网络中的卷积层(Convolution Layer)和池化层(Pooling Layer)可一一对应,卷积层完成的操作可以认为是受局部感受野概念的启发,而池化层,主要是为了降低数据维度。

卷积神经网络定义

卷积神经网络是一种多层神经网络,擅长处理图像特别是大图像的机器学习相关问题。

卷积网络通过一系列方法成功将数据量庞大的图像识别问题不断降维,最终使其能够被训练。综上所述,卷积神经网络通过卷积来模拟特征区分,并且通过卷积的权值共享及池化来降低网络参数的数量级,最后通过传统神经网络完成分类等任务。

由上文我们知道,卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(Deep Learning)的代表算法之一。卷积神经网络核心网络层是卷积层,其使用了卷积(Convolution)这种数学运算,卷积是一种特殊的线性运算。

典型的卷积神经网络由卷积(Convolutional)层、池化(Pooling)层、全连接(Fully-connected)层组成。其中卷积层与池化层配合组成多个卷积组,逐层提取特征,最终通过若干全连接层完成分类,如图4-10所示。

本文节选自《PyTorch深度学习与企业级项目实战》,获出版社和作者授权发布。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/619608.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

开源免费的定时任务管理系统:Gocron

Gocron:精准调度未来,你的全能定时任务管理工具!- 精选真开源,释放新价值。 概览 Gocron是github上一个开源免费的定时任务管理系统。它使用Go语言开发,是一个轻量级定时任务集中调度和管理系统,用于替代L…

14.CAS原理

文章目录 CAS原理1.什么是CAS2.Unsafe类中的CAS方法2.1.获取UnSafe实例2.2.调用UnSafe提供的CAS方法2.3.调用Unsafe提供的偏移量相关2.4.CAS无锁编程2.4.1.使用cas进行无锁安全自增案例 CAS原理 由于JVM的synchronized重量级锁设计操作系统内核态下的互斥锁的使用,其…

多剖面土壤墒情监测仪

TH-GTS04在农业生产中,土壤墒情是影响作物生长的关键因素之一。为了更好地了解土壤的水分状况,为农业生产提供科学依据,多剖面土壤墒情监测仪应运而生。这种先进的监测设备具有多项功能优势,为土壤水分的精准监测提供了有力支持。…

火绒安全原理、用法、案例和注意事项

火绒安全是一款功能强大的安全软件,它采用了先进的安全技术和算法,通过实时监测、恶意代码识别、防火墙功能、沙箱技术和网络保护等多种手段,为用户提供全面的计算机安全防护。 1.为什么选用火绒安全? 火绒安全是一款优秀的安全软…

通过内网穿透实现远程访问个人电脑资源详细过程(免费)(NatApp + Tomcat)

目录 1. 什么是内网穿透 2. 内网穿透软件 3. NatApp配置 4. 启动NatApp 5. 通过内网穿透免费部署我们的springboot项目 通过内网穿透可以实现远程通过网络访问电脑的资源,本文主要讲述通过内网穿透实现远程访问个人电脑静态资源的访问,下一章节将讲…

实验10配置 IPv4 和 IPv6 静态和 默认路由(课内实验)

上面这个是实验描述 下面是给的实验图 接下来我们跟着实验一步一步进行下去 第 1 部分:配置 IPv4 静态和 浮动静态默认路由配置ipv4静态路由:配置 IPv4静态和 浮动静态默认路由 步骤 1:配置一条 IPv4 静态 默认路由。在 Edge_Router 上&am…

Leetcode经典题目之用队列实现栈

P. S.:以下代码均在VS2019环境下测试,不代表所有编译器均可通过。 P. S.:测试代码均未展示头文件stdio.h的声明,使用时请自行添加。 目录 1、题目展示2、题目分析3、完整代码演示4、结语 1、题目展示 前面我们了解过如何实现队列…

使用 Flask Blueprint 实现模块化 Web 应用

文章目录 1. 什么是 Flask Blueprint?2. 为什么要使用 Flask Blueprint?3. 如何使用 Flask Blueprint?4. 在 Blueprint 之间进行通信5. 结合 Flask 插件系统进行功能拓展结语 当构建大型 Flask Web 应用时,保持代码的组织结构清晰…

深度缓冲技术在AI去衣中的神奇作用

引言: 随着人工智能技术的飞速发展,其在图形处理和视觉领域的应用日益增多。AI去衣技术便是其中一个颇具争议但又技术上引人入胜的话题。今天,我们将深入探讨一项关键技术——深度缓冲(Depth Buffering),它…

Ubuntu 24 换国内源及原理 (阿里源 清华源 中科大源 网易源)

备份原文件 sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.bak 编辑源文件 sudo gedit /etc/apt/sources.list.d/ubuntu.sources 粘贴到文本(其中一个即可): (阿里源&#xff09…

HTML静态网页成品作业(HTML+CSS+JS)——华为商城网页(1个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,使用Javacsript代码实现首页图片切换轮播效果,共有1个页面…

SQL-递归查询

运行环境: Mysql8以上,递归查询功能在8以上版本被正式引入 一、SQL递归查询的概念 递归指的是通过调用函数或过程或自身来解决问题的方法,常用于一些具有规律性循环的操作。SQL递归查询是基于一组初始数据,通过递归查询&#xf…

Tableau学习2.0版——复习

官网下载链接:https://www.tableau.com/zh-cn/support/releases 学生账户申请链接:https://www.tableau.com/zh-cn/academic/students。直接去学信网下载学籍在线验证作为申请证明。 目录 1、可视化原理 2、基础图表制作 2.1 对比分析(比…

【持续更新中,图像分割数据集】字节发布 COCONut 入选 CVPR 2024,立即体验 Segment Anything 分割万物!|持续更新中!

随着计算机视觉技术的不断发展,图像分割在诸多领域展现出重要的应用价值。近年来,各种图像分割数据集如雨后春笋般涌现。上个月,字节跳动发布了首个大规模全景图像分割数据集「COCONut」,为这一领域的研究注入了新鲜血液。 HyperA…

【网络编程】Servlet的前后端练习 | 表白墙 | 前后端交互 | 提交消息 | 获取消息

文章目录 一、Servlet的前后端练习1.表白墙服务器要实现的逻辑:1.获取消息 :2.提交消息:完整前端代码:完整后端代码: 一、Servlet的前后端练习 1.表白墙 服务器要实现的逻辑: 1.页面加载时,网…

OBS直播二次开发_OBS直播软件介绍

OBS工作室版 免费且开源的用于视频录制以及直播串流的软件。 下载以在Windows, Mac以及Linux上简单且快速的开始串流。 功能 实时高性能的视频/音频捕捉与混合,以及无限的场景模式使您可以通过自定义实现无缝转换。为视频源设计的滤镜例如图片蒙版,色彩校正,色度/色彩键控…

java中的变量、数据类型、人机交互

变量 变量要素 1、类型;每一个变量都需要定义类型(强类型)其它语言有弱类型(js) 2、变量名; 3、存储的值; 声明方式: 数据类型 变量名 变量值; public static vo…

UDP怎么端口映射?

在网络通信中,TCP和UDP是两种常用的传输协议。UDP(User Datagram Protocol)是一种无连接的传输协议,相较于TCP协议来说,它更为轻量级且不可靠。UDP协议在某些场景下仍然有其独特的优势,尤其是在需要快速传输…

如何训练一个大模型:LoRA篇

目录 写在前面 一、LoRA算法原理 1.设计思想 2.具体实现 二、peft库 三、完整的训练代码 四、总结 写在前面 现在有很多开源的大模型,他们一般都是通用的,这就意味着这些开源大模型在特定任务上可能力不从心。为了适应我们的下游任务,…

用python写算法——队列笔记

1.队列定义 队列是一种特殊的线性表,它只允许在表的前端进行删除操作,在表的后端进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时&#…