具有扩展卷积的DCNN

目的:

进行了一系列实验来证明,在没有任何全连接层的情况下,具有扩展卷积的 DCNN 的性能并不比广泛使用的具有包含收缩(无零填充)卷积层和多个全连接层的混合结构的深度神经网络差。

DCNN:Deep convolutional neural networks

关注点:

为深度神经网络配备卷积结构的深度卷积神经网络(DCNN),对由一维卷积(使用一维卷积层Conv1D来提取特征)、单通道(模型的输入是一个一维信号,输入层的通道数为1)和ReLU活函数引起的 DCNN 感兴趣。

假设与前提:

DCNN没有采用全连接层

一维离散卷积的两种类型:

滤波器:

滤波器是一个序列,用向量\overrightarrow{\omega }表示,其元素\omega _{j}只在有限的范围内非零,即从j= 0j=s。这意味着滤波器的长度是 s+1,因为它包括了从0到 s的所有索引。

\vec{\omega }=(\omega _{i})_{j}^{ \infty}=-\infty

\omega _{j}^{k}\neq 0 ,0\leq j\leqslant s

 向量:

\overrightarrow{\nu }是一个包含D个分量的列向量,每个分量都有一个特定的值\nu _{i},其中i的范围是从1到D。这个向量通常用来表示一个在整数集\mathbb{Z}上的离散信号或数据序列,其中的每个元素对应于序列中的一个特定位置。

\overrightarrow{\nu }=\left ( \nu _{1},\nu _{2},\nu _{3}...v_{D} \right )^{T}

扩张卷积(也称为零填充卷积)和收缩卷积(或不进行零填充的卷积)都是滤波器 \overrightarrow{\omega }与向量\overrightarrow{\nu} 之间的操作。 

扩展卷积(零填充卷积):

扩张卷积涉及将向量 \overrightarrow{\nu}进行零填充,以便滤波器 \overrightarrow{\omega }可以应用于 \overrightarrow{\nu}的每个位置。

(\overrightarrow{\omega }*\overrightarrow{\nu })_{j}=\sum_{\iota =1}^{D}\omega _{j-\iota }\cdot \nu _{\iota }

j=1,...D+s

新向量长度:D+s

 D: \overrightarrow{\nu}的长度

s:滤波器 \overrightarrow{\omega }的长度

\omega _{j-\iota }:滤波器\overrightarrow{\omega }的元素

\nu _{\iota }:向量\overrightarrow{\nu}的元素

求和是在\iota从1到 D的范围内进行的,这意味着滤波器 \overrightarrow{\omega }被滑动到\overrightarrow{\nu}上的每个位置,并计算加权和。

得到D*(D+s)的矩阵\widetilde{W}

计算过程:

收缩卷积(不进行零填充的卷积):

收缩卷积不涉及零填充,因此结果向量的长度为D-s+1。这种卷积只考虑滤波器\overrightarrow{\omega }和向量 \overrightarrow{\nu} 重叠的部分。

收缩卷积的第j个分量由下式给出:

(\overrightarrow{\omega }\star \overrightarrow{\nu })_{j}=\sum_{\iota =j-s}^{j}\omega _{j-\iota }\cdot \nu _{\iota }

j=s+1,...,D

这里,求和是在\iotaj-sj的范围内进行的,这意味着滤波器 \overrightarrow{\omega }被滑动到 \overrightarrow{\nu}上,并且只有当滤波器的元素与 \overrightarrow{\nu} 的元素重叠时才计算加权和。 

得到D*(D-s)的矩阵\widetilde{W}{}'

计算过程:

模型定义:

稀疏Toeplitz:

D*(D+s)的矩阵\widetilde{W}表示扩展卷积(\overrightarrow{\omega }*\overrightarrow{\nu })

D*(D-s)的矩阵\widetilde{W}{}'表示收缩卷积(\overrightarrow{\omega }\star \overrightarrow{\nu })

 ReLU激活函数:

 \sigma \left ( t \right )=max\left \{ 0,t \right \}定义了ReLU(Rectified Linear Unit)激活函数,这是一种常用的非线性激活函数,用于引入非线性特性,使得DCNN能够学习复杂的函数。

