GAN应用案例:音频转图像
文章来源 量子位 报道 | 公众号 QbitAI
CLIP大家都不陌生吧?
由OpenAI于今年1月份推出,能够实现文本描述与图片的精准匹配。
现在,有人“灵机一动”,从CLIP中学习了一种音频表示方法。
用这个方法搭配VQGAN-CLIP,就能实现声音到图像的转变!
比如给它听4种不同的青蛙叫,它就能生成4种青蛙的照片:
△ 篇幅有限,只贴第一张图片对应的音频
给它听不同的教堂铃声,就能生成下面这样的图像:
△ 篇幅有限,只贴第一张图片对应的音频
再来一段更直观的根据音频生成的视频:
嗯,画风有点诡异,彷佛看到了还未被完全驯服的AI的内心世界……
不过这是不是还挺有意思?
那同样都使用VQGAN-CLIP,到底是用文字生成还是用这种音频表示的生成效果更好呢?
这也有一张对比图片:
第一行是VQGAN-CLIP根据文字生成的图片,第二行是根据音频。从左到右分别为:街头音乐、狗叫、小孩玩耍、枪击声。
你觉得哪个更像?
目前,关于这个音频表示方法的研究已被国际声学、语音与信号处理顶会ICASSP接收。
所以,一个音频是怎么和图像连接起来的呢?
从CLIP中提取音频表示方法
下面就来看看这个音频表示方法有何特殊之处。
方法名叫Wav2CLIP,从下图我们可以看出它和CLIP的模型架构非常像。
作为视听(audio-visual)对应模型,Wav2CLIP也有两个编码器,一个是冻结图像编码器(Frozen Image Encoder),一个是音频编码器,分别从视频中提取图像和音频数据进行训练。
冻结图像编码器通过冻结CLIP的图像编码器获得,也就是将CLIP视觉模型的图结构和权重固化到一起后直接加载运行。
音频编码器的预训练通过提取视频中CLIP图像的embedding完成,这也是Wav2CLIP的前置(pretext)任务。
按照CLIP论文的原始方法,研究人员采用对比损失(contrastive loss)进行特征提取,并添加多层感知器(MLP)作为投影层。
交叉投影的损失函数定义如下:
△ f/g:投影函数,L:对比损失函数
添加MLP层的好处有两个:
一是有助于稳定提取过程;
二是能够加强多模态的一致性,因为模型学习到的音频embedding能通过这个投影层恢复CLIP图像的embedding。
总的来说,Wav2CLIP的训练数据为一段视频,利用CLIP的图像编码器(freeze操作)对音频图片和音频进行特征提取,就可以生成“明白”自己应该对应什么图片的音频表示。
所以反过来也可以根据这种表示推出图片,就像我们在开头看到的“青蛙”和“教堂铃声”一样。
具体方法就是通过把引导VQGAN在潜空间中查找与文本提示匹配的图像的CLIP embeddings,替换成Wav2CLIP音频embeddings而完成。
由于Wav2CLIP不同于以往的视听对应模型,它不需要将视觉模型与听觉模型结合起来学习,所以训练方法也就非常轻量级。
再加上Wav2CLIP的embeddings源于CLIP,这意味着它们是与文字对齐的。
所以经过额外层的训练,Wav2CLIP也能执行零样本音频分类、音频字幕和跨模态检索(根据文本搜索音频)等下游任务。
下游任务性能比较
在实验评估中,Wav2CLIP采用ResNet-18的架构作为音频编码器。
首先来看Wav2CLIP在分类和检索任务上的性能。
与非SOTA的音频表示模型相比,Wav2CLIP在几乎所有分类和检索任务中的性能都比YamNet和OpenL3略强,不是最强的地方,表现和第一名差别也不大。
具体在检索任务上,对于音频检索(AR),可以看到Wav2CLIP作为帧级特征提取器的性能很有竞争力。
对于跨模态检索(CMR)任务,Wav2CLIP达到了0.05 MRR,这意味着它能够从前20个音频中检索出正确结果,比OpenL3好不少。
与SOTA模型相比,仍有改进的余地。
不过也情有可原,因为对于大多数SOTA模型来说,编码器在每个任务上都经过专门的训练或微调,而Wav2CLIP只用冻结特征提取器,并且只训练简单的MLP分类器输出答案,也就是所有任务都采用的是同一个音频编码器。
再看在音频字幕任务中与基线比较的结果:
所有指标都略优于基线。
不过作者表示,这不是一个公平的比较,因为他们的编码器和解码器架构都不同,但他们想表明的是:Wav2CLIP很容易适应不同的任务,并且仍然具有合理的性能。
最后再来看一下Wav2CLIP与OpenL3和YamNet使用不同百分比的训练样本进行VGGSound音频分类的结果(VGGSound包含309种10s的YouTube视频)。
可以发现Wav2CLIP碾压OpenL3,和YamNet不相上下——使用10%的训练数据就能达到相同性能。
不过Wav2CLIP和YamNet预训练的前置任务非常不同,YamNet需要大量的标记数据,Wav2CLIP在完全没有人工注释的情况下完成预训练,所以Wav2CLIP更易于扩展。
总的来说,这种音频表示方法进一步训练的模型在上面这3种任务上都能表现出与同类相媲美或更高的性能。
在未来工作方面,研究人员表示将在Wav2CLIP上尝试各种专门为多模态数据设计的损失函数和投影层,并探索从共享embedding空间生成音频,以实现从文本或图像到音频的跨模态生成。
论文地址:
https://arxiv.org/abs/2110.11499
开源代码:
https://github.com/descriptinc/lyrebird-Wav2CLIP
更多音频转图像的demo欣赏:
https://descriptinc.github.io/lyrebird-wav2clip
猜您喜欢:
等你着陆!【GAN生成对抗网络】知识星球!
CVPR 2021专题1:GAN的改进
CVPR 2021 | GAN的说话人驱动、3D人脸论文汇总
CVPR 2021 | 图像转换 今如何?几篇GAN论文
【CVPR 2021】通过GAN提升人脸识别的遗留难题
CVPR 2021生成对抗网络GAN部分论文汇总
经典GAN不得不读:StyleGAN
最新最全20篇!基于 StyleGAN 改进或应用相关论文
超100篇!CVPR 2020最全GAN论文梳理汇总!
附下载 | 《Python进阶》中文版
附下载 | 经典《Think Python》中文版
附下载 | 《Pytorch模型训练实用教程》
附下载 | 最新2020李沐《动手学深度学习》
附下载 | 《可解释的机器学习》中文版
附下载 |《TensorFlow 2.0 深度学习算法实战》
附下载 | 超100篇!CVPR 2020最全GAN论文梳理汇总!
附下载 |《计算机视觉中的数学方法》分享
GAN应用案例:音频转图像相关推荐
- Github大热论文 | U-GAT-IT:基于GAN的新型无监督图像转换
作者丨武广 学校丨合肥工业大学硕士生 研究方向丨图像生成 生成对抗网络(GAN)在这几年的发展下已经渐渐沉淀下来,在网络的架构.训练的稳定性控制.模型参数设计上都有了指导性的研究成果.我们可以看出 1 ...
- 《音频、图像及视频技术》学习笔记
秒懂音视频开发学习笔记 01_移动通信技术的发展 02_重识图片 03_Windows开发环境搭建 04_Qt开发基础 05_重识声音 06_重识音频 07_音频录制01_命令行 08_音频录制02_ ...
- 教大家如何用一行代码打造下载神器!下载全网视频、音频、图像!太牛了!
今天就浓重的给大家介绍一款神器 --you-get 这里说全网可能一点夸张,但如果实际上去使用you-get下载媒体文件(视频.音频.图像),对于主流的平台几乎都可以满足需求. 目前you-get支持 ...
- [Python从零到壹] 六十四.图像识别及经典案例篇之图像傅里叶变换和傅里叶逆变换详解
祝大家新年快乐,阖家幸福,健康快乐! 欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所 ...
- NVIDIA开源DG-Net:用GAN生成高质量行人图像,辅助行人重识别/在线试衣
前几天英伟达开源了DG-Net的源码.让我们来回顾一下这篇CVPR19 Oral的论文. 论文是英伟达(NVIDIA), 悉尼科技大学(UTS), 澳大利亚国立大学(ANU)的研究人员 在CVPR19 ...
- 如何让GAN生成更高质量图像?斯坦福大学给你答案
本文来自斯坦福斯大学,论文在 WGAN 的基础上为 GAN 设计了课程,通过不断地增强判别器的判别能力(增加课程难度),让生成器学习任务更困难,在越来越难的课程下不断进步自己的生成能力,从而实现高质量 ...
- 登顶Github趋势榜,非监督GAN算法U-GAT-IT大幅改进图像转换效果
点击我爱计算机视觉标星,更快获取CVML新技术 近日,GAN的大家族又出一位重量级新成员U-GAT-IT,图像转换效果提升明显,原作者开源代码这两天登顶Github趋势榜,引起极大关注. U-GAT- ...
- 设计灵感案例|教你图像在海报中可以如何摆放!
通过改变图像的表现方式,合理运用重复.解构.变形.拼贴.逆向等手法,将海报设计中的图像运用反常规思维加以表现.通常制作一些特别的元素或是装饰,将主题表现得更加生动形象和与众不同,达到吸引人眼球的目的, ...
- 详解StyleGAN进化过程!看GAN如何一步步控制图像生成风格?
点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...
最新文章
- Java常用多线程辅助工具---countdownLatch
- 第八课.Python面向对象(二)
- linux内核参数优化
- 接口自动化框架(java)--2.接口用例POST请求,参数配置
- css预处理器sass使用教程(多图预警)
- Could not load driverClass ${jdbc.driver}
- 频繁模式增长Frequent-Pattern Growth(FP-Growth)
- 华为拿百亿资金给员工分红,预计每股1.58元
- 「SF图片上传不清晰」解决方案
- 一些经久不衰的linux 视频教程列表
- 勤哲cad服务器注册机,勤哲CAD服务器
- 汇川plc c语言,汇川小型PLC梯形图编程教程(十):输入输出继电器X和Y元件及常开常闭触点介绍...
- 【WPA三维路径规划】基于matlab狼群算法无人机三维路径规划【含Matlab源码 167期】
- leecode-C语言实现-1619. 删除某些元素后的数组均值
- fir1截止频率计算_如果给定通带截止频率和阻带截止频率以及阻带最小衰减,如何用窗函数法设计线性相位低通滤波器?请写出设计...
- 本地项目的一个git仓库损坏如何恢复
- 图片点击放大,你的网页也能做到!
- Akka 指南 之「消息传递可靠性」
- Unity Shader - ddx/ddy偏导函数测试,实现:锐化、高度图、Flat shading应用、高度生成法线
- windows更换壁纸cmd命令,window修改注册表更换壁纸,已设壁纸缓存地址
热门文章
- 学人工智能电脑配置要求高吗?多少钱能搞定?
- 「github资料」40个Python可视化图表案例(附零基础学习资料)
- 英语口语248之每日十句口语
- python文字图片拼接_Python-PIL-拼接图片
- 科学计算机按次方怎么在按括号,如何使用多功能计算器?
- 关于ARM的一些简介
- js创建对象并赋值其属性
- jmeter并发测试教程_jmeter进行并发测试教程
- matlab模拟夫琅禾费单缝衍射,夫琅禾费单缝衍射光强分布MATLAB分析【毕业论文】.doc...
- 一时兴起之matlab学习记录