【006】面向 6G 的深度图像语义通信模型

news2024/11/29 4:31:21

摘要

目前的语义通信模型在处理图像数据方面仍有可改善的部分,包括有效的图像语义编解码、高效的语义模型训练和精准的图像语义评估。为此,提出了一种深度图像语义通信(DeepISC)模型。首先采用基于 vision transformer 的自编码器(ViTA)网络实现高质量的图像语义编解码;接着采用自编码器实现信道编解码,保证语义在信道上的传输;然后利用判别器网络(DSN)和 ViTA 的双网络架构协同训练,提高重建图像的语义精度;最后针对不同的下游视觉任务提出不同的图像语义评估指标。仿真结果表明,相较于其他方案,DeepISC 可以更有效地还原传输图像的语义特征,使重建图像在各个下游任务中都展现出与原图像相同或相近的语义结果。

大致模型框架:

  1. 基于 vision transformer构造的 ViTA 网络来实现图像语义编解码
  2. 利用 DSN 和 ViTA 的双网络架构来进行协同训练,提高重建图像的语义精度
  3. 设计了一种通用的多任务图像语义评估机制(基于图像分类、目标检测、特征提取、PSNR等)

0, 引言

文本语义通信:xie等人提出基于深度学习的语义通信系统用于文本传输。通过恢复句子的含义最大化系统容量和最小化语义错误,使用迁移学习加速模型训练。与此同时,提出精简分布式语义通信系统,实现低复杂度文本传输,使IoT设备与云/边缘的数据传输在语义级别。

图像语义通信:

  • Huang提出基于生成对抗网络的图像语义编码方式
  • Patwa提出了一种压缩视觉数据的方法
  • Sun等提出一种基于像素语义的联合源通道编码方法
  • Wang等引入了对抗性损失来优化基于深度学习的联合源通道编码;设计了一个语义先验注意力模块来自适应地增强语义特征

现有图像语义通信模型不足:

  1. 图像语义编解码器:基于卷积的图像语义编码器 难以兼顾图像的全局语义特征和局部语义特征
  2. 图像语义模型训练:基于单网络架构和传统损失函数的图像语义训练模型容易丢失细节,模型训练过程中陷入局部极值, 重建图像失真。
  3. 图像语义评估指标

本文工作:
1.设计了vision transformer的自编码器。
vision transformer————作为编码器和解码器
深度卷积神经网络(DNN)————组成全连接自编码器作为信道编码器和解码器

2. 设计了指导ViTA学习的判别器网络(DSN),与ViTA形成双网络架构协同训练,增强ViTA学习能力。DSN对 ViTA 生成的重建图像和原图像识别,根据识别结果计算对抗损失函数,指导ViTA 的更新

3. 提出了一种针对下游任务的多任务图像语义评估机制.原图像与重构图像在三方面表现(图像分类、目标检测、特征提取)

1. 系统模型

在这里插入图片描述
困难:

  • 如何联合设计图像语义编码器和信道编码器
  • 如何克服图像语义噪声,进行有效语义传输

1.1 图像语义编解码器

  1. 信源与信道编码
    在这里插入图片描述

  2. 信源与信道解码
    接收端的信号:y=hx+n
    h:瑞利衰落信道的信道增益。 n:加性白高斯噪声(AWGN)

  3. 图像语义模型的目标函数:均方误差(MSE)
    在这里插入图片描述

1.2 信道编码器和解码器

互信息一般用来衡量 2 个变量之间的相关性
互信息可以为训练接收机提供额外的信息
本文考虑最大化图像语义通信中信道输入和输出间的互信息
在这里插入图片描述
注:p(x)为发射信号 x 的边缘概率分布; p(y)为接收信号 y 的边缘概率分布;p(x, y ) 为 x 和 y 的联合概率分布;p(y|x) 为在给定 x 的条件下得到 y 的概率分布。

1.3 图像语义评估

基于某个特定的下游任务来对图像语义通信进行语义层面的评估。(例如图像分类、目标检测、语义分割、行为跟踪)

