淘优惠

淘优惠

Deep Learning Trends @ ICLR 2016:深度学习趋势@ICLR2016(译)

热门文章 0

这是一篇译文,原文作者是Tomasz Malisiewicz大神,这是他在博客Tombone’s Computer Vision Blog的文章,一发出来就引起这个圈子的广泛关注。微信公众号“机器之心”在第一时间提供了译文,我仔细看了一下,发现这篇译文翻译的有些地方比较拗口,还有遗漏的地方。所以,我在这里还是按照自己的理解翻译一下,时间精力所限,到最后有一节就略过了。希望能够互相学习,共同探讨。 以下是译文。

Started by the youngest members of the Deep Learning Mafia [1], namely Yann LeCun and Yoshua Bengio, the ICLR conference is quickly becoming a strong contender for the single most important venue in the Deep Learning space. More intimate than NIPS and less benchmark-driven than CVPR, the world of ICLR is arXiv-based and moves fast.

Today’s post is all about ICLR 2016. I’ll highlight new strategies for building deeper and more powerful neural networks, ideas for compressing big networks into smaller ones, as well as techniques for building “deep learning calculators.” A host of new artificial intelligence problems is being hit hard with the newest wave of deep learning techniques, and from a computer vision point of view, there’s no doubt that deep convolutional neural networks are today’s “master algorithm” for dealing with perceptual data.
Deep Powwow in Paradise? ICLR 2016 was held in Puerto Rico.
Whether you’re working in Robotics, Augmented Reality, or dealing with a computer vision-related problem, the following summary of ICLR research trends will give you a taste of what’s possible on top of today’s Deep Learning stack. Consider today’s blog post a reading group conversation-starter.

Part I: ICLR vs CVPR Part II: ICLR 2016 Deep Learning Trends Part III: Quo Vadis Deep Learning?

由“深度学习帮”最年轻的两位大牛:Yann LeCun与Yoshua Bengio发起的ICLR 会议已经成为深度学习领域最有竞争力的会议。比NIPS会议更加精通这块,也比CVPR更少的以“数据集基准驱动”,ICLR以arXiv为基础,发展的很快。 今天的这篇文章全是关于ICLR 2016的。我将着重突出深度学习领域对于更深更强大神经网络的构建,神经网络压缩问题,以及“神经网络计算器”的构建技术问题。一系列新的人工智能问题正是最新的深度学习技术浪潮所要攻克的难关,从计算机视觉的角度来看,深度卷积神经网络正毫无疑问的成为解决感知数据的“最主流算法”。 当你从事机器人、增强现实行业,或者处理计算机视觉相关的问题,下面对ICLR研究趋势的总结会带你品尝最顶尖深度学习所带来的各种可能性。你可以考虑将这篇文章作为你们阅读小组讨论的引子。 下面是这篇文章的结构: Part I: ICLR vs CVPR:第一部分,会将ICLR与CVPR进行一次比较; Part II: ICLR 2016 Deep Learning Trends:第二部分介绍ICLR 2016会议上深度学习的趋势; Part III: Quo Vadis Deep Learning?:第三部分,深度学习将要往何处去?

Last month’s International Conference of Learning Representations, known briefly as ICLR 2016, and commonly pronounced as “eye-clear,” could more appropriately be called the International Conference on Deep Learning. The ICLR 2016 conference was held May 2nd-4th 2016 in lovely Puerto Rico. This year was the 4th installment of the conference C the first was in 2013 and it was initially so small that it had to be co-located with another conference. Because it was started by none other than the Deep Learning Mafia, it should be no surprise that just about everybody at the conference was studying and/or applying Deep Learning Methods. Convolutional Neural Networks (which dominate image recognition tasks) were all over the place, with LSTMs and other Recurrent Neural Networks (used to model sequences and build “deep learning calculators”) in second place. Most of my own research conference experiences come from CVPR (Computer Vision and Pattern Recognition), and I’ve been a regular CVPR attendee since 2004. Compared to ICLR, CVPR has a somewhat colder, more-emprical feel. To describe the difference between ICLR and CVPR, Yan LeCun, quoting Raquel Urtasun (who got the original saying from Sanja Fidler), put it best on Facebook.

