关于DeepJSCC的思考
复现DeepJSCC后,有一些想法
这是关于图像语义传输的文章,发送和接收端都采用端到端联合设计的思路
当数据集为32×32×3的CIFAR10时:
encoder:16×16×16——>32×8×8——>32×8×8——>32×8×8——>16×8×8 最后一个16控制压缩率,目前1/6
decoder:32×8×8——>32×8×8——>32×8×8——>16×16×16——>3×32×32
当数据集为224×224×3的ImageNet时:
encoder:16×112×112——>32×56× ...
JSCC中为什么无法使用复数信道
背景 JSCC(Joint Source Channel Coding)联合信源信道编解码主要使用DNN实现E2E的通信系统,为了适应信道,就需要将信道嵌入到网络中训练。如果使用信道冲激响应复数表示信道,那么势必要在网络中涉及复数运算。
而我们知道目前的深度学习框架都不支持复数微分,这很难解决,因此在JSCC等涉及到将信道嵌入到网络中的情况时,都无法使用复数信道。
解决? 在Pytorch中,之前尝试过解决这个问题,使用with torch.no_grad()或者.detach()将复数运算脱离网络,然后再将计算结果通过requires_grad添加到计算图中,但实际效果非常差,这或许 ...
torch实现不同维度对应位乘法
在使用pytorch写深度学习网络时,经常需要将不同维度的数据对应位置进行相乘/除,下面简单介绍解决方法
123456789101112131415161718192021import numpy as npa = np.array( [[1,2],[2,3]])b = np.array( [[5,6],[7,8]])c = np.array( [a,b])d = np.array( [4.2426,13.1909])output = np.transpose(np.multiply(np.transpose(c),1/d))print(output)
...
torchvision
一、简介 tochvision主要处理图像数据,包含一些常用的数据集、模型、转换函数等。torchvision独立于PyTorch,需要专门安装。
torchvision主要包含以下四部分:
torchvision.models: 提供深度学习中各种经典的网络结构、预训练好的模型,如:Alex-Net、VGG、ResNet、Inception等。
torchvision.datasets:提供常用的数据集,设计上继承 torch.utils.data.Dataset,主要包括:MNIST、CIFAR10/100、ImageNet、COCO等。
torchvision.tran ...
tensorboard使用
本文主要介绍PyTorch框架下的可视化工具Tensorboard的使用
面向第一次接触可视化工具的新手<其实是备忘>
之前用了几天visdom,用起来很方便,但是画的图显得很乱,所以花了一晚上把代码里的visdom都改成了tensorboard。
Tensorboard安装原本是tensorflow的可视化工具,pytorch从1.2.0开始支持tensorboard。之前的版本也可以使用tensorboardX代替。
在使用1.2.0版本以上的PyTorch的情况下,一般来说,直接使用pip安装即可。
1pip install tensorboard
这样直接安装之后,有可能 ...