2.深度图像语义通信系统

2.1 DeepISC模型组成:

(1)面向图像的语义通信网络 ViTA
ViTA 的目标是实现高效的图像语义特征信息提取、传输以及图像语义特征重建
(2)指导ViTA的判别器网络DSN。
DSN对ViTA生成的重建图像和原图像进行识别,根据识别的结果计算相应的对抗损失函数,以此来指导 ViTA 的更新。DSN告诉语义差异,是ViTA朝着更好的方向学习。而且DSN与ViTA同步更新。
(3) 图像语义评估
图像分类任务——————根据分类结果计算分类偏差值(CLSD)
目标检测任务——————根据目标检测结果计算检测准确值(DTA)
特征提取任务——————根据特征向量之间的余弦距离计算特征相似值(FAS)
最后根据原始图像与重建图像的综合表现评估传输准确性
在这里插入图片描述

2.2面向图像语义的自编码器网络 ViTA

1. vision transformer
vision transformer 编码器的核心是多头注意力层
在这里插入图片描述
在这里插入图片描述
Q:为查询向量。
K:与 Q 相匹配的匹配向量
V:信息向量
Wmha :多头注意层的权重

  1. 信道编码层
    由两层隐藏单元数不同的 DNN 组成:
    第一层:激活函数采用 ReLU 函数
    第二层:激活函数采用tanh 函数
    在这里插入图片描述

2.3 判别器网络DSN

单网络和传统的损失函数进行训练,存在陷入局部最优的风险
本文提出一种使用 DSN 和 ViTA 组成双网络架构进行协同训练
在这里插入图片描述4
4层CNN + 4层InstanceNorm层(做归一化)
对抗损失函数为:
在这里插入图片描述
注:D(·)表示DSN模型的输出

模型的目标

  • DSN 的目标是能够分辨出原图像 m 和 ViTA 生成的重建图像ˆm ,就是将 m 识别为真,将 ˆm 识别为假。

  • ViTA 则是努力生成逼真的重建图像 ˆm 以混淆DSN 的判断

  • ViTA 和 DSN 协同训练的总目标可以表示为
    在这里插入图片描述
    在对抗损失函数的基础上在引入L1损失,用来指导ViTA更新
    在这里插入图片描述
    指导ViTA更新的损失函数为:(λ是调节 L1权重大小的系数)
    在这里插入图片描述
    更新 DSN 的损失函数:
    在这里插入图片描述
    xm 代表输入的图像; ym 代表该图像的标签值

2.4 多任务图像语义评估机制

(1)分类偏差值
对原图像和重建图像分别进行识别,根据分类器的识别结果计算得出分类偏差值。
VCLSD越小说明原图像 m 和重建图像 ˆm 在分类任务上的语义越接近
(2)检测准确值
使用目标检测器分别对原图像和重建图像进行目标检测,根据检测结果计算得出两者的检测准确值
VDTA 越大说明原图像 m 和 重建图像 ˆm 在目标检测任务上的语义越接近
(3)特征相似值
首先使用一个特征提取器对原图像和重建图像分别进行特征提取,然后计算两者的特征距离(余弦距离)
VFAS 越大说明两者的特征相似度越高

3. 仿真分析

3.1 实验配置

  1. 数据集:Kaggle 的公开数据集 BIRDS-400
  2. 训练和测试环境:Ubuntu 20.04+CUDA 10.2
  3. 编程语言:Python
  4. 深度学习框架:PyTorch1.8.0
    (1)图像分类任务:
    分类器网络:ResNet50、VGG16 和 AlexNet
    (2)目标检测任务:
    YOLOv4作为公共检测器
    (3)特征提取任务
    使用ResNet50、VGG16 和 AlexNet 作为特征提取网络
    (4)基于 PSNR 的语义通信评估

PSNR 对原图像和基于不同通信模型生成的重建图像进行评估,判断语义通信中图像的失真程度
变分自编码器(VAE)、卷积自编码器(CAE)、无DSN指导的ViTA作为基准模型
模型训练回合数:400、数据批次:32 、学习率:0.0001、采用Adam优化器

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

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

