One-Shot Generalization in Deep

作者: BookThief | 来源:发表于2017-06-02 17:17 被阅读219次

    一. 引述

    • 传统深度网络:
      数据驱动
      大量迭代
      遇到新数据重新训练
      低效
    • 神经图灵机 (Neural Turing Machine):
      极少量样本便可以进行有效学习
      强大的推理能力
      人类水平的学习

    人们可以从仅仅一个或一小撮样本中学习一个新的概念,而机器学习的标准算法需要成百上千个类似的样本

    二. 人类水平的概念学习(Human Level Concept Learning;one-shot learning)

    • 给定一个单一的对象,人类可以:
      分类新样本;

    生成类似类型的新样本;

    把它解析成部分,并理解它们的关系。

    三. Background

    • 人类善于仅凭单个例子对新概念和经验进行推理。

    • 人类拥有单次泛化的能力:遭遇新概念,理解其结构,然后生成这个概念的有意义的变型。

    • Salakhutdinov et al.(2013)发展了一个结合了玻耳兹曼机和等级狄利克雷过程的概率模型,可以学习层级概念类别,并且提供了强大的生成模型.

    • Lake et al.(2015)等人利用基于组合性(Compositionality)、因果关系(Causality)和学会学习(Learning to learn)的贝叶斯程序学习完成了基于贝叶斯推断的单点学习

    四. Contribution

    • 结合了深度学习的表达能力贝叶斯推断的推测能力

    • 展示了结合注意力机制与推断对生成模型带来的明显提高

    • 模型可以在仅仅看一次实例的情况下生成有意义且多样的样本,提供了一类重要的单点机器学习的一般性模型。

    五. Attention机制

    从源信息中有选择性地筛选出一部分信息被进一步利用的机制。
    人脑的注意力模型,就是说你看到了整幅画面,但在特定的时刻t,你的意识和注意力的焦点是集中在画面中的某一个部分上,其它部分虽然还在你的眼中,但是你分配给它们的注意力资源是很少的

    • Reading attention:分类等判别式任务,从图像或者文字中筛选出一部分我们需要的信息。
    • Writing attention:是指对输出变量的选择性更新

    generative process(生成过程)使用了writing attention机制,在inference process(推理过程)使用了reading attention机制。

    两个机制在概念上有区分,但实际运用过程中遵从一样的计算原理,这篇文章中采用了spatial attention,使用参数 λ 处理输入图像 x 以生成输出

    **κh 和κw 是一维核,⨂是两个核的张量外积,*表示卷积**

    Attention是很神奇的东西,想仔细了解,可以阅读下面的论文:

    • Recurrent Models of Visual Attention (2014.06.24)
    • Show, Attend and Tell: Neural Image Caption Generation with Visual Attention (2015.02.10)
    • DRAW: A Recurrent Neural Network For Image Generation (2015.05.20)
    • Teaching Machines to Read and Comprehend (2015.06.04)
    • Learning Wake-Sleep Recurrent Attention Models (2015.09.22)
    • Action Recognition using Visual Attention (2015.10.12)
    • Recursive Recurrent Nets with Attention Modeling for OCR in the Wild (2016.03.09)
    • Sequence to Sequence Learning using Neural Networks
    • Reasoning about Neural Attention
    • A Neural Attention Model for Abstractive Sentence Summarization
    • Neural Machine Translation by Jointly Learning to Align and Translate

    六. 高斯隐变量模型和变分推断

    隐变量:具有不可直接观测特征综合性变量
    概率模型的中心任务:给定观测(可见)数据变量X的条件下,计算潜在变量Z的后验概率分布P(Z | X)

    **基于隐变量的贝叶斯概率模型**

    EM算法:计算完整数据对数似然函数关于潜在变量后验概率分布的期望

    实际应用中计算后验概率分布或者后验概率分布的期望是不可⾏的 :

    • 潜在空间的维度太⾼,以⾄于⽆法直接计算
    • 后验概率分布的形式特别复杂,从⽽期望⽆法解析地计算
    • 隐含状态的数量可能有指数多个,从⽽精确的计算所需的代价⾼

    公式角度:

    • 如果变量维度过高,积分就会变得非常困难
    • 分布p非常复杂时,积分就完全不可能了

    选择合适的分布q来逼近真实的后验概率分布p!!

    七. 变分推断(variational inference)变分贝叶斯(variational Bayes)

    • Gibbs Sampling这一类Monte Carlo算法,它们的做法就是通过抽取大量的样本估计真实的后验分布;
    • 当后验分布难于求解的时候我们就希望选择一些简单的分布q来近似这些复杂的后验分布p
    • 变分推断限制近似分布的类型,从而得到一种局部最优,但具有确定解的近似后验分布。

    现在问题变成了如何选择一个q(X),使得估算的效率最高:
    1.考虑概率分布q是⼀个受限制的类别
    2.充分限制q可以取得的概率分布的类别范围,使得这个范围中的所有概率分布都是我们可以处理
    3.这个范围充分⼤、充分灵活,使它对真实后验概率分布的⼀个⾜够好的近似

    简单的分布怎么选:(假设各个变量之间相互独立砍断了所有变量之间的依赖关系)
    1.Bethe自由能近似
    2.平均场定理近似(复杂的多元积分变成简单的多个一元积分)

    八. 变分自编码器(Variational Auto-Encoder,VAE)

    **inference model是把观测数据变成隐含描述的encoder** generative model是decoder decoder 以为任何结构——MLP、CNN,RNN 或其他
    想仔细了解变分自编码,变分推断,高斯隐变量的可以阅读下面文献:
    • Kingma et al. Auto-Encoding Variational Bayes.
    • Rezende et al. Stochastic Backpropagation and Approximate Inference in Deep Generative Models.
    • Kingma and Rezende et al. Semi-supervised Learning with Deep Generative Models.
    • Bishop. Pattern Recognition and Machine Learning.
    • Young et al. HTK handbook.
    • Blei et al. Variational Inference: A Review for Statisticians.
    • Doersch. Tutorial on Variational Autoencoders.
    • Kevin Frans. Variational Autoencoders Explained.
    • Sridharan. Gaussian mixture models and the EM algorithm.
    • Blei et al. Variational Inference: Foundations and Modern Methods.
    • Durr. Introduction to variational autoencoders .
    • Xu et al. Variational Autoencoders for Semi-supervised Text Classification.

    此外,《PRML》《MLAPP》《Deep Learning》分别花了一个或两个大章介绍隐变量模型、变分推断、变分贝叶斯、变分自编码器

    九. Sequential Generative Model(顺序生成模型)

    顺序生成模型是VAE模型的一个自然延伸,用T时间段内的一系列隐变量来描述观测变量

    顺序生成模型
    • z(t)表示隐变量,x表示观测数据
    • 隐状态h(t)由前一时刻隐状态h(t-1)和当前时刻隐变量z(t)转化
    • 论文里采用的转化机制是LSTM单元
    • c(t)也是一种隐变量(hiddenvariables),可以把它称为“隐容器”(hidden canvas)
    • ct利用writing attention,reading attention则被利用在z(t)的inference阶段中。

    十. result

    评价指标NLL

    不同难度的推理任务实验
    (1)生成新样本
    a) weak shot-geralization

    **训练数据包括所有的字母,但是测试数据在每一个字母上删除了的三种字符类型。**

    b) strong shot-geralization

    **训练数据是部分字母,测试数据是剩余的字母。图从左到右分别是三种训练-测试数据大小的拆分方式。**
    (2)生成新类型 **训练数据:外文字母表中的10个字母,要求机器生成同属于一个字母表中的类似字母**

    相关文章

      网友评论

        本文标题:One-Shot Generalization in Deep

        本文链接:https://www.haomeiwen.com/subject/ttuufxtx.html