美文网首页
论文学习:Learning to Generate Time-L

论文学习:Learning to Generate Time-L

作者: LittleSasuke | 来源:发表于2018-09-02 20:48 被阅读62次

    Welcome To My Blog
    这篇论文收录于KDD2018,有关视频生成的,论文有个项目主页,题目翻译过来大致是:使用多阶段动态生成对抗网络学习生成time-lapse(延时)视频.
    多阶段具体来说是两阶段,

    1. 第一阶段(Base-Net): 注重每一帧内容的真实性
    2. 第二阶段(Refine-Net): 注重帧与帧之间物体的运动

    下图是模型整体框架,叫做MD-GAN
    MD-GAN由base-net和refine-net构成

    1.png

    Base-Net

    Generator,G1

    G1采用的是encoder-decoder这种结构,具体是采用了多个3D卷积层-反卷积层对;同时还采用了skip connection(构成了U型架构)的策略,3D卷积和skip connection 对视频内容进行了很好的建模.
    skip connections用于连接与encoder对应的decoder的feature maps,从而使decoder再次利用encoder的信息,减少了信息损失.
    skip connection是通过identity mapping(恒等映射)实现的

    Discriminator,D1

    D1采用的是G1中encoder的网络,除了最后一层用的是sigmoid激活函数而不是ReLU了

    损失函数

    Lcon是像素级别的L1距离,L1可以使画面更加sharpness


    7.png

    作用

    base-net保证内容的sharpness

    Refine-Net

    Generator,G2

    G2的网络和G1很像,只不过G2中移除了部分skip connections,具体的是溢出了 “conv1” and “deconv6”, “conv2” and “deconv5”之间的skip connection
    因为使用G1中那么多的skip connection对视频的动态性不能很好的建模

    Discriminator,D2

    D2和D1的结构一样,只不过有3个D2,分别是Y1,Y2,Y对应的D2
    D2的重点是Gram matrix和ranking loss

    Gram matrix 建模帧与帧之间物体运动的动态性

    在refine-net中,作者引入Gram matrix作为运动特征的表示(motion feature representation),用来辅助G2学到帧与帧之间的动态特性
    具体怎么用?

    1. 首先从D2中提取特征,具体的就是以D2的某一层的输出作为特征,论文中说的是:features of the first and third convolutional layers (after the ReLU layer) of discriminator D2,也就是第一个和第三个卷积层+ReLU激活后的输出作为特征.
    2. 接下来用这些特征去计算Gram矩阵,这样做的好处是加入了丰富的时间信息,而动作是随着时间进行的,所以也就是加入了训练集视频片段的动作信息.
      Gram矩阵的计算如论文所示,这其实是求提取自D2中的特征之间的协方差矩阵,计算得到的Gram矩阵将会用于ranking loss.


      2.png

    ranking loss

    ranking loss是论文的一大特点,计算得到的Gram矩阵将会用于ranking loss.
    D2的结构和D1一样,针对D2中某一层的特征,ranking loss计算公式如下所示,这个公式引用自ContrastingLoss-Generative Semantic Manipulation with Contrasting这篇论文,原论文用的是l2范式,这里用的是l1范式,也许是因为l1范式对于视频生成任务更合适,确切地说是因为l1范式会提升生成视频的sharpness(清晰度).进一步观察公式,如果ranking loss小,说明:g(Y2;l)接近g(Y;l),同时g(Y2;l)远离g(Y1;l),换句话说就是生成的视频Y2更接近ground truth Y,同时比起base-net的输出Y1,refine-net的Y2有了进一步的提升(动作上的提升)

    3.png

    损失函数

    最终的ranking loss是把所有层的结果加起来(论文中是用了D2的第一层和第三层卷积层输出)


    4.png

    注意到三个D2(Y,Y1,Y2)组成的ranking loss充当Discriminator的一部分

    refine-net的损失函数,Lcon是像素级别的L1距离,L1可以是画面更加sharpness


    6.png

    算法流程

    最大化D,最小化G


    5.png

    作用

    在保证视频内容的清晰度(sharpness)的基础上,提升画面的动态性

    总结

    1. 论文提出了MD-GAN,MD-GAN有两个网络:base-net和refine-net
    2. 使用base-net保证内容的sharpness
    3. 使用refine-net提升画面的动态性
    4. Generator中的3D卷积与skip connection(通过恒等映射实现)算是亮点
    5. D2中的Gram matrix和ranking loss算是重点

    相关文章

      网友评论

          本文标题:论文学习:Learning to Generate Time-L

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