DCNN的定义:

给定一组滤波器\left \{ \overrightarrow{w_{k}} \right \}_{k=1}^{L},一组偏置向量\left \{ \overrightarrow{b_{k}} \right \}_{k=1}^{L},以及一个输出向量\vec{a}_{L},可以通过如下方式定义:

\vec{h_{0}}\left ( x \right )=x表示输入层,即\vec{h_{0}}是输入数据x

\vec{h_{k}}\left ( x \right )=\sigma \left ( \vec{w_{k}} \odot \vec{h_{k-1}(x)+\vec{b_{k}}}\right )表示第k层的输出,\odot表示卷积操作(扩张卷积或收缩卷积),\sigma是ReLU激活函数,\vec{w}_{k}是第k层的滤波器,\vec{b}_{k}是第k层的偏置向量

h_{L}\left ( x \right )=\hat{a_{L}}\cdot \vec{h}_{L}\left ( x \right )表示最后一层的输出,其中\hat{a}_{L}是一个权重向量,\vec{h}_{L}\left ( x \right )是最后一层的激活输出

实验:

DCNN 可以被视为特殊的深度全连接神经网络

与上面给出的推导相对应

表明没有任何全连接层的eDCNN可以将任何连续函数逼近到任意精度,只要有足够多的层 。

由于 ReLU 的分段线性特性,导出了对自由参数没有任何限制的深度 ReLU 网络的严格伪维数估计。 由此,我们使用伪维度和覆盖数之间的经典关系,然后成功推导了在 eDCNN 上实现经验风险最小化(ERM)的普遍一致性。

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

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

相关文章

【linux】查看不同网络命名空间的端口

在部署harbor时,内部用的是数据库postgresql,端口默认是: 5432,一开始以为这个数据库docker容器是在本命名空间中,一直用ss -lnt查询系统的端口,找不到5432端口。但是harbor要能正常使用,所有怀疑harbor的容…

W5500-EVB-Pico2评估板介绍

目录 1 概述 2 板载资源 2.1 硬件规格 2.2 硬件规格 2.3 工作条件 3 参考资料 3.1 RP2350 数据手册 3.2 W5500 数据手册 3.3 原理图 原理图 & 物料清单 & Gerber 文件 3.3 尺寸图 (单位 : mm) 3.4 参考例程 认证 CE FCC AWS 资质 Microsoft Azure 认证…

2024MoonBit全球编程创新挑战赛参赛作品“飞翔的小鸟”技术开发指南

本文转载自 CSDN:https://blog.csdn.net/m0_61243965/article/details/143510089作者:言程序plus 实战开发基于moonbit和wasm4的飞翔的小鸟游戏 游戏中,玩家需要通过上下左右按键控制Bird,在不断移动的障碍pipe之间穿梭&#xf…

认证授权基础概念详解

目录 认证 (Authentication) 和授权 (Authorization)的区别是什么? RBAC 模型了解吗? 什么是 Cookie ? Cookie 的作用是什么? 如何在项目中使用 Cookie 呢? 如何在 Spring Boot 中创建和读取 Cookie 创建 Cookie Cookie 到期日期 安全…

彻底解决idea不识别java项目

需求背景 下载了一个java swing的项目,通过idea导入后,项目无法识别。打开java文件,也不会报错,也不编译。 无法识别效果图 可以看到左侧的菜单,项目是没有被识别。 打开java文件,可以看到没有识别,java的图标也没有出现。 解决方法 1、打开Project Structure 2、修改…

R6:LSTM实现糖尿病探索与预测

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 一、实验目的: 学习使用LSTM对糖尿病进行探索预测 二、实验环境: 语言环境:python 3.8编译器:Jupyter notebook…

笔试题11 -- 装箱问题(01背包)

装箱问题(01背包) 文章目录 装箱问题(01背包)一、原题复现二、思路剖析三、示例代码 题目链接:NOIP2001装箱问题 一、原题复现 题目描述 有一个箱子容量为V(正整数,0 ≤ V ≤ 20000)…