相关文章

数字IC后端设计实现中的Post-mask ECO应该怎么做?

在数字IC后端设计实现中,我们经常会涉及到芯片需要做Function ECO。常见的Function ECO可以分为pre mask ECO和post mask ECO两种。因此,作为一个数字IC后端工程师,必须熟练掌握这两种Function ECO的实现流程及其实现技巧。 两者的区别在于&…

栈和队列【数据结构】

1、栈 &#xff08;1&#xff09;Stack.h #pragma once #include <stdio.h> #include <assert.h> #include <stdlib.h> #include <stdbool.h>typedef int STDataType;typedef struct Stack {STDataType* a;int top;int capacity; }ST;void STInit(ST*…

[JVM] 5. 运行时数据区(2)-- 程序计数器(Program Counter Register)

一、概述 JVM中的程序计数器&#xff08;Program Counter Register&#xff09;是对物理PC寄存器的一种抽象模拟。它是一块很小的内存空间&#xff0c;几乎可以忽略不记。也是运行速度最快的存储区域。在 JVM 规范中&#xff0c;每个线程都有它自己的程序计数器&#xff0c;是…

.nvmrc无效

背景 既然你已经使用了nvm那么他的功能我就不介绍了。但是使用场景我与开发小伙伴探讨了一下发现很多问题。你的nvm使用方法真的正确吗&#xff1f; 问题&#xff1a;假设现在有10个项目对应10个不同的node版本&#xff0c;你应该怎么来管理呢&#xff1f; 同学1&#xff1a; …

LT8619C是一款高性能HDMI转TTL/BT656/BT601/BT1120加2PORT LVDS,支持高达4K30HZ的分辨率。

LT8619C • 概述&#xff1a; Lontium的LT8619C是一款高性能的HDMI/双模式DP接收器芯片&#xff0c;符合HDMI 1.4规范&#xff0c;支持HDCP1.4解码&#xff0c;对HDMI的支持分辨率高达4Kx2K30Hz。TTL输出可支持RGB、BT656、BT1120&#xff0c;支持最多24位RGB或BT656/BT1120输…

动手学深度学习——多层感知机(原理解释+代码详解)

目录 一、多层感知机1. 隐藏层1.1 线性模型可能会出错1.2 在网络中加入隐藏层1.3 从线性到非线性1.4 通用近似定理 2. 激活函数2.1 ReLU函数2.2 sigmoid函数2.3 tanh函数 3. 小结 二、多层感知机的从零开始实现2.1 初始化模型参数2.2 激活函数2.3 模型2.4 损失函数2.5 训练 三、…

【数据结构刷题】消失的数字和轮转数组

目录 一.消失的数字 方法一:异或全部元素 方法二:利用等差数列求和-该数组全部元素之和。 二.轮转数组 题型1:实现一个函数&#xff0c;可以左旋字符串中的k个字符。 写法1:暴力求解 根据该题写出右旋转 写法2&#xff1a;三步旋转法(左逆序&#xff0c;右逆序&#xff0c;整体…

2023年7月字节前端青训营入营题目记录(大题)

前言&#xff1a; 不一定是完整的题目内容&#xff0c;但意思差不多是一个意思 1.实现一个url解析成对象的函数&#xff1a; function ParseParams(url: string): Record<string, any> {const paramsstr url.split("?")[1];const paramsArr paramsstr.spl…

IDEA中把导航栏的字体放大

IDEA中如何把导航栏的字体放大&#xff1f; 选择File--Settings--Appearance&#xff0c;找到下面的size,选择自己想要的字体大小后点击 OK 即可。 字体大了果然看的更舒服了~写代码都有动力了哈哈哈哈 服了~

MySQL基本语句