上个月,国际会议“Learning Representation”,简称 ICLR 2016(通常发音“eye-clear”),更合适的名称是深度学习国际会议。ICLR 2016会议与5月2日到5月4日在可爱的波多黎各举办。今年是这个会议的第四年了 ―― 第一次举办是在2013年,并且开始规模很小,得与其他会议共用一个地方。因为这是由深度学习帮派举办的会议,所以毫无疑问的每个在会议上的都是学习使用深度学习方法的。卷积神经网络(统治了图像识别领域)在会议上到处可见,第二名的就是LSTM以及其他递归神经网络(RNN,用来对序列数据进行建模,以及创建“深度学习计算器”)。我的大多数会议经验来自于CVPR(Computer Vision and Pattern Recognition),我从2004年开始就是CVPR参会的常客。相比较于ICLR,CVPR给人更加冰冷冷,更加注重实证的感觉。为了形容ICLR以及CVPR之间的区别,Yan LeCun引用Raquel Urtasun 的话(最开始是从Sanja Fidler传来的),并把它推送到了Facebook上:

CVPR: 深度学习能为我做什么?
ICLR: 我能为深度学习做什么?

The ICLR 2016 conference was my first official powwow that truly felt like a close-knit “let’s share knowledge” event. 3 days of the main conference, plenty of evening networking events, and no workshops. With a total attendance of about 500, ICLR is about 1/4 the size of CVPR. In fact, CVPR 2004 in D.C. was my first conference ever, and CVPRs are infamous for their packed poster sessions, multiple sessions, and enough workshops/tutorials to make CVPRs last an entire week. At the end of CVPR, you’ll have a research hangover and will need a few days to recuperate. I prefer the size and length of ICLR.

ICLR 2016会议是我第一次感觉到这是一场严谨的“让我们来分享知识”的正式会议。3天的主会议,有许多晚上的网络活动,没有研讨会。总共参会人数大约500人,ICLR的规模只有CVPR的1/4。实际上,2004年在D. C.举办的CVPR是我第一次参加这种会议,CVPR因为它们海报展览会、各种各样的其他会议,以及足够多的研讨会,能让CVPR持续一周。在CVPR的最后,你会感觉到一种“宿醉”的感觉,也会使你花费数天来“恢复原状”。我更喜欢ICLR的会议规模以及持续的时间长度。

CVPR and NIPS, like many other top-tier conferences heavily utilizing machine learning techniques, have grown to gargantuan sizes, and paper acceptance rates at these mega conferences are close to 20%. It not necessarily true that the research papers at ICLR were any more half-baked than some CVPR papers, but the amount of experimental validation for an ICLR paper makes it a different kind of beast than CVPR. CVPR’s main focus is to produce papers that are ‘state-of-the-art’ and this essentially means you have to run your algorithm on a benchmark and beat last season’s leading technique. ICLR’s main focus it to highlight new and promising techniques in the analysis and design of deep convolutional neural networks, initialization schemes for such models, and the training algorithms to learn such models from raw data.

CVPR以及NIPS,像其他许多使用机器学习的顶级会议一样,已经成长为规模巨大的会议,并且这些顶级会议的论文录取率接近20%. ICLR上的论文比CVPR上的论文“不成熟”,这并不一定正确。CVPR着重与论文的实验效果要达到“state-of-the-art”,这就意味着你需要将你的算法在标准数据集上测试,并且效果要超过上一赛季领先的算法。ICLR着重的强调的是深度卷积神经网络的新的分析与设计,对于模型的初始化设计,以及从原始数据训练这些模型的训练算法。

