内容简介:基于无监督的方式理解高维数据并将信息浓缩为有用的表示一直是深度学习领域研究的关键问题。
From:Google AI 编译:T.R
基于无监督的方式理解高维数据并将信息浓缩为有用的表示一直是深度学习领域研究的关键问题。 其中一种方法是利用非耦合表示(disentangled representations)模型来捕捉场景中独立变化的特征。 如果能够实现对于各种独立特征的描述,机器学习系统就可以用于真实环境中的导航,机器人或无人车利用这种方法可以将环境解构成一系列元素,并利用通用的知识去理解先前未见过的场景。虽然非监督解耦方法已被广泛应用于好奇驱动的探索、抽象推理、视觉概念学习和域适应的强化学习中,但最近进展却无法让我们清晰了解不同方法的性能和方法的局限。
为了深入探索这一问题,谷歌的研究人员在ICML2019上发表了一篇大规模深入研究非监督非耦合表示的论文”Challenging Common Assumptions in the Unsupervised Learning of Disentangled Representations”, 对近年来绝大多数的非监督解耦表示方法进行探索、利用2.5GPU年的算力在7个数据集上训练了12000多个模型。 基于大规模的实验结果,研究人员对这一领域的一些假设产生了质疑,并为解耦学习的未来发展方向给出了建议。与此同时,研究人员还同时发布了研究中所使用的 代码和上万个预训练模型,并封装了disentanglement_lib 供研究者进行实验复现和更深入的探索。
理解非耦合表示
为了更好地理解非耦合表示的本质,让我一起来看看下面动图中每个独立变化的元素。下面的每一张图代表了一个可以被编码到矢量表示中的因子,它可以独立控制图像中每个语义元素的属性。例如第一个可以控制地板的颜色,第二个则控制墙的颜色,最后一个则控制图片的视角。
解耦表示的目标在于建立起一个能够独立捕捉这些特征的模型,并将这些特征编码到一个表示矢量中。下面的10个小图展示了基于FactorVAE方法学习十维表示矢量的模型,图中展示 了每一维对于图像对应信息的捕捉。从各个图中可以看出模型成功地解耦了地板、墙面的颜色,但是左下角的两个图片可以看到物体的颜色和大小的表示却依然相关没有解耦。
大规模研究的发现
在直观地理解了解耦表示之后,让我们来看看科学家在研究中发现了什么。这一领域基于变分自编码器提出了各种各样的非监督方法来学习非耦合表示,同时给出了许多不同的性能度量方法,但却缺乏一个大规模的性能测评和对比研究。为此研究人员构建了一个大规模、公平性、可复现的实验基准,并系统的测试了六种不同的模型(BetaVAE, AnnealedVAE, FactorVAE, DIP-VAE I/II and Beta-TCVAE)和解耦性能度量方法(BetaVAE score, FactorVAE score, MIG, SAP, Modularity and DCI Disentanglement),在7个数据集上进行了12800个模型的训练后,研究人员们有了颠覆过去的发现:
首先,是非监督学习的方式。研究人员在大量的实验后发现没有可靠的证据表明模型可以通过无监督的方式学习到有效的解耦表示,随机种子和超参数对于结构的影响甚至超过了模型的选择。换句话说,即使你训练的大量模型中有部分是解耦的,但这些解耦表示在不基于基准标签的情况下是无从确认和识别的。此外好的超参数在不同的数据集上并不一致,这意味着没有归纳偏置(inductive biases)是无法实现非监督解耦学习的(需要把对数据集的假设考虑进模型中)。
对于实验中评测的模型和数据集,研究人员表示无法验证解耦对于downstream tasks任务有利的假设(这一假设认为基于解耦表示可以利用更少的标签来进行学习)。
下图展示了研究中的一些发现,可以看到随机种子在运行中的影响超过了模型的选择(左)和正则化(右)的强度(更强的正则化并没有带来更多的解耦性能)。这意味着很差超参数作用下的好模型也许比很好超参数作用下的坏模型要好得多。
未来研究方向
基于这些全新的发现和研究结果,研究人员为解耦表示领域提出了四个可能的方向:
1.在没有归纳偏置的条件下给出非监督解耦表示学习的理论结果是不可能的,未来的研究应该更多地集中于归纳偏置的研究以及隐式和显示监督在学习中所扮演的角色;
2.为横跨多数据集的非监督模型寻找一个有效的归纳偏置将会成为关键的开放问题;
3.应该强调解耦学习在各个特定领域所带来的实际应用价值,潜在的应用方向包括机器人、抽象推理和公平性等;
4.在各种多样性数据集上的实验应该保证可重复性。
代码和 工具 包
为了让其他研究人员更好的复现结构,论文同时还发布了 disentanglement_lib工具包,其中包含了实验所需的模型、度量、训练、预测以及可视化代码工具。可以在命令行中用不到四行代码就能复现是论文中所提到的模型,也可以方便地改造来验证新的假设。最后 disentanglement_lib库易于拓展和集成,易于创建新的模型,并用公平的可复现的比较进行检验。
由于复现所有的模型训练需要2.5GPU年的算力,所以研究人员同时开放了论文中提到的一万多个预训练模型可以配合前述工具使用。
如果想要使用这个工具可以在这里找到源码:
https://github.com/google-research/disentanglement_lib
其中包含了以下内容:
模型: BetaVAE, FactorVAE, BetaTCVAE, DIP-VAE
度量: BetaVAE score, FactorVAE score, Mutual Information Gap, SAP score, DCI, MCE
数据集: dSprites, Color/Noisy/Scream-dSprites, SmallNORB, Cars3D, and Shapes3D
预训练模型: 10800 pretrained disentanglement models
依赖包: TensorFlow, Scipy, Numpy, Scikit-Learn, TFHub and Gin
git clone https://github.com/google-research/disentanglement_lib.git #下载git cd disentanglement_lib #转到源码目录 pip install .[tf_gpu] #安装依赖文件 dlib_tests #验证安装
随后下载对应的数据文件:
dlib_download_data#在.bashrc写入路径 export DISENTANGLEMENT_LIB_DATA=<path to the data directory>
?
是0-12599间的模型序号:
dlib_reproduce --model_num=<?>
进行评测:
dlib_aggregate_results
相信这篇文章的研究结果和代码工具将为接下来的研究提供更为明确的方向和便捷的途径,促进非耦合表示学习领域的发展。
ref:
https://github.com/google-research/disentanglement_libPaper: https://arxiv.org/abs/1811.12359
3Dshapes: https://github.com/deepmind/3d-shapes
Inductive_bias: https://en.wikipedia.org/wiki/Inductive_bias
http://cvlab.cse.msu.edu/project-dr-gan.html
https://blog.csdn.net/qq_31239495/article/details/82659327
https://www.cnblogs.com/SuperLab/p/9837664.html
https://www.sohu.com/a/145751637_741733
https://dribbble.com/shots/5779059-Keep-Your-Family-Connected-With-Todoist
https://dribbble.com/shots/5572411-Design-Genome-project-Intuit
-The End-
将门 是一家 以专注于 发掘、加速及投资技术驱动型创业公司 的新型 创投机构 ,旗下涵盖 将门创新服务、将门技术社群以及将门创投基金。将门成立于2015年底,创始团队由 微软创投在中国的创始团队 原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。
将门创新服务 专注于使创新的技术落地于真正的应用场景,激活和实现全新的商业价值,服务于行业领先企业和技术创新型创业公司。
将门技术社群 专注于帮助技术创新型的创业公司提供来自产、学、研、创领域的核心技术专家的技术分享和学习内容,使创新成为持续的核心竞争力。
将门创投基金 专注于投资通过技术创新激活商业场景,实现商业价值的初创企业,关注技术领域包括 机器智能、物联网、自然人机交互、企业计算。 在三年的时间里,将门创投基金已经投资了包括量化派、码隆科技、禾赛科技、 宽拓科技、 杉数科技、迪英加科技等数十家具有高成长潜力的技术型创业公司。
如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务, 欢迎发送或者推荐项目给我“门”: bp@thejiangmen.com
点击右上角,把文章分享到朋友圈
将门创投
让创新获得认可!
微信:thejiangmen
bp@thejiangmen.com
点击“ ❀在看 ”,让更多朋友们看到吧~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 降低模块间耦合
- Go 语言如何解决代码耦合
- 原生骨架库模版功能上线,零耦合。
- 使用 spring 的 IOC 解决程序耦合
- 通过剔除上下文依赖减弱封装的耦合性
- 谈微服务间接口强耦合问题解决(200706)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
实用Common Lisp编程
Peter Seibel / 田春 / 人民邮电出版社 / 2011-10 / 89.00元
由塞贝尔编著的《实用Common Lisp编程》是一本不同寻常的Common Lisp入门书。《实用Common Lisp编程》首先从作者的学习经过及语言历史出发,随后用21个章节讲述了各种基础知识,主要包括:REPL及Common Lisp的各种实现、S-表达式、函数与变量、标准宏与自定义宏、数字与字符以及字符串、集合与向量、列表处理、文件与文件I/O处理、类、FORMAT格式、符号与包,等等。......一起来看看 《实用Common Lisp编程》 这本书的介绍吧!