CNN - 卷积神经网络输入层

2023-11-10

 

数据输入层:Input Layer

1、数据预处理

进行预处理的主要原因是:

  1. 输入数据单位不一样,可能会导致神经网络收敛速度慢,训练时间长
  2. 数据范围大的输入在模式分类中的作用可能偏大,而数据范围小的作用就有可能偏小
  3. 由于神经网络中存在的激活函数是有值域限制的,因此需要将网络训练的目标数据映射到激活函数的值域
  4. S形激活函数在(0,1)区间以外区域很平缓,区分度太小。例如S形函数f(X),f(100)与f(5)只相差0.0067

2、常见数据预处理方式

数据标准化(normalization):

将数据按比例缩放,使之落入一个小的特定区间。

https://pic2.zhimg.com/80/v2-453ddffc76ce39adaade8275823e8f6d_hd.jpg

https://pic1.zhimg.com/80/v2-d4ecf772efc43776b09bdcac9f603830_hd.jpg

https://pic1.zhimg.com/80/v2-b9dd790eb81a6011eca1c31d1962dd28_hd.jpg

https://pic1.zhimg.com/80/v2-1783097977379c0d47ac7006010431dc_hd.jpg

标准化常用的是Z-Score, 记住,这是要减去自己数据的均值和除以自己的标准差(不是方差)

大家在用Fine-tune pretrained model,比如Imagenet, 程序里面经常是减去的Imagenet的均值和方差,这样是不对的,大家在跑程序的时候要注意了。

 

  1. 归一化

每个像素:新数据 = [(原数据-均值)/ 标准差 ] + 偏执

  1. 去均值

将输入数据的各个维度中心化到0

数据中心化:是指变量减去它的均值

  1. PCA/白化

用PCA降维

白化是对数据的每个特征抽上的幅度归一化

数据增强:

即增加训练数据,则能够提升算法的准确率,因为这样可以避免过拟合,而避免了过拟合你就可以增大你的网络结构了。当训练数据有限的时候,可以通过一些变换来从已有的训练数据集中生成一些新的数据,来扩大训练数据。数据增强的方法有https://github.com/aleju/imgaug

水平翻转:

随机裁剪:

     如原始图像大小为256*256,随机裁剪出一些图像224*224的图像。如下图,红色方框内为随机裁剪出的224*224的图片。 AlexNet 训练时,对左上、右上、左下、右下、中间做了5次裁剪,然后翻转,得到10张裁剪的图片。防止大网络过拟合(under ubstantial overfitting)

其他如:

平移变换;

旋转/仿射变换;

高斯噪声、模糊处理

对颜色的数据增强:图像亮度、饱和度、对比度变化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CNN - 卷积神经网络输入层 的相关文章

  • mybatis中#和$的区别

    mybatis中 和 的区别是什么 在mybatis中 和 的主要区别是 传入的参数在SQL中显示为字符串 方式能够很大程度防止sql注入 传入的参数在SqL中直接显示为传入的值 方式无法防止Sql注入 MyBatis 是一款优秀的持久层框
  • mediapipe c++ windows编译出现无法识别python.exe文件

    ERROR An error occurred during the fetch of repository local execution config python Traceback most recent call last Fil
  • 什么是K8S

    什么是K8S 概述 Kubernetes 简称K8S 是一个开源的容器编排平台 可自动完成容器的部署 管理和扩容等操作 功能与优势 使用k8s的主要优势在于 提供了一个便捷有效的平台 可以在物理机和虚拟机 VM 集群上调度和运行容器 更广泛
  • 【计算机毕设文章】电影院订票选座小程序的设计与实现

    毕 业 设 计 论 文 题目 电影院订票选座小程序的设计与实现 摘 要 由于APP软件在开发以及运营上面所需成本较高 而用户手机需要安装各种APP软件 因此占用用户过多的手机存储空间 导致用户手机运行缓慢 体验度比较差 进而导致用户会卸载非

