[CVPR 2019] Generalized Zero- and Few-Shot Learning via Aligned Variational Autoencoders

本文介绍了一种名为对齐VAE的方法,该方法在广义少样本学习中表现突出,能够学习图像和语义共享的隐含空间,并为未见类生成隐含特征。通过跨域对齐和分布对齐,该模型优化了变分自编码器(VAE)的性能,特别是在处理少量样本时。

广义少样本学习之对齐VAE

本文亮点:学习图像和语义共享的隐含空间,为未见类生成隐含特征。


论文下载

CVPR 2019


VAE 变分自编码器

变分自编码器是一种生成模型。它包含两部分,编码器和解码器。首先,编码器在样本 x x x 上学习一个样本特定的正态分布;然后,从这个正态分布中随机采样一个变量;最后,解码器将这个变量作为输入,然后生成一个样本 x ^ \hat x x^

模型

跨域对齐、分布对齐变分自编码器

Cross and Distribution Aligned VAE

basic M VAE losses VAE损失

L V A E = ∑ i M E q ϕ ( z ∣ x ) [ log ⁡ p 0 ( x ( i ) ∣ z ) ] − β D K L ( q ϕ ( z ∣ x ( i ) ) ∣ ∣ p θ ( z ) ) (2) \mathcal{L}_{VAE} = \sum_i^M \mathbb{E}_{q_{\phi (z|x)}} [\log{p_0(x^{(i)}|z)}] \\ -\beta D_{KL}(q_{\phi}(z|x^{(i)})||p_{\theta}(z)) \tag{2} LVAE=iMEqϕ(zx)[logp0(x(i)z)]βDKL(qϕ(zx(i))pθ(z))(2)

Cross-Alignment (CA) Loss 跨域对齐损失

L C A = ∑ i M ∑ j ≠ i M ∣ x ( j ) − D j ( E i ( x ( i ) ) ) ∣ (3) \mathcal{L}_{CA} = \sum_i^M \sum_{j \neq i}^M |x^{(j)} - D_j(E_i(x^{(i)}))| \tag{3} LCA=iMj=iMx(j)Dj(Ei(x(i)))(3)

Distribution-Alignment (DA) Loss 分布对齐损失
分布i和分布j的2-Wasserstein 距离的闭形式解如下:

W i j = [ ∣ ∣ μ i − μ j ∣ ∣ 2 2 + T r ( ∑ i ) + T r ( ∑ j ) − 2 ( ∑ i 1 2 ∑ i ∑ j 1 2 ) 1 2 ] 1 2 (4) W_{ij} = [||\mu_i - \mu_j||_2^2\\ + Tr(\sum_i) + Tr(\sum_j) - 2 (\sum_i^{\frac{1}{2}} \sum_i \sum_j^{\frac{1}{2}})^{\frac{1}{2}}]^{\frac{1}{2}} \tag{4} Wij=[μiμj22+Tr(i)+Tr(j)2(i21ij21)21]21(4)

由于编码器预测对角协方差矩阵,这是交换的,这个距离可以简化:

W i j = ( ∣ ∣ μ i − μ j ∣ ∣ 2 2 + ∣ ∣ ∑ i 1 2 − ∑ j 1 2 ∣ ∣ F r o b e n i u s 2 ) 1 2 (5) W_{ij} = (||\mu_i - \mu_j||_2^2 + ||\sum_i^{\frac{1}{2}} - \sum_j^{\frac{1}{2}}||_{Frobenius}^{2})^{\frac{1}{2}} \tag{5} Wij=(μiμj22+i21j21Frobenius2)21(5)

所以,对于M个域DA损失如下:
L D A = ∑ i M ∑ j ≠ i M W i j (6) \mathcal{L}_{DA} = \sum_i^M \sum_{j \neq i}^M W_{ij} \tag{6} LDA=iMj=iMWij(6)

CADA-VAE loss

L C A D A − V A E = L V A E + γ L C A + δ L D A (7) \mathcal{L}_{CADA-VAE} = \mathcal{L}_{VAE} + \gamma \mathcal{L}_{CA} + \delta \mathcal{L}_{DA} \tag{7} LCADAVAE=LVAE+γLCA+δLDA(7)


参考

变分自编码器 - 蜉蝣之翼

关于2024年CVPR会议上提到的**ZERO-G: Zero-Shot Illumination-Guided Joint Denoising**研究,该论文主要探讨了一种新颖的去噪方法,通过利用光照信息实现更优的图像恢复效果。ZERO-G是一种零样本(zero-shot)学习框架,不需要依赖于预先收集的训练数据集[^1]。 ### 核心技术点 - **Illumination Guidance**:在图像去噪过程中,引入光照估计作为辅助输入,以指导模型更好地保留图像中的结构和细节。 - **Zero-Shot Learning**:采用零样本学习策略,使模型能够在没有真实干净图像作为监督信号的情况下进行训练[^1]。 - **Joint Denoising**:将噪声去除与光照校正过程联合优化,从而提升整体图像质量。 这种方法在计算机视觉领域具有重要意义,特别是在低光环境下拍摄的图像处理方面,可以有效提高图像清晰度并减少人工干预的需求。 ### 应用场景 ZERO-G的应用范围包括但不限于: - 手机摄影中的实时图像增强 - 监控视频的后处理 - 医学成像的质量提升 - 虚拟现实(VR)和增强现实(AR)中的图像优化 由于其无需大量标注数据的特点,使得该技术易于部署到各种资源受限的设备上。 ### 示例代码 以下是一个简化版的概念验证代码示例,用于演示如何结合光照估计进行图像去噪: ```python import cv2 import numpy as np def estimate_illumination(image): # 简单的光照估计函数(例如取图像的平均亮度) gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) illumination_map = cv2.GaussianBlur(gray, (5, 5), 0) return illumination_map def denoise_image_with_illumination(noisy_image, illumination_map): # 使用光照图作为引导进行去噪 # 这里仅作为示例,实际应用中可能需要更复杂的算法 normalized_illumination = illumination_map / illumination_map.max() enhanced_image = noisy_image * normalized_illumination[:, :, np.newaxis] return enhanced_image.astype(np.uint8) # 加载含噪图像 noisy_img = cv2.imread('path_to_noisy_image.jpg') illumin_map = estimate_illumination(noisy_img) denoised_img = denoise_image_with_illumination(noisy_img, illumin_map) cv2.imwrite('denoised_image.jpg', denoised_img) ``` 此代码片段展示了如何基于简单的光照估计来改善图像去噪的效果。然而,在实践中,特别是对于像ZERO-G这样的先进方法,通常会涉及到深度学习模型的设计以及更为复杂的光照-噪声联合建模过程。
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值