当前位置:  开发笔记 > 编程语言 > 正文

Keras使用标量乘以层输出

如何解决《Keras使用标量乘以层输出》经验,为你挑选了0个好方法。

我有一个图层输出我想要乘以标量.我可以用lambda图层做到这一点,即

sc_mult = Lambda(lambda x: x * 2)(layer)

哪个工作正常.但是如果我想为每个例子使用不同的标量,我会尝试将它们作为第二个输入提供形状(例子,1)

input_scalar = Input(shape = (1L,))

因此我的lambda层变成了

sc_mult = Lambda(lambda x: x * input_scalar)(layer)

但是现在这在火车时间会引发错误.注意,32是批量大小,128是图层输入(和输出)的维度 - 图层输入乘以标量是(batch_size x 32(前一层中的过滤器)x 128(空间暗淡)x 128 (空间昏暗)).

GpuElemwise. Input dimension mis-match. Input 5 (indices start at 0) has shape[2] == 32, but the output's size on that axis is 128.

我假设我没有通过输入层输入正确的形状,但无法解决原因.

推荐阅读
mobiledu2402851323
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有