2024 11 19 LoRA IR
Daily Paper 002 第二天!!🥳 Title: LoRA-IR: Taming Low-Rank Experts for Efficient All-in-One Image Restoration (ArXiv 2024) code ⭐⭐⭐⭐ Abstract: Prompt based all-in-one IR方法在处理真实场景中的复杂多变的退化时仍然存在挑战。文章提出了LoRA-IR,分为两部分:degradation-guided pretraining和parameter-efficient finetuning。 Introduction 和之前的All-in-One方法类似,说明单一任务的模型很难在现实中不可预测和多变的环境中有效推广,并指出了之前的Prompt Learning IR的缺点:仅仅依靠轻量级的Prompt和static shared network很难捕捉到不同退化类型的细节和specific patterns. 并且不同退化类型之间的潜在相关性和共有的特征没有广泛利用. 针对上面的问题,提出了LoRA-IR. 与其他方法的不同之处在于,LoRA-IR基于CLIP生成degradation prompt. 但是CLIP侧重于影像的全局语义信息,在应用于low-level vision时会出现性能不佳的情况. 为了解决这一问题,文章提出了DG-Router,将影像分为两个分支输入CLIP,下采样获取全局的信息,用sliding-window获取局部信息。 网络的训练分为两个阶段:1)用DG-Router得到的退化信息指导图像复原网络预训练;2)用LoRA对第一阶段得到的复原网络进行微调(基于MoE构建了一组low-rank restoration experts). 不同的专家模型增强了网络捕捉特定退化知识的能力,他们之间的协作则使网络具备了学习各种退化之间相关性的能力 (Different experts enhance the network’s ability to capture degradationspecific knowledge, while their collaboration equips the network with the capability to learn correlations between various degradations)。 Related Work 文章从IR model,VLM以及Parameter-efficient Fine-tuning (PEFT)三个方面介绍了相关工作。我这里就重点看了一下PEFT工作(对应LoRA)。 ...
2024-11-18 X-Restormer
Daily Paper 001 今天是每日一篇论文计划实施的第一天,主要是为了激励自己看论文(论文看得太少了😭). Title: A Comparative Study of Image Restoration Networks for General Backbone Network Design (ECCV 2024) code ⭐⭐⭐ Abstract 文章主要对之前的通用图像修复框架(i.e. MPRNet, NAFNet, SwinIR, Restormer, Uformer)进行了任务通用性分析,指出在某个任务(SR)上表现好的方法在其他任务上表现往往逊色于其他方法。 针对这一问题,文章设计了一种新的通用图像复原Backbone。 Introduction 首先造成图像复原框架任务表现差异性的主要原因在于,不同的图像修复任务所涉及的退化特征不同。文章选取了image SR, denoising, deblurring, deraining和dehazing五类任务(他们的退化特性各不相同)进行了五种backbone的通用性分析, 这五种backbone又可以分为三类经典的框架,U-Net框架(Uformer, Restormer), 残差框架(SwinIR, NAFNet), 多阶段渐进式框架(MPRNet). 并且还包含了卷积,空间自注意力(spatial self-attention),转置自注意力(transposed self-attention). 图中可以看到Restormer在各项任务的表现都较好,因此作者对Restormer的结构优势进行了分析: Restormer的U-Net架构可以处理大尺寸的输入,对于处理大区域的退化是必要的 Restormer的转置自注意力(transposed self-attention)利用channel-wise feature作为token,实现了channel之间的信息交互和全局感受野的映射 depth-wise conv也激活了网络的空间信息交互能力 而Restormer的缺陷在于其空间映射能力不足,以至于在SR任务上稍逊于SwinIR。作者也对其进行了分析,认为这种不足来自于UNet架构自身的对于细节重建的缺陷以及depth-wise conv相对于空间自注意力的较弱的空间映射能力。 因此一个很好的方法是在Restormer中加入空间自注意力,用HAT中的overlapping cross-attention blocks替换一半的transposed self-attention. (其实感觉文章的创新性并不高,无非又是缝合模块, 主要还是得把文章的故事讲好!!!!) 🧐 Related Work related work就先不放在这里了,占篇幅,hhhhh。主要是介绍了图像复原网络领域内之前的工作,然后另外用了一节解释了文章的方法更侧重于不同领域的通用性设计,与其他方法不同。 Benchmark 这里首先分析了上文中提到的五类图像复原任务的退化模型,包括: image Super-Resolution $ I_{GT} \in \mathbb{R}^{H\times W\times 3}$表示ground truth image,$ I_{LQ} \in \mathbb{R}^{h\times w\times 3}$表示退化图像. 图像超分辨率任务的退化模型就可以表示为: ...
Diffusion Models
Preliminary Knowledge 条件概率公式 条件概率的一般形式: $$ P(A,B,C)=P(C|B,A)P(B,A)=P(C|B,A)P(B|A)P(A) $$$$P(B,C|A)=P(C|B,A)P(B|A)$$马尔可夫条件:下一状态的概率分布只能由当前状态决定,与前面的状态无关。 基于马尔可夫条件,在马尔可夫链A->B->C中: $$ P(A,B,C)=P(C|B)P(B|A)P(A) $$$$ P(B,C|A)=P(C|B)P(B|A) $$KL散度 KL散度是衡量两个概率分布之间差异的一种度量方法,它衡量了从一个分布到另一个分布所需的额外信息。KL散度的定义是建立在熵Entropy的基础上的,熵Entropy的定义如下: 若一个离散随机变量$X$的可能取值为$\left [x_1,x_2,x_3,…\right ]$,它们的概率分布为$p_i=p(X=x_i)$,则$X$的熵为: $$H(X)=-\sum_{i=1}^{n}p_i\log p_i$$ 规定当$p_i=0$时,$p_i\log p_i=0$ 若有两个随机变量$X$和$Y$,它们的概率分布分别为$p(x)$和$q(x)$,则$p$和$q$的交叉熵为: $$H(p,q)=-\sum_{i=1}^{n}p(x)\log q(x)$$ 在信息论中,交叉熵可认为是对预测分布$q(x)$用真实分布$p(x)$来进行编码时所需要的信息量大小 因此我们可以通过交叉熵和信息熵来推到相对熵即KL散度: $$ \begin{align} D_{KL}(p||q)&=H(p,q)-H(p) \nonumber\\ &=-\sum_{i=1}^{n}p(x)\log q(x)+\sum_{i=1}^{n}p(x)\log p(x) \nonumber\\ &=-\sum_{i=1}^{n}p(x)\log \frac{q(x)}{p(x)} \nonumber \end{align} $$ KL散度的特点: 非对称性:$D_{KL}(p||q)\neq D_{KL}(q||p)$ 非负性:$D_{KL}(p||q)\geq 0$ 对于两个单一变量的高斯分布$p=\mathcal{N}(\mu_1,\sigma_1^2)$和$q=\mathcal{N}(\mu_2,\sigma_2^2)$而言,正态分布的概率密度函数为: $$ \begin{align} p(x)&=\frac{1}{\sqrt{2\pi}\sigma_1}exp({-\frac{(x-\mu_1)^2}{2\sigma_1^2}}) \nonumber\\ q(x)&=\frac{1}{\sqrt{2\pi}\sigma_2}exp({-\frac{(x-\mu_1)^2}{2\sigma_2^2}}) \nonumber \end{align} $$ 将上述的KL散度转换为连续随机变量的形式:$D_{KL}(p||q)=\int[p(x)\log(p(x))-p(x)\log(q(x))]dx$, 将概率密度函数代入分别计算两项, 具体计算过程可以参考KL divergence between two univariate Gaussians, 其中关键在于$var(x)=E(x^2)-E(x)^2, E(x^2)=\sigma^2+\mu^2$: $$ \begin{align} \int p(x)\log(p(x))dx &= -\frac{1}{2}[1+\log(2\pi\sigma_1^2)] \nonumber\\ \int p(x)\log(q(x))dx &= -\frac{1}{2}\log(2\pi\sigma_2^2)-\frac{\sigma_1^2+(\mu_1-\mu_2)^2}{2\sigma_2^2} \nonumber\\ \end{align} $$因此KL散度为: ...