深度学习基础-卷积神经网络CNN+深度学习(无代码仅理解)

news2024/12/26 21:22:40

参考书籍:(找不到资源可以后台私信我)
《深度学习入门:基于Python的理论与实现 (斋藤康毅)》


CNN

概括

在这里插入图片描述
其中pooling层有时候会被省略,卷积层的输入输出图像称为特征图(feature map),即输入特征图和输出特征图。

卷积层

全连接层输入时输入的是1维的数据,多维数据需要被拉平,但卷积层可以保持形状不变。

卷积层进行的处理就是卷积运算、滤波器运算。滤波器相当于affine的weights,b可以用一个数值,这个值会加到所有数上。
在这里插入图片描述
可以看到,这样的维度是变了,那为了让最终结果仍然是4x4的,就必须要对输入数据进行填充,如下图,填充一圈0。
在这里插入图片描述
应用滤波器时,步幅(stride)指的是滤波器移动一次的距离。比如上面都是每次往右或者往下移动一格,所以步幅是1。
在这里插入图片描述
OH和OW应该是整数,如果是小数的话需要四舍五入或者报错。

如果是多维度的数据(比如三维,输入数据多了几张特征图/矩阵,这个几就是通道数),那么滤波器的通道数应该跟输入数据的通道数一致,而且每个通道的滤波器大小要一致。
在这里插入图片描述
如果希望得到多通道的结果,那么需要加滤波器,几个滤波器几个通道。下图还加了偏置。
在这里插入图片描述
批处理时,需要将数据保存为4维数据,按(batch_num, channel, height, width)的顺序保存。即将N次处理汇总成1次进行。

池化层

池化是缩小高、长方向上的运算。比如下图是max池化(步幅为2),就是选4x4里最大的值放入新矩形。
在这里插入图片描述
一般池化的窗口大小与步幅一致。图像识别领域经常使用Max池化,但也还有别的池化方式,比如Average(取矩形里平均值填入新矩形)。

池化层的特征:

  • 没有要学习的参数
  • 通道数不变
  • 对微小的偏差有鲁棒性

卷积层和池化层的实现技巧

在这里插入图片描述
imcol(input_data, filter_h, filter_w, stride=1, pad=0)
卷积层反向传播时,需要进行im2col的逆处理col2im

如果有多个卷积层,最开始的层可能对简单边缘有响应,接下来的层可能对纹理响应,再后面的可能对部件响应。随着层次加深,神经元理解的信息也越来越复杂。

LeNet:1998年提出,用于手写数字识别。AlexNet

深度学习

深度学习是加深了层的深度神经网络。

Data Augmentation 数据扩充:比如mnist数据集,将某些训练图像进行旋转和平移产生新图像以扩充训练集。还可以用裁剪、左右翻转、亮度变化、放缩等。

加深层的好处:

  1. 可以用更少的参数(小滤波器叠加)达到相近的效果
  2. 使学习更高效,即可以用更少的学习数据,因为每一层都学习一点点,相当于分解了问题

实践中经常会灵活应用使用ImageNet这个巨大的数据集学习到的权重数据,这称为迁移学习,将学习完的权重(的一部分)复制到其他神经网络,进行再学习(fine tuning)。比如,准备一个和VGG相同
结构的网络,把学习完的权重作为初始值,以新数据集为对象,进行再学习。迁移学习在手头数据集较少时非常有效。

GPU主要由NVIDIA和AMD两家公司提供。虽然两家的GPU都可以用于通用的数值计算,但与深度学习比较“亲近”的是NVIDIA的GPU。这是因为深度学习的框架中使用了NVIDIA提供的CUDA这个面向GPU计算的综合开发环境。cuDNN是在CUDA上运行的库,它里面实现了为深度学习最优化过的函数等。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多线程-Thread类的常用方法和生命周期