随机推荐

  • 5G NR CSI Report中关于codebook/PMI的理解(1)

    笔者在微信公众号GiveMe5G定期发布学习文章 更多更及时 欢迎订阅和分享 文章下方有二维码 本文主要讨论PDSCH codebook 介绍NR下行数据传输precoding的特点 以及Type I和Type II codebook是什么
  • ZZULIOJ 1023:大小写转换

    本文为博主原创 未经允许不得转载 题目描述 输入一个字母 若是小写字母 则变为大写输出 否则 原样输出 输入 输入为一个字符 输出 按题目要求输出一个字符 单独占一行 样例输入 Copy a 样例输出 Copy A import java
  • 电容电阻电感的等效分析

    1 电阻的等效 在我们的日常学习中我们发现电阻的种类繁多 功能亦是让大家有些许迷糊 以下未说明适用于可变电阻情况 首先说下电阻的定义 电阻是一个变电能为热能的一个元件可以是功耗元件 电流流过产生内能 电阻通常作用为分压和分流的作用 而对于信
  • [译文]PSR-11-容器规范说明文档 container-meta

    容器PSR规范说明文档 Container Meta Document 1 简介 Introduction 2 为什么 Why bother 3 范围 Scope 3 1 目的 Goals 3 2 非目的 Non goals 4 推荐用法
  • 如何统计文件夹或者文件代码行数

    如何统计文件夹或者文件代码行数 代码 package main import bufio fmt io ioutil os path filepath strings var sum int64 示例 1 交叉编译 2 使用 app exe
  • Web3.js的基本使用(与以太坊智能合约的交互)

    目录标题 web3 js介绍 web3 模块加载 异步回调 callback 回调 Promise 事件 v1 0 0 常用 API 基本信息查询 查看 web3 版本 查看 web3 连接到的节点版本 clientVersion 基本信息
  • 芯片资料中的pad和pin的区别

    PIN指芯片封装好后的管脚 即用户看到的管脚 PAD是硅片的管脚 是封装在芯片内部的 用户看不到 PAD到PIN之间还有一段导线连接的
  • 电路图符号超强科普,轻松看懂电路图!(推荐收藏)

    电子设备中有各种各样的图 能够说明它们工作原理的是电原理图 简称电路图 电路图有两种 一种是说明模拟电子电路工作原理的 它用各种图形符号表示电阻器 电容器 开关 晶体管等实物 用线条把元器件和单元电路按工作原理的关系连接起来 这种图长期以来
  • TRIZ创新方法——功能分析

    TRIZ创新方法 功能分析 1 什么是功能分析 2 组件分析 3 相互作用分析 4 功能建模 5 创建功能模型 6 功能案例分析 7 课后作业 在这里插入图片描述 https img blog csdnimg cn 202107112054
  • vuex直接修改state 与 用dispatch/commit来修改state的差异

    使用 vuex 修改 state 时 有两种方式 可以直接使用 this store state 变量 xxx this store dispatch actionType payload 或者this store commit commi
  • moviepy音视频剪辑:与大小相关的视频变换函数详解

    前往老猿Python博文目录 一 引言 在 moviepy音视频剪辑 moviepy中的剪辑基类Clip详解 介绍了剪辑基类的fl fl time fx方法 在 moviepy音视频剪辑 视频剪辑基类VideoClip的属性及方法详解 介绍
  • RIP/EIP 注入

    高手请飘过 RIP x64体系 EIP x86体系 RIP EIP注入原理 1 挂起目标线程 需要用到 SuspendThread 函数 2 挂起之后获取目标线程的上下文 需要用到 GetThreadContext函数 这个函数可以获得一个
  • 【SpringBoot】controller与servlet区别

    文章目录 1 Servlet实例 2 serverlet与controller区别 1 Servlet实例 Servlet 是服务 HTTP 请求并实现 javax servlet Servlet 接口的 Java 类 Web 应用程序开发
  • 一文详解Spring如何控制Bean注入的顺序

    这篇文章主要为大家详细介绍Spring如何控制Bean注入的顺序 其中续注意的是在Bean上加 Order xxx 是无法控制bean注入的顺序的 需要的可以参考一下 简介 控制bean的加载顺序的方法 构造方法依赖 DependsOn 注
  • TypeScript 基础类型 —— Never

    声明为 Never 类型表示永远不存在的值的类型 Never 类型可以用来表示会抛出异常或根本不会有返回值的函数表达式或箭头函数表达式的返回值类型 被永不为真的类型保护所约束时的变量也可用 Never 来表示 function except
  • RT1配置文件

    RT1 sh run Building configuration Current configuration hostname RT1 ipv6 unicast routing syslog buffer 64 level DEBUG c
  • git基础语法(一)

    1 常用命令 git clone 克隆项目把远程仓库拉取到本地 git clone 地址 分支 默认master git clone git gitee com liuzhenyu666 test0130 git 默认拉取master分支代
  • 串行、并行、同步和异步:通信与数据传输的核心概念及应用举例

    当涉及到通信和数据传输时 串行 并行 同步和异步是一些重要的概念 下面我将为您编写一篇关于这些概念的详细博客文章 串行 并行 同步和异步 通信与数据传输的核心概念 1 串行与并行 串行 Serial 指的是逐个传输数据位 一次只传输一个位
  • 编写高质量代码:改善Java程序的151个建议(第1章建议1~5)

    本系类文章 用来记录 编写高质量代码 改善java程序的151个建议 这本书的读书笔记 方便自己查看 也方便大家查阅 在此感谢原书作者秦小波对java的独特见解 帮助java爱好者的成长 由于篇幅原因本人将读书笔记采取分批记忆的方式来进行记
  • CNN - 卷积神经网络输入层

    数据输入层 Input Layer 1 数据预处理 进行预处理的主要原因是 输入数据单位不一样 可能会导致神经网络收敛速度慢 训练时间长 数据范围大的输入在模式分类中的作用可能偏大 而数据范围小的作用就有可能偏小 由于神经网络中存在的激活函