目录 一、MySQL数据库管理 查看数据库信息 查看数据库中的表信息use 数据库名 #切换到书库中 显示数据表的结构&#xff08;字段&#xff09; 二、SQL语句 1.创建新的数据库 2.创建新的表 3.增加&#xff08;insert&#xff09; 4.删除 4.1清空表 4.2删除表 5.修改…

SpringMVC的数据响应-直接回写json字符串

一般我们操作对象&#xff0c;将对象转变为json 这时导入json 转换工具的包 包1 包2-json数据绑定 包3 返回的就是json字符串你直接返回就行了 返回一个json格式的字符串 直接回写就加这个res.... 内部字符串要进行相应的转意 能够看到json字符串 能不能你封装对象&#xff0c…

jenkins+python+pytest+selenium 自动化执行脚本并发送报告

目录 安装jenkins jenkins 安装网址&#xff1a; 傻瓜式安装 配置环境 键path 或者随便填 构建后操作 在jenkins上展示html的报告&#xff0c;需要添加一个HTML Publisher plugin插件 查看报告显示丢失了css样式 加载css样式丢失解决&#xff1a;https://www.cnblogs.com/…

如何使用Dom4J解析XML文档

文章目录 XML解析的方式使用Dom4J解析XML文档Dom4J结合XPath解析XML 最近在手写MyBatis的源码&#xff0c;在写到XMLConfigBuilder的时候&#xff0c;其中要解析xml文件构建Configuration。在MyBatis的早期版本中使用了DOM4J来解析配置文件和映射文件。但是从3.x版本开始,MyBat…

数据结构——绪论

基本概念 数据&#xff1a;数据是信息的载体&#xff0c;对客观事物的字符表示。 数据元素&#xff1a;数据的基本单位&#xff0c;通常作为一个整体进行考虑和处理。 数据项&#xff1a; 一个数据元素由多个数据项组成&#xff0c;数据项是数据元素不可分割的最小单位。 数据…

流程图如何制作?几个流程图实用制作方法教给你

流程图如何制作&#xff1f;流程图是一种重要的图表类型&#xff0c;通常用于描绘系统、流程或程序的步骤和关系。它们在各种领域都有广泛的应用&#xff0c;包括工程、科学、商业和教育等。本文将介绍一些制作流程图的实用方法&#xff0c;以及一些快速、易于使用的工具。 制作…

k8s之Pod容器资源限制

目录 一、Pod 容器的资源限制二、CPU 资源单位三、内存资源单位四、为本地临时性存储设置请求和限制五、总结 一、Pod 容器的资源限制 当定义 Pod 时可以选择性地为每个容器设定所需要的资源数量。 最常见的可设定资源是 CPU 和内存大小&#xff0c;以及其他类型的资源。 当为…

MySQL索引事务与存储引擎

MySQL索引事务与存储引擎 索引概念索引作用副作用索引场景创建索引原则索引分类 事务概念:特性事务隔离级别 MYSQL存储引擎概念常用的存储引擎MyISAMInnoDB 索引 概念 是一个排序的列表&#xff0c;存储着索引值和这个值所对应的物理地址无须对整个表进行扫描&#xff0c;通过…

Vant安装及必坑

vant官网地址 Vant 4 - A lightweight, customizable Vue UI library for mobile web apps. 1.通过npm安装&#xff1a; 注意vue2和vue3不同&#xff0c;版本过高会报错 vue2 npm i vantlatest-v2或者npm i vant -Svue3 npm i vant或者npm i vantnext -S 备注&#xff1a…

为什么信创国产化替代 必备 “开放式ETL产品“(下篇)

信创国产化通俗来讲&#xff0c;就是在核心芯片、基础硬件、操作系统、中间件、数据服务器等领域实现信创产业的国产替代。ETL技术 属于基础软件类中间件技术。发展自己研制的安全可靠的能够保证国家信息安全的设备&#xff0c;随着信息安全问题日益突出&#xff0c;信息安全已…

小程序 点击view内部元素 不传参

点击 内部图片和文字 type 得到的是空 无法传递参数 解决办法: 用 currentTarget 代替 target