【论文速读】《面向深度学习的联合消息传递与自编码器》
这篇文章来自华为的渥太华无线先进系统能力中心和无线技术实验室,作者中有大名鼎鼎的童文。
一、自编码架构的全局收发机面临的主要问题
文章对我比较有启发的地方,是提到自编码架构的全局收发机面临的主要问题:
问题一:基于随机梯度下降法,使用反向传播算法训练自编码器,需要一个或多个可微信道模型层,用于连接发射机的深度神经层和接收机的深度神经层。由于真实信道必须包含很多非线性分量(如数字或模拟的预失真与转换),又涉及上采样、下采样等不可微阶段,因此收发机深度神经层训练出来的模型是基于构造的信道而非真实信道。在真实信道场景下,这样得到的模型可能会在推理阶段带来性能损失。
问题二:所有隐藏层或中间层均根据输入信号的后验概率进行训练。在自编码器全局收发机中,接收机深度神经层的第一层是一个中间层,该中间层的输入信号易受当前信道失真的影响。这种影响会不可避免地渗透到接收机的所有深度神经层。如果信道变化的程度大到超出了训练期望,会导致接收机在推理阶段失效。
问题三:神经层之间缺乏可解释性,无法获知哪些神经元以及神经层之间的哪些连接会有效影响最终的学习准确度。 Goodfellow等人举了一个深度神经网络分类器的例子,虽然该分类器通过非噪声图像完成了良好的训练,但仍可能将带噪声的熊猫图像误判为长臂猿。这个例子表明,基于深度神经网络的分类器进行最终决策时,很大程度上依赖于一些“关键路径”(指熊猫图像中的部分像素,也称为“局部特征”)。如果关键路径完好无损,就能做出正确的分类;如果关键路径受到干扰,则会做出错误的分类。同时,这种由噪声导致的分类误判,只是在存在加性随机噪声的前提下出现的偶发情况,这表明深度神经网络依赖于这样一种假设——即 “关键路径”经过噪声信道处理后仍然保持完好。深度神经网络易受加性随机噪声的影响,这对它在无线收发机设计中的应用几乎是致命打击。
这三个问题的本质可以归结为同一个核心问题,即面临无线信道的随机变化时,深度神经网络的泛化性能太差。没有任何模型(即便是十分优越的信道模型)能够完全捕获无线电传播的所有可能场景,因此分布外(Out-of-Distribution, OOD)样本或离群点的处理是自编码器始终要面对的现实问题。
更糟糕的是,针对这些问题的现有解决方案还面临许多阻碍,因为所提出的解决方案必须满足无线通信设备和基础设施的低能耗、低时延、低开销等实际要求。一方面,在动态环境中,自编码器收发机对自身进行累加、增强以及重训练的成本过高;另一方面,进行累加、增强和重训练的整个过程本身也违反了深度神经网络的“Once-for-All”策略——即一次学习、长期有效,进而无法很好地满足现实需要和能耗要求。
在无线场景中,离群点通常由信道的随机变化引起。在推理阶段,如果信道正在发生变化,偏离了训练阶段所使用的信道模型,这时离群点的问题表现得尤为突出。随着推理的进行,会出现更多的离群点,进而影响到接收信号的分布形状, Bengio就将深度学习泛化性能差的原因归咎于这一点。目前有一些补救方法,比如进行额外的训练,包括迁移训练、基于注意力的循环网络,或强化学习。然而,面对未来无线通信低能耗、低时延和低控制开销的要求,这些补救方法变得不切实际,缺乏可行性。
对于文章提出的MPA方法,文章也分析解决思路,重点是下面我标黑的部分:
“首先,为实现可微性,需要简化信道模型,但这种简化会损害自编码器收发机的性能。造成性能损害的原因在于,用来训练自编码器的信道模型是一种简化模型,而非真实模型。也就是说,训练阶段使用的简化信道模型与推理阶段处理的真实信道之间存在偏移,这种偏移带来了性能损失。如果偏移量增加到超出期望的程度,整个自编码器收发机将会失效。有两种补救方法可以缓解这种性能下降。第一种是利用强化学习,不间断地记录信道状态,并对策略DNN和(或)评估 DNN进行持续训练。不过,从维度的复杂程度上讲,强化学习对无线系统来说过于复杂,因为强化学习处理的维度实际上比AlphaGo围棋还要大得多。因此,基于强化学习的调整机制并不可行。第二种是利用生成对抗网络(Generative Adversary Network,GAN),将尽可能多的信道场景学习到一个大的深度神经网络模型中。然而,这是一种经验方法,无法证明该方法能够涵盖所有信道场景。
出于对上述问题的考虑,带MPA的自编码器采取不同的技术路径。在推理阶段,MPA会针对每次数据传输,调整当前信道测量函数中的降维层系数,因此自适应推理会在训练阶段使用一个粗信道模型,我们称之为“粗学习”。如果粗学习对训练和推理两个阶段模拟了相同或相似的信道模型,则很难证明粗学习的优势,不过这种优势可以在实际的现场测试中得到证明。
其次,带MPA的自编码器可以与基于生成对抗网络的信道模型联合工作。从经验来讲,大部分信道的实际条件依赖于用户位置和环境拓扑,比如高层建筑、山丘、道路等。参考文献提出利用条件生成对抗网络,对未知信道建模,并获得了良好的性能。我们可以利用该方法建立一个信道模型,为训练阶段提供良好的支持。
在推理阶段,我们建议依靠导频的信道估计、信道测量反馈或信道互易来获得最新的信道条件。众所周知,MPA还受益于稀疏性,能够较好地容忍偏置与偏移(这也是LDPC解码器可以有效工作的原因)。从这一角度来看,没有必要进行全维信道测量,只需测量部分维度,即使存在一定的估计误差,我们的方案在整体性能上仍具备较好的鲁棒性。另外,残差可以通过误差容忍度较高的接收深度神经层得到处理。由于在推理和训练阶段已经做好了降维层的调整,我们可以将降维层作为整个传输链的预编码器,因而不必在接收深度神经层再做训练。这样不但带来节能效益,而且对延长用户设备的电池寿命也是一种巨大的优势。”
二、文章速读
其实,对文章提出的方法,我个人还是持一种怀疑态度。来简单看看文章的方法。
文章摘要
文章提出了一种基于消息传递算法(Message Passing Algorithm, MPA)的自编码器收发机,以解决传统自编码器在处理随机信道变化时泛化性能较差的问题。作者通过在自编码器中引入MPA,实现了一种灵活的收发机,能够在不同使用场景下提供较好的泛化性能。该方法允许在训练阶段进行粗学习,并在推理阶段实现自适应推理。
解决的主要问题
- 泛化性能问题:传统自编码器收发机在面对随机信道变化时,由于神经元一旦训练完成就固定,导致泛化性能较差。
- 模型与真实信道的偏差:使用基于随机梯度下降法和反向传播算法训练的自编码器,依赖于构造的信道模型而非真实信道,可能导致推理阶段性能损失。
- 信道变化的适应性问题:自编码器全局收发机在信道变化超出训练期望时,可能导致接收机失效。
- 分布外样本处理:无线信道的随机变化导致分布外样本或离群点问题,现有解决方案难以满足无线通信设备的低能耗、低时延、低开销要求。
主要方法
- 消息传递算法(MPA):引入MPA功能,通过预编码器层实现自适应调整,提升收发机在信道动态变化时的泛化性能。
- 降维层:将降维层插入自编码器框架中,进行线性降维转换,并通过MPA对降维层系数进行迭代调整。
- 独立式MPA迭代:采用前向迭代(类似非线性支持向量机)和反向迭代(类似注意力深度神经网络)来独立调整降维层,不依赖于原始自编码器的反向传播。
- 全局串联学习:通过串联训练方案,分别训练降维层和深度神经层,实现粗学习和自适应推理。
- 粗学习与自适应推理:在训练阶段使用简化信道模型进行粗学习,而在推理阶段通过MPA调整降维层以适应当前信道测量情况。
通过这些方法,文章旨在提高自编码器收发机在随机信道变化条件下的性能和泛化能力。
对于文章的MPA方法,看图16和17可以了解大概。
主要是加入了MPA层,完成了发射向量到信道之间的一个维度变换,然后训练的时候先冻结MPA层,完成整体收发的训练后,再迭代训练MPA层。MPA层可以看作是发射的一个预编码映射,具体的维度可以通过对信道的测量获得,这里还是对信道采取了常见的多径假设。MPA层的训练,是依靠接收信号和发射向量之间的注意力。注意力深度神经网络是测量不同维度间两个特征相似度的一种有效方法。应当注意,注意力的数量小于接收信号的数量,即L < N。注意力深度神经网络可以用于降维层的反向传播。
上图显示了带MPA层与传统方式的差异,MPA层可以实现在线学习,而接收信号可以通过信道互易性获得。
相关文章:
【论文速读】《面向深度学习的联合消息传递与自编码器》
这篇文章来自华为的渥太华无线先进系统能力中心和无线技术实验室,作者中有大名鼎鼎的童文。 一、自编码架构的全局收发机面临的主要问题 文章对我比较有启发的地方,是提到自编码架构的全局收发机面临的主要问题: 问题一:基于随…...
防御---001
一、实验拓扑二、要求 1,DMZ区内的服务器,办公区仅能在办公时间内(9:00 - 18:00)可以访问,生产区的的设备全天可以访问. 2,生产区不允许访问互联网,办公区和游客区允许访问互联网 3,办公区设备10.0.2.10不允许访问DMZ…...
DNS 杂谈
一、定义 DNS(Domain Name System),域名系统,该系统记录域名和Ip地址的相互映射关系。用户访问互联网时,通过域名地址得到对应的IP地址,这个过程称为域名解析。DNS运行于UDP协议之上,使用的端口…...
docker笔记2
docker笔记2 一、阿里云镜像配置二、docker基本原理1.docker是如何启动一个容器的2.docker的底层原理 三、镜像命令总结 一、阿里云镜像配置 配置镜像的目的 由于Docker Hub等公共镜像仓库的服务器可能位于国外,直接从中拉取镜像时可能会遇到网络延迟或不稳定的问…...
数字统计
import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别// 注意 while 处理多个 caseint a in.nextInt();i…...
Git 使用问题
Git 使用问题 1, 网络问题 1, 网络问题 # 报错如下: fatal: unable to access https://github.com/xianglingliwei/HRNet.git/: Failed to connect to github.com port 443 after 21044 ms: Couldnt connect to server在不能正常访问Github的区域,需要设…...
JMH325【剑侠情缘3】第2版80级橙武网游单机更稳定亲测视频安装教学更新整合收集各类修改教学补丁兴趣可以慢慢探索
资源介绍: 是否需要虚拟机:是 文件大小:压缩包约14G 支持系统:win10、win11 硬件需求:运行内存8G 4核及以上CPU独立显卡 下载方式:百度网盘 任务修复: 1,掌门任务(…...
大数据专业创新人才培养体系的探索与实践
一、引言 随着大数据技术的迅猛发展,其在各行各业中的应用日益广泛,对大数据专业人才的需求也日益增长。我国高度重视大数据产业的发展,将大数据作为国家战略资源,推动大数据与各行业的深度融合。教育部也积极响应国家战略&#…...
MySQL 中的 DDL、DML、DQL 和 DCL
文章目录 1. 数据定义语言(DDL)2. 数据操作语言(DML)3. 数据查询语言(DQL)4. 数据控制语言(DCL)总结 在 MySQL 数据库管理系统中,SQL 语句可以根据其功能分为不同的类别&…...
基础架构服务API:降低成本,提升业务效益
基础架构服务API的应用可以显著降低企业的成本,并提升业务效益。通过使用这些API,企业可以充分利用云计算、自动化部署和资源管理等功能,从而减少了传统基础设施所需的大量投资和维护成本。这些API还提供了弹性扩展和自动化功能,使…...
Redis IO多路复用
0、前言 本文所有代码可见 > 【gitee code demo】 本文涉及的主题: 1、BIO、NIO的业务实践和缺陷 2、Redis IO多路复用:redis快的主要原因 3、epoll 架构 部分图片 via 【epoll 原理分析】 1、BIO单线程版 1.1 业务代码 client client代码相同…...
如何在Vue中实现拖拽功能?
Vue.js是一款流行的JavaScript框架,用于构建用户界面。其中一个常见的需求是在Vue中实现拖拽功能,让用户可以通过拖拽元素来进行交互。今天,我们就来学习如何在Vue中实现这一功能。 首先,我们需要明白拖拽功能的基本原理…...
在Linux下使用Docker部署chirpstack
目录 一、前言 二、chirpstack 1、chirpstack是什么 2、chirpstack组件 3、为什么选择Docker部署 三、Linux下部署过程 四、web界面部署过程 一、前言 本篇文章我是在Linux下使用 Docker 进行部署chirpstack,chirpstack采用的是v4 版本,v4 版本 与…...
《昇思25天学习打卡营第14天|计算机视觉-ShuffleNet图像分类》
FCN图像语义分割&ResNet50迁移学习&ResNet50图像分类 当前案例不支持在GPU设备上静态图模式运行,其他模式运行皆支持。 ShuffleNet网络介绍 ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型,和MobileNet, SqueezeNet等一样主要应用在移动端…...
将字符串写入结构体变量中
将字符串写入结构体变量中,主要涉及到结构体中字符数组(或指针)的使用。 一、使用字符数组 假设你有一个结构体,它包含一个字符数组来存储字符串: #include <stdio.h> #include <string.h> // 用于st…...
iPhone 16 Pro系列将标配潜望镜头:已开始生产,支持5倍变焦
ChatGPT狂飙160天,世界已经不是之前的样子。 更多资源欢迎关注 7月6日消息,据DigiTimes最新报道,苹果将在iPhone 16 Pro中引入iPhone 15 Pro Max同款5倍光学变焦四棱镜潜望镜头。 报道称,目前苹果已经将模组订单交至大立光电和玉…...
PG在还没有pg_class的时候怎么访问基础系统表?
在没有pg_class的时候,数据库怎么访问系统表?这个问题可以分成两个阶段来看: 数据库簇初始化,此时一个database都没有,所以怎么构造和访问pg_class等系统表是一个问题私有内存初始化系统表。PG的系统表信息是放在back…...
UnityHub 无法添加模块问题
文章目录 1.问题描述2.问题解决 1.问题描述 在Hub中无法添加模块 2.问题解决 1、点击设置 2、设置版本安装位置 可以发现installs的安装位置路径设置不是unity安装位置,这里我们更改成自己电脑unity安装位置的上一级路径 添加模块正常:...
python04——类(基础new)
类其实也是一种封装的思想,类就是把变量、方法等封装在一起,然后可以通过不同的实例化对其进行调用操作。 1.类的定义 class 类名: 变量a def __init__ (self,参数2,参数2...):初始化函数!!&…...
【Python百日进阶-Web开发-Peewee】Day296 - 查询示例(五)聚合2、递归
文章目录 14.6.13 列出每个指定设施的预订总小时数 List the total hours booked per named facility14.6.14 列出每位会员在 2012 年 9 月 1 日之后的首次预订 List each member’s first booking after September 1st 201214.6.15 生成成员名称列表,每行包含成员总数 Produc…...
闲话银行家舍入法,以及在程序中如何实现
前言 相信对于四舍五入的舍入法,大家都耳熟能详,但对于银行家舍入法,可能就会比较少接触了! 可是在金融界,银行家舍入法可是大名鼎鼎的主角之一,主要应用于金融领域和涉及货币计算的场合。 那么…...
最短路径算法(算法篇)
算法之最短路径算法 最短路径算法 概念: 考查最短路径问题,可能会输入一个赋权图(也就是边带有权的图),则一条路径的v1v2…vN的值就是对路径的边的权求和,这叫做赋权路径长,如果是无权路径长就是单纯的路径上的边数。…...
昇思25天学习打卡营第11天 | LLM原理和实践:基于MindSpore实现BERT对话情绪识别
1. 基于MindSpore实现BERT对话情绪识别 1.1 环境配置 # 实验环境已经预装了mindspore2.2.14,如需更换mindspore版本,可更改下面mindspore的版本号 !pip uninstall mindspore -y !pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore2.2…...
反向散射技术(backscatter communication)
智能反射表面辅助的反向散射通信系统研究综述(知网) 1 反向散射通信技术优势和应用场景 反向散射通信技术通过被动射频技术发送信号,不需要一定配有主动射频单元,被认为是构建绿色节能、低成本、可灵活部署的未来物联网规模化应用关键技术之一,是实现“…...
致远CopyFile文件复制漏洞
复现版本 V8.0SP2 漏洞范围 V5&G6_V6.1至V8.0SP2全系列版本、V5&G6&N_V8.1至V8.1SP2全系列版本。 漏洞复现 上传文件 POST /seeyon/ajax.do?methodajaxAction&managerNameportalCssManager&rnd57507 HTTP/1.1 Accept: */* Content-Type: applicatio…...
MySQL 创建数据库
MySQL 创建数据库 在当今的数据驱动世界中,数据库是任何应用程序的核心组成部分。MySQL,作为一个流行的开源关系数据库管理系统,因其可靠性、易用性和强大的功能而广受欢迎。本文将详细介绍如何在MySQL中创建数据库,包括基础知识和最佳实践。 什么是MySQL数据库? MySQL…...
AbyssFish单连通周期边界多孔结构2D软件
软件介绍 AbyssFish单连通周期边界多孔结构2D软件(以下简称软件)可用于生成具备周期性边界条件的单连通域多孔结构PNG图片,软件可设置生成模型的尺寸、孔隙率、孔隙尺寸、孔喉尺寸等参数,并且具备孔隙形态控制功能。 软件生成的…...
Linux驱动开发-03字符设备驱动框架搭建
一、字符设备驱动开发步骤 驱动模块的加载和卸载(将驱动编译模块,insmod加载驱动运行)字符设备注册与注销(我们的驱动实际上是去操作底层的硬件,所以需要向系统注册一个设备,告诉Linux系统,我有…...
Zynq系列FPGA实现SDI视频编解码+图像缩放+多路视频拼接,基于GTX高速接口,提供8套工程源码和技术支持
目录 1、前言工程概述免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本博已有的FPGA图像缩放方案本方案的无缩放应用本方案在Xilinx--Kintex系列FPGA上的应用 3、详细设计方案设计原理框图SDI 输入设备Gv8601a 均衡器GTX 解串与串化SMPTE SD/HD/3G SDI IP核BT1120转RGB自研…...
VS2019使用C#写窗体程序技巧(1)
1、打开串口 private void button1_Click(object sender, EventArgs e){myPort cmb1.Text;mybaud Convert.ToInt32(cmb2.Text, 10);databit 8;parity Parity.None;stopBit StopBits.One;textBox9.Text "2";try{sp new SerialPort(myPort, mybaud, parity, dat…...
做页面设计的网站/宁波seo推广推荐
"将一个类的接口转换成客户希望的另一个接口,Adapter模式使原本由于接口不兼容而不能一起工作的类可以一起工作" 。简单的说,就是利用现有的接口去包装一个第三方的接口, 使其能象现有接口一样被程序调用,而不考虑实际使用类的差异 意图将一个类的接口转换成客户希望…...
如何建淘客网站/网站制作推广
打开idea的Terminal,输入 npm install -g webpack webpack-cli...
网站文章更新怎么通知搜索引擎/百度推广效果怎么样
Golang 支持在一个平台下生成多个平台运行包编译之后直接可执行,使用起来非常方便1.Mac Mac下编译Linux, Windows平台的64位可执行程序:CGO_ENABLED0 GOOSlinux GOARCHamd64 go build test.go CGO_ENABLED0 GOOSwindows GOARCHamd64 go build test.go2.L…...
静态页优秀网站/seo排名赚钱
《C4D的十万个为什么》首发于 公众号:苦七君 免费搜索查看更多问题:kuqijun.com 问题: C4D不能加载object文件,obj文件?提示未知文件格式 答案: 要显示文件名后缀看一下,有时候在文件类型里面…...
佛山网站建设方案/百度广告推广怎么做
1057 数零壹 (20 分) 题目链接 算法分析 从字符串第一位开始到最后一位,如果是小写或大写的字母,依次更新sum的值,然后转化为二进制数,统计0和1的个数 代码实现 #include<bits/stdc.h> using namespace std;int main()…...
织梦cms网站搬家/手机一键优化
3、构建模板示例三(ant整合svnant) 实现ant可以从svn服务器上检出代码要使用svnant jar文件。 从网上下载svnant 包,下载地址: http://subclipse.tigris.org/files/documents/906/49042/svnant-1.3.1.zip 将下载好的svnant 解压将…...