Thread类的常用结构 构造器 public Thread():分配一个新的线程对象。public Thread(String name):分配一个指定名字的新的线程对象。public Thread(Runnable target):指定创建线程的目标对象,它实现了Runnable接口中的run()方法。public Thread(Runnable target,S…

Python实现温度植被干旱指数(TVDI)的计算

前言 温度植被干旱指数(Temperature Vegetation Dryness Index,TVDI)是一种基于光学与热红外遥感通道数据进行植被覆盖区域表层土壤水分反演的方法。作为同时与归一化植被指数(NDVI)和地表温度(LST)相关的温度植被干旱指数(TVDI)可用于干旱监…

第二十五节:通信之WLAN(WiFi聚合)

欢迎大家一起学习探讨通信之WLAN。为了减少帧交互中额外资源占用开销,提高WiFi网络系统整体运行效率,802.11n协议引入定义了聚合功能。本节将基于协议定义内容和实例,详细分析“A-MSDU"和“A-MPDU”两种聚合功能。 关键字 S1G(Sub 1 GH…

linux0.12-10-6-tty_io.c

[539页] 10-6 tty_io.c程序 10-6-1 功能描述 每个tty设备有3个缓冲队列,分别是读缓冲队列(read_q)、写缓冲队列(write_q)和辅助缓冲队列(secondary),定义在tty_struct结构中(include/linux/tty.h)。 对于每个缓冲队列,读操作是从缓冲队列的…

数据可视化:部分整体类可视化图表大全

图表是处理数据的重要组成部分,因为它们是一种将大量数据压缩为易于理解的格式的方法。数据可视化可以让受众快速Get到重点。 数据可视化的图表类型极其丰富多样,而且每种都有不同的用例,通常,创建数据可视化最困难的部分是确定哪…

冯诺依曼体系结构详解

一.冯诺伊曼体系结构的概念: 约翰冯诺依曼(John von Neumann,1903.1.28-1957.2.8),美籍匈牙利数学家,计算机科学家,物理学家。是20世纪最重要的数学家之一,后来被称为计算机之父。 后…

计算机网络学习笔记-网络层

目录 概述 提供的两种服务:面向连接的虚电路、不面向连接的数据报 对比 虚拟互连网络 地址解析协议 ARP 主要作用 使用过程 位置 因特网控制报文协议 ICMP 作用 位置 种类 差错报告报文:终点不可达、源点抑制、时间超过、参数问题、改变路由…

【HMS Core】【ML Kit】活体检测FAQ合集

【问题描述1】 使用示例代码集成活体检测SDK时,报错state code -7001 【解决方案】 使用示例代码前请详细阅读示例工程中的“README”文件。您需要完成以下操作后才可以运行示例代码。 在AppGallery Connect网站下载自己应用的“agconnect-services.json”文件&a…

kaggle新赛推荐 | 从游戏中预测学生的表现

赛题名称:Predict Student Performance from Game Play 从游戏中预测学生的表现 赛题链接:https://www.kaggle.com/competitions/predict-student-performance-from-game-play 赛题背景 学习意味着有趣,这就是基于游戏的学习的用武之地。这…

Java大型货运系统源码(司机APP端+货主APP端)

技术架构:spring boot、mybatis、redis、vue、element-ui 开发语言:java 开发工具:idea、vscode、hbuilder 前端框架:vue 后端框架:spring boot 数 据 库:mysql 移 动 端:uniapp混合开发原…

数据结构与算法(七)

二叉树 如果说树中的每个结点最多只能有两个子结点,这样的树我们就称为二叉树,二叉树可以为空。 特点: 每个结点最多有两棵子树,所以二叉树中不存在度大于二的结点棵树中,最大的结点的度称为树的度,结点的度:结点所…

Git 分支相关操作

1 创建一个分支 Create a new directory and initialize a Git repository. We are going to create a directory named “tutorial”. $ mkdir tutorial $ cd tutorial $ git init Initialized empty Git repository in /Users/eguchi/Desktop/tutorial/.git/进入这个tutori…

一篇文章全面了解光分路器、PLC分路器、拉锥分路器

光纤分路器 光纤分路器,又称为分光器,是将一根光纤信号按照既定的比例分解为两路或多路光信号输出,是接入FTTH方式的光无源器件。 例如,一个1x4光分路器就是将一根光纤中的光信号按照一定的比例分配给四根光纤。与WDM系统的波分复…

【Java入门】运算符

前言 📕作者简介:热爱跑步的恒川,致力于C/C、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于Java入门篇系列,该专栏主要讲解:什么是java、java的数据类型与变…

放大镜-第14届蓝桥杯省赛Scratch中级组真题第3题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第138讲。 放大镜,本题是2023年5月7日举行的第14届蓝桥杯省赛Scratch图形化编程中级组编程第3题&#xff0…

MAC环境下使用 xray 工具

这里不做过多介绍,下面链接讲的非常清楚,下面记录一下遇到的坑。 https://docs.xray.cool/#/tutorial/webscan_basic_crawler Mac环境下选择对应的工具 下载完以后,放入自己的目录下,打开终端查看版本信息 ./xray_darwin_amd64 v…

Jupyter程序安装和使用指南【操作示例】

Jupyter Notebook(简称Jupyter)是一个交互式编辑器,它支持运行40多种编程语言,便于创建和共享文档。Jupyter本质上是一个Web应用程序,与其他编辑器相比,它具有小巧、灵活、支持实时代码、方便图表展示等优点。下面分别为大家演示如…

在CTEX文档生成中使用WinEit编辑带有公式符号的中文文档应用举例

CTEX文档生成中使用WinEit编辑带有公式符号的中文文档应用举例 CTEX在编辑文档格式和排版时具有优秀的性能,可批量处理文档格式,该用格式时候也非常快捷。下面举例介绍CTEX文档生成中怎样使用WinEit编辑带有公式符号的中文文档。 1.需要的代码 .在WinEi…

IT入门深似海,入门到放弃你学废了嘛

我一直觉得IT行业 程序员行业。甚至觉得程序员人群 是一个特殊存在的群体。 入门到放弃,是真的,IT门槛高嘛。 其实吧,IT编程门槛,是有的,但是对于感兴趣的,想学习IT编程同学来说,也是一件容易事…

Few-Shot Knowledge Graph Completion

[1911.11298] Few-Shot Knowledge Graph Completion (arxiv.org) 目录 Background Model Encoding Heterogeneous Neighbors Aggregating Few-Shot Reference Set Matching Query and Reference Set Matching Query and Reference Set Background 以往的KGC认为每个关系…