论文原文:https://arxiv.org/abs/2211.11436

针对问题:

原始的基于Swin-Transformer的超分辨率网络主要会面临一下两方面问题:

  1. 原始网络其感受野较小。(它使得网络不受到相邻窗口的影响,从而产生失真的图像)
  2. 原始网络具有较大的计算量。

问题说明:

问题A:如图二的h所示,红色方框的特征与邻居特征具有较为明显的不同,从而导致(e)红色方框中出现了失真现象。
问题B:如图(f、g),红色方框与邻居方框色彩有着较为明显的不同,说明网络在推理时没有利用到邻居特征。
上一行本文提出的方法,下一行是原始Swin产生的特征结果图。
N-Gram的定义
N-Gram的概念已经出现在语言模型中,其主要就是将目标词语的前后词语当作辅助信息输入即可。而图像中的N-Gram概念与其类似。

在这里插入图片描述

网络的整体架构

在这里插入图片描述

文章的重点主要为NSTB(架构如下)
在这里插入图片描述

N-Gram Window Partition主要由一下几步构成

  1. 对图像中的块分别进行特征提取,得到特征块(uni-Gram形式)。
  2. 对得到的多个特征快分别计算其WSA即得到了Forward-Gram以及Backward-Gram,其中特征的边缘可能出现前后没有特征值的问题。本文避免利用填充0的方案,对于Forward-Gram填充右下角的特征,填充值为填充边缘左边一格特征或者上面一格的特征值。对于Backward-Gram则填充左上角特征,同样填充值为右边一格或者下面一格的特征值。
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
3. 利用一个卷积网络将Forward-Gram与Backward-Gram进行融合。
4. 将融合后的Gram作为偏置项添加到原始输入的特征中。

实验

引入N-Gram的消融实验
在这里插入图片描述
与其他网络的对比实验
在这里插入图片描述

GitHub 加速计划 / tra / transformers
130.24 K
25.88 K
下载
huggingface/transformers: 是一个基于 Python 的自然语言处理库,它使用了 PostgreSQL 数据库存储数据。适合用于自然语言处理任务的开发和实现,特别是对于需要使用 Python 和 PostgreSQL 数据库的场景。特点是自然语言处理库、Python、PostgreSQL 数据库。
最近提交(Master分支:1 个月前 )
617b2127 22 小时前
144852fb * refactor: benchmarks Based on a discussion with @LysandreJik & @ArthurZucker, the goal of this PR is to improve transformers' benchmark system. This is a WIP, for the moment the infrastructure required to make things work is not ready. Will update the PR description when it is the case. * feat: add db init in benchmarks CI * fix: pg_config is missing in runner * fix: add psql to the runner * fix: connect info from env vars + PR comments * refactor: set database as env var * fix: invalid working directory * fix: `commit_msg` -> `commit_message` * fix: git marking checked out repo as unsafe * feat: add logging * fix: invalid device * feat: update grafana dashboard for prod grafana * feat: add `commit_id` to header table * feat: commit latest version of dashboard * feat: move measurements into json field * feat: remove drop table migration queries * fix: `torch.arrange` -> `torch.arange` * fix: add missing `s` to `cache_position` positional argument * fix: change model * revert: `cache_positions` -> `cache_position` * fix: set device for `StaticCache` * fix: set `StaticCache` dtype * feat: limit max cache len * fix script * raise error on failure! * not try catch * try to skip generate compilation * update * update docker image! * update * update again!@ * update * updates * ??? * ?? * use `torch.cuda.synchronize()` * fix json * nits * fix * fixed! * f**k * feat: add TTNT panels * feat: add try except --------- Co-authored-by: Arthur Zucker <arthur.zucker@gmail.com> 1 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