Neural Style:
通过优化三个loss:
(1)style loss:主要是优化base image和style reference image之间的L2 距离(优化多个conv层的feature maps)
(2)content loss:主要优化base image 和 combination image之间的L2距离(主要优化一层的feature maps)
(3)total variation loss:主要用于平滑combination image(直接优化combination image)
具体流程:
1.训练一个CNN(如VGG)
2.输入三幅图(base,style,combination,combination可以是uniform分布的矩阵)
3.得到各层的feature maps
4.根据三个loss建立总的loss方程,最小化loss(通过改变输入的combination image矩阵)
Deep Dream:
包括两个loss:
(1)continuity_loss:用于平滑input X
(2)feature maps的L2 norm
同样改变input X来优化loss。但是感觉Deep Dream比Neural Style更依赖于weights。
DeepDream比较好玩的是可以通过softmax层来指定给input X加什么样的特效