Yann LeCun and Yoshua Bengio started this conference in 2013 because there was a need to a new, small, high-quality venue with an explicit focus on deep methods. Why is the conference called “Learning Representations?” Because the typical deep neural networks that are trained in an end-to-end fashion actually learn such intermediate representations. Traditional shallow methods are based on manually-engineered features on top of a trainable classifier, but deep methods learn a network of layers which learns those highly-desired features as well as the classifier. So what do you get when you blur the line between features and classifiers? You get representation learning. And this is what Deep Learning is all about.

Yann LeCun与Yoshua Bengio从2013年开始ICLR会议

DeepChem教程27: 使用强化学习来玩Pong

deepvocal教程,deepchem 环境配置,deep cycle,deep chest

本教程我们展示一下用强化学习来训练agentPong。这个任务并不与化学直接相关,但是视频游戏可以展示强化学习技术。

安装

你应该用pip install 'gym[atari]'安装gym。(我们需要修饰器因为我们将使用atari游戏)。

In?[?]:

!curl -Lo conda_installer.py https://raw.githubusercontent.com/deepchem/deepchem/master/scripts/colab_install.py

import conda_installer

conda_installer.install()

!/root/miniconda/bin/conda info -e

In?[?]:

!pip install --pre deepchem

import deepchem

deepchem.__version__

In?[?]:

!pip install 'gym[atari]'

强化学习

强化学习调用agent与环境交互。这种情况下,环境是视频游戏,agent是玩家。通过不断试错,agent学习到了执行一些任务(赢得游戏)的策略。随着游戏的进行,它接收环境反馈的rewards,告诉它做得好坏。这种情况下,如果得分了就是接收了正的reward,如 果另一个玩家得分了它就得了负的reward

第一步是创建执行环境的任务。幸运的是,OpenAI Gym已经提供了Pong的实施(以及其它的强化学习任务) DeepChem?GymEnvironment类提供了一个容易的方法来从OpenAI Gym使用环境。我们只需直接使用它,但是这个例子中我们子类化它并预处理屏幕图像以使学习更容易。

In?[?]:

import deepchem as dc

import numpy as np

class PongEnv(dc.rl.GymEnvironment):

? def __init__(self):

? super(PongEnv, self).__init__('Pong-v0')

? self._state_shape = (80, 80)

? @property

? def state(self):

? # Crop everything outside the play area, reduce the image size,

?

nlp图表制作 nlp技术自动生成图表

nlp流程图,nlp报告,nlp知识图谱实战,nlp表象系统

作者:汪诚愚、刘婷婷

宣物莫大于言,存形莫善于画。--【晋】陆机

多模态数据(文本、图像、声音)是人类认识、理解和表达世间万物的重要载体。近年来,多模态数据的爆炸性增长促进了内容互联网的繁荣,也带来了大量多模态内容理解和生成的需求。与常见的跨模态理解任务不同,文到图的生成任务是流行的跨模态生成任务,旨在生成与给定文本对应的图像。这一文图生成的任务,极大地释放了AI的想象力,也激发了人类的创意。典型的模型例如OpenAI开发的DALL-E和DALL-E2。近期,业界也训练出了更大、更新的文图生成模型,例如Google提出的Parti和Imagen。

然而,上述模型一般不能用于处理中文的需求,而且上述模型的参数量庞大,很难被开源社区的广大用户直接用来Fine-tune和推理。本次,EasyNLP开源框架再次迎来大升级,集成了先进的文图生成架构Transformer+VQGAN,同时,向开源社区免费开放不同参数量的中文文图生成模型的Checkpoint,以及相应Fine-tune和推理接口。用户可以在我们开放的Checkpoint基础上进行少量领域相关的微调,在不消耗大量计算资源的情况下,就能一键进行各种艺术创作。

