标签:and value 编码 oat bounds arrays 计算 关于 int
这里的生成式网络是广义的生成式,不仅仅指gan网络,还有风格迁移中的类自编码器网络,以及语义分割中的类自编码器网络,因为遇到次数比较多,所以简单的记录一下。
图像处理目标一般就是RGB三色通道,原始图像解码后是0~255,这个矩阵传给matplotlib就可以直接绘图了,与此同时0~1的图像matplotlib也是可以接受的,关于这点,我们来看看文档是怎么说的,
Elements of RGB and RGBA arrays represent pixels of an MxN image.
All values should be in the range [0 .. 1] for floats or
[0 .. 255] for integers. Out-of-range values will be clipped to
these bounds.
即使0~1也能够使用,我们常用的还是0~255的数据。
生成式网络不同于分类网络,其输出的目标是图像,对照上面也就是0~255范围(这个更常用)的矩阵,这就意味着网络的输出有所限制的,且是不同于分类网络全部限制于0~1或者-1~1的,正如分类网络的sigmoid或者softmax一样,我们会在最后一个卷积/转置卷积层后采取一些操作保证输出满足图像的要求。
输入图像为了保证可以被用于loss,需要和输出图像的值域相同,所以有两个思路:
我们采用方式为:原像素数据除以127.5减去1的操作,使得输出值保持在0~1之间,可以配合sigmoid激活函数进行学习
我们采用0~255作为输入,生成数据仍为0~255(主要分布),然后将输出数据进一步操作,送入vgg进行loss计算。
此时的生成式网络最后一层可以不加激活,输出会自行收敛在目标附近,也可以tanh激活(-1~1)后加1再乘127.5。
标签:and value 编码 oat bounds arrays 计算 关于 int
原文地址:https://www.cnblogs.com/hellcat/p/8992352.html