[英]Keras: How to implement reordering for o/p of a layer in keras?
我有九个,500维向量作为o / p从合并层跟随重塑层的组合:
...
N=3
merge_rf=merge(cells_rf,mode='concat')
rf_top = Reshape((N*N, 500))(merge_rf)
#proper reordering code here - TODO
...
>>> rf_top.shape
TensorShape([Dimension(None), Dimension(9), Dimension(500)])
我需要使用已知的映射在rf_top
重新排序这些(9, 500)
rf_top
(9, 500)
dim向量
eg - (0,1,2,3,4,5,6,7,8) to -> (0,1,2,5,4,3,6,7,8) for rf_top
我应该使用哪个keras层? 怎么做?
尝试使用:
reorder_top = merge([Lambda(lambda x: x[:, index, :],
output_shape = (1, 500))(rf_top) for index in permutation],
mode='concat', concat_axis=1)
permutation
是您想要置换图层的排列。 此图层的输出是扁平化的,因此您应该通过以下方式对其进行reshape
:
reorder_top = Reshape ((N*N, 500))(reorder_top)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.