EasyNLP是阿里云机器学习PAI 团队基于 PyTorch 开发的易用且丰富的中文NLP算法框架,并且提供了从训练到部署的一站式 NLP 开发体验。EasyNLP 提供了简洁的接口供用户开发 NLP 模型,包括NLP应用 AppZoo 、预训练模型 ModelZoo、数据仓库DataHub等特性。由于跨模态理解和生成需求的不断增加,EasyNLP也支持各种跨模态模型,特别是中文领域的跨模态模型,推向开源社区。例如,在先前的工作中,EasyNLP已经对中文图文检索CLIP模型进行了支持(看这里)。我们希望能够服务更多的 NLP 和多模态算法开发者和研究者,也希望和社区一起推动 NLP /多模态技术的发展和模型落地。本文简要介绍文图生成的技术,以及如何在EasyNLP框架中如何轻松实现文图生成,带你秒变艺术家。本文开头的展示图片即为我们模型创作的作品。

下面以几个经典的基于Transformer的工作为例,简单介绍文图生成模型的技术。DALL-E由OpenAI提出,采取两阶段的方法生成图像。在第一阶段,训练一个dVAE(discrete variational autoencoder)的模型将256×256的RGB图片转化为32×32的image token,这一步骤将图片进行信息压缩和离散化,方便进行文本到图像的生成。第二阶段,DALL-E训练一个自回归的Transformer模型,将文本输入转化为上述1024个image token。

由清华大学等单位提出的CogView模型对上述两阶段文图生成的过程进行了进一步的优化。在下图中,CogView采用了sentence piece作为text tokenizer使得输入文本的空间表达更加丰富,并且在模型的Fine-tune过程中采用了多种技术,例如图像的超分、风格迁移等。ERNIE-ViLG模型考虑进一步考虑了Transformer模型学习知识的可迁移性,同时学习了从文本生成图像和从图像生成文本这两种任务。其架构图如下所示:随着文图生成技术的不断发展,新的模型和技术不断涌现。举例来说,OFA将多种跨模态的生成任务统一在同一个模型架构中。DALL-E 2同样由OpenAI提出,是DALL-E模型的升级版,考虑了层次化的图像生成技术,模型利用CLIP encoder作为编码器,更好地融入了CLIP预训练的跨模态表征。Google进一步提出了Diffusion Model的架构,能有效生成高清大图,如下所示:在本文中,我们不再对这些细节进行赘述。感兴趣的读者可以进一步查阅参考文献。

由于前述模型的规模往往在数十亿、百亿参数级别,庞大的模型虽然能生成质量较大的图片,然后对计算资源和预训练数据的要求使得这些模型很难在开源社区广泛应用,尤其在需要面向垂直领域的情况下。在本节中,我们详细介绍EasyNLP提供的中文文图生成模型,它在较小参数量的情况下,依然具有良好的文图生成效果。

模型架构

模型框架图如下图所示:考虑到Transformer模型复杂度随序列长度呈二次方增长,文图生成模型的训练一般以图像矢量量化和自回归训练两阶段结合的方式进行。

图像矢量量化是指将图像进行离散化编码,如将256×256的RGB图像进行16倍降采样,得到16×16的离散化序列,序列中的每个image token对应于codebook中的表示。常见的图像矢量量化方法包括:VQVAE、VQVAE-2和VQGAN等。我们采用VQGAN在ImageNet上训练的f16_16384(16倍降采样,词表大小为16384)的模型权重来生成图像的离散化序列。

自回归训练是指将文本序列和图像序列作为输入,在图像部分,每个image token仅与文本序列的tokens和其之前的image tokens进行attention计算。我们采用GPT作为backbone,能够适应不同模型规模的生成任务。在模型预测阶段,输入文本序列,模型以自回归的方式逐步生成定长的图像序列,再通过VQGAN decoder重构为图像。

开源模型参数设置

模型配置pai-painter-base-zhpai-painter-large-zh
参数量(Parameters)202M433M
层数(Number of Layers)1224
注意力头数(Attention Heads)1216
隐向量维度(Hidden Size)7681024
文本长度(Text Length)3232
图像序列长度(Image Length)16 x 1616 x 16
图像尺寸(Image Size)256 x 256256 x 256
VQGAN词表大小(Codebook Size)1638416384

