zoukankan      html  css  js  c++  java
  • 吴恩达深度学习笔记(十) —— 神经风格迁移

    主要内容:

    一.神经风格迁移简介

    二.计算content cost

    三.计算style cost

     

    一.神经风格迁移简介

    1.神经风格迁移(Neural Style Transfer),简称为NST,就是以一张图为内容基础,以另一张图为风格基础,生成一张新的图:

    2.NST使用一张已经训练好的神经网络VGG network作为算法的基础。可知神经网络的浅层学习一些比较低级的特征诸如边界和纹理的等,深层学些一些复杂抽象的特征。为了学习得比较精确但又不过于苛刻,我们一般选择VGG network的中间的隐藏层作为最后的输出(以此计算代价函数,然后进行反向传播)。

    3.NST的大概步骤是:

    1)加载训练好的VGG神经网络

    2)随机初始化生成图像G

    3)输入内容图像C,进行前向传播,计算content cost;输入风格图像G,进行前向传播,计算style cost。最后统计总的cost

    4)根据计算出的cost,进行反向传播,更新生成图像G的每个像素点

    5)重复3)4)步一定的次数

    6)输出最终的申城图像G

    二.计算content cost

    1.content cost,就是计算内容图像与生成图像的“内容差异”,所以直接是对应位置的差值。

    2.在计算时,最好将每个信道展开成一个向量。此步骤不是必须的,但可以方便操作:

    3.content cost的计算公式如下:

    其中a为选中的VGG网络的隐藏层的输出值。

    三.计算style cost

    1.与content cost直接用对应位置与衡量不同,style cost似乎没有什么直接的衡量的依据。确实是没有,但是可以通过信道间接地去衡量。

    2.据称(突然想到这个词,很好用),在同一个卷积层中,不同的信道学习的东西是不同的,比如:

    第一个信道主要学习纹理特征、第二个信道主要学习橙色特征。如果在出现纹理的地方,其颜色总是为橙色,则表明信道一盒信道二有很强的的关联性。而提到关联性,就很自然能想到协方差矩阵。因此,风格可以用信道的协方差矩阵去衡量。同时说明,风格,实际上就是不同特征之间的关联度

    3.为了计算信道之间的协方差矩阵,最好将一个信道展开成一个向量,然后根据 A*AT的公式计算协方差矩阵:

    最后,style的计算公式如下:

  • 相关阅读:
    SQL查询
    SQL总结(二)连表查询
    SQL总结(一)基本查询
    SQL游标、函数的使用方法
    理解 Virtual DOM(摘)及评价
    virtual DOM的作用:将DOM的维护工作由系统维护转交给virtual DOM维护
    DOM的回流和重绘(重排、重绘)
    并发编程的核心
    执行流(指令流)的控制层级
    go语言的工资好高
  • 原文地址:https://www.cnblogs.com/DOLFAMINGO/p/9757178.html
Copyright © 2011-2022 走看看