【D3.js in Action 3 精译_038】4.2 D3 折线图的绘制方法及曲线插值处理

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一部分 D3.js 基础知识 第一章 D3.js 简介(已完结) 1.1 何为 D3.js?1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践(上)1.3 数据可…

测试-正交表与工具pairs的介绍使用(1)

目录 正交表 生成正交表 步骤 实操 注意事项 编写测试用例 根据正交表编写测试用例 补充遗漏的重要测试用例 正交表 关于长篇大论也不多介绍了,我们只需要知道正交法的⽬的是为了减少⽤例数⽬,⽤尽量少的⽤例覆盖输⼊的两两组合 正交表的构成&…

抗晃电马达保护器在工业厂房中的应用

安科瑞刘鸿鹏 摘要 随着工业自动化水平的提高,生产线上电动机作为关键设备的使用频率不断增加。然而,工厂生产环境中的电力波动,尤其是晃电现象,会对电动机的正常运转造成干扰,甚至导致设备停机和生产中断。抗晃电型…

linux之调度管理(2)-调度器 如何触发运行

一、调度器是如何在程序稳定运行的情况下进行进程调度的 1.1 系统定时器 因为我们主要讲解的是调度器,而会涉及到一些系统定时器的知识,这里我们简单讲解一下内核中定时器是如何组织,又是如何通过通过定时器实现了调度器的间隔调度。首先我们…

RHCE循环执行的例行性任务--crontab(周期性)

1.每分钟执行命令 2.每小时执行 3.每天凌晨3点半和12点半执行脚本 4.每隔6小时,相当于6,12,18,24点半执行脚本 5.30半点,8-18/2表示早上8点到下午18点之间每隔2小时执行脚本代表 6.每天晚上9点30重启nginx 7.每月1号和10号4点45执行脚本 8. 每周六和周日…

ETLCloud异常问题分析ai功能

在数据处理和集成的过程中,异常问题的发生往往会对业务运营造成显著影响。为了提高ETL(提取、转换、加载)流程的稳定性与效率,ETLCloud推出了智能异常问题分析AI功能。这一创新工具旨在实时监测数据流动中的潜在异常,自…

Java项目实战II基于Spring Boot的个人云盘管理系统设计与实现(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。 一、前言 基于Spring Boot的个人云盘管理系统设计…

还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!

前言 程序员的终极追求是什么?当系统流量大增,用户体验却丝滑依旧?没错!然而,在大量文件传输、数据传递的场景中,传统的“数据搬运”却拖慢了性能。为了解决这一痛点,Linux 推出了 零拷贝 技术&…

密码学是如何保护数据传输的安全性?

密码学通过一系列算法和协议来保护数据传输的安全性。 一、加密技术 对称加密算法 原理:使用相同的密钥进行加密和解密。应用:在数据传输过程中,发送方和接收方共享一个密钥,数据在传输前被加密,接收方使用相同的密钥…

python怎么打开py文件

1、首先在资源管理器里复制一下py文件存放的路径,按下windows键+r,在运行里输入cmd,回车打开命令行: 2、在命令行里,先切换到py文件的路径下面,接着输入“python 文件名.py ”运行python文件&a…

云计算——ACA学习 云计算核心技术

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​ 写在前面 本系列将会持续更新云计算阿里云ACA的学习,了解云计算及网络安全相关…

企业办公管理软件排名 | 九款企业管理软件助你制胜职场!(好用+实用+全面)

在寻找合适的企业办公管理软件时,你是否感到困惑不已,不知道从众多选项中选择哪一个? 一款好的管理软件不仅能简化工作流程,还能增强数据安全性,优化决策支持。 以下是九款备受推崇的企业管理软件,它们将助…

DNS服务器

DNS服务器 1、简介 DNS域名解析服务器,它作为将域名和IP地址相互映射的一个分布式数据库,端口号为53,通常使用UDP协议,但是在没有查询到完整的信息时,会以TCP这个协议来重新查询,所以在启动NDS服务器时&a…