模型实现

在EasyNLP框架中,我们在模型层构建基于minGPT的backbone构建模型,核心部分如下所示:

VQModel的Encoding阶段过程为:

VQModel的Decoding阶段过程为:

Transformer采用minGPT进行构建,输入图像的离散编码,输出文本token。前向传播过程为:

在预测阶段,输入为文本token, 输出为256*256的图像。首先,将输入文本预处理为token序列:

逐步生成长度为16*16的图像离散token序列:

最后,我们调用VQModel的Decoding过程将这些图像离散token序列转换为图像。

模型效果

我们在四个中文的公开数据集COCO-CN、MUGE、Flickr8k-CN、Flickr30k-CN上验证了EasyNLP框架中文图生成模型的效果。同时,我们对比了这个模型和CogView、DALL-E的效果,如下所示:其中,1)MUGE是天池平台公布的电商场景的中文大规模多模态评测基准()。为了方便计算指标,MUGE我们采用valid数据集的结果,其他数据集采用test数据集的结果。

2)CogView源自

3)DALL-E模型没有公开的官方代码。已经公开的部分只包含VQVAE的代码,不包括Transformer部分。我们基于广受关注的版本的代码和该版本推荐的checkpoits进行复现,checkpoints为2.09亿参数,为OpenAI的DALL-E模型参数量的1/100。(OpenAI版本DALL-E为120亿参数,其中CLIP为4亿参数)。

我们分别在自然风景数据集COCO-CN上Fine-tune了base和large级别的模型,如下展示了模型的效果:

示例1:一只俏皮的狗正跑过草地

示例2:一片水域的景色以日落为背景

我们也积累了阿里集团的海量电商商品数据,微调得到了面向电商商品的文图生成模型。效果如下:

示例3:女童套头毛衣打底衫秋冬针织衫童装儿童内搭上衣

示例4:春夏真皮工作鞋女深色软皮久站舒适上班面试职业皮鞋

除了支持特定领域的应用,文图生成也极大地辅助了人类的艺术创作。使用训练得到的模型,我们可以秒变“中国国画艺术大师”,示例如下所示:

更多的示例请欣赏:

欣赏了模型生成的作品之后,如果我们想DIY,训练自己的文图生成模型,应该如何进行呢?以下我们简要介绍在EasyNLP框架对预训练的文图生成模型进行Fine-tune和推理。

安装EasyNLP

用户可以直接参考链接的说明安装EasyNLP算法框架。

数据准备

首先准备训练数据与验证数据,为tsv文件。这一文件包含以制表符 分隔的两列,第一列为索引号,第二列为文本,第三列为图片的base64编码。用于测试的输入文件为两列,仅包含索引号和文本。

为了方便开发者,我们也提供了转换图片到base64编码的示例代码:

下列文件已经完成预处理,可用于测试:

模型训练

我们采用以下命令对模型进行

我们提供base和large两个版本的预训练模型,pretrain_model_name_or_path分别为alibaba-pai/pai-painter-base-zh和alibaba-pai/pai-painter-large-zh。

训练完成后模型被保存到https://segmentfault.com/a/finetuned_model/。

模型批量推理

模型训练完毕后,我们可以将其用于图像生成,其示例如下:

结果存储在一个tsv文件中,每行对应输入中的一个文本,输出的图像以base64编码。

使用Pipeline接口快速体验文图生成效果

为了进一步方便开发者使用,我们在EasyNLP框架内也实现了Inference Pipeline功能。用户可以使用如下命令调用Fine-tune过的电商场景下的文图生成模型:

除了电商场景,我们还提供了以下场景的模型:

  • 自然风光场景:“pai-painter-scenery-base-zh”
  • 中国山水画场景:“pai-painter-painting-base-zh”在上面的代码当中替换“pai-painter-commercial-base-zh”,就可以直接体验,欢迎试用。对于用户Fine-tune的文图生成模型,我们也开放了自定义模型加载的Pipeline接口:

在这一期的工作中,我们在EasyNLP框架中集成了中文文图生成功能,同时开放了模型的Checkpoint,方便开源社区用户在资源有限情况下进行少量领域相关的微调,进行各种艺术创作。在未来,我们计划在EasyNLP框架中推出更多相关模型,敬请期待。我们也将在EasyNLP框架中集成更多SOTA模型(特别是中文模型),来支持各种NLP和多模态任务。此外,阿里云机器学习PAI团队也在持续推进中文多模态模型的自研工作,欢迎用户持续关注我们,也欢迎加入我们的开源社区,共建中文NLP和多模态算法库!

Github地址:

  1. Chengyu Wang, Minghui Qiu, Taolin Zhang, Tingting Liu, Lei Li, Jianing Wang, Ming Wang, Jun Huang, Wei Lin. EasyNLP: A Comprehensive and Easy-to-use Toolkit for Natural Language Processing. arXiv
  2. Aditya Ramesh, Mikhail Pavlov, Gabriel Goh, Scott Gray, Chelsea Voss, Alec Radford, Mark Chen, Ilya Sutskever. Zero-Shot Text-to-Image Generation. ICML 2021: 8821-8831
  3. Ming Ding, Zhuoyi Yang, Wenyi Hong, Wendi Zheng, Chang Zhou, Da Yin, Junyang Lin, Xu Zou, Zhou Shao, Hongxia Yang, Jie Tang. CogView: Mastering Text-to-Image Generation via Transformers. NeurIPS 2021: 19822-19835
  4. Han Zhang, Weichong Yin, Yewei Fang, Lanxin Li, Boqiang Duan, Zhihua Wu, Yu Sun, Hao Tian, Hua Wu, Haifeng Wang. ERNIE-ViLG: Unified Generative Pre-training for Bidirectional Vision-Language Generation. arXiv
  5. Peng Wang, An Yang, Rui Men, Junyang Lin, Shuai Bai, Zhikang Li, Jianxin Ma, Chang Zhou, Jingren Zhou, Hongxia Yang. Unifying Architectures, Tasks, and Modalities Through a Simple Sequence-to-Sequence Learning Framework. ICML 2022
  6. Aditya Ramesh, Prafulla Dhariwal, Alex Nichol, Casey Chu, Mark Chen. Hierarchical Text-Conditional Image Generation with CLIP Latents. arXiv
  7. Van Den Oord A, Vinyals O. Neural discrete representation learning. NIPS 2017
  8. Esser P, Rombach R, Ommer B. Taming transformers for high-resolution image synthesis. CVPR 2021: 12873-12883.
  9. Chitwan Saharia, William Chan, Saurabh Saxena, Lala Li, Jay Whang, Emily Denton, Seyed Kamyar Seyed Ghasemipour, Burcu Karagol Ayan, S. Sara Mahdavi, Rapha Gontijo Lopes, Tim Salimans, Jonathan Ho, David J. Fleet, Mohammad Norouzi: Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding. arXiv
  10. Jiahui Yu, Yuanzhong Xu, Jing Yu Koh, Thang Luong, Gunjan Baid, Zirui Wang, Vijay Vasudevan, Alexander Ku, Yinfei Yang, Burcu Karagol Ayan, Ben Hutchinson, Wei Han, Zarana Parekh, Xin Li, Han Zhang, Jason Baldridge, Yonghui Wu. Scaling Autoregressive Models for Content-Rich Text-to-Image Generation. arXiv

阿里灵杰回顾● 阿里灵杰:阿里云机器学习PAI开源中文NLP算法框架EasyNLP,助力NLP大模型落地● 阿里灵杰:预训练知识度量比赛夺冠!阿里云PAI发布知识预训练工具● 阿里灵杰:EasyNLP带你