我想训练一个回归网络,其输出是两个坐标(x1,y1)和(x2,y2)。
我的问题是:如果我想训练网络,我的输出应该分开吗?
我的意思是我的输出应该是这样的:
[x1,y1,x2,y2]
或者有没有办法将它们堆叠起来,例如:
[(x1,y1),(x2,y2)]
提前致谢
The RepeatVector
是为了这个目的吗(参见Keras https://keras.io/layers/core/#repeatvector文档)。
你希望你的输出形状是(2, 2)
,或两个坐标的数组,每个坐标有两个条目。
num_outputs = 2
num_elements = 2
添加用于处理网络输入的层后,添加RepeatVector
。这将使获得数据数组作为输出成为可能。你的最后一层需要输出num_elements
例如:
model.add(RepeatVector(num_outputs))
# Optional layers can be inserted here
model.add(Dense(num_elements))
简而言之,重复向量复制上一层的内容发送到进一步的节点,每条路径都会输出一个数组num_elements
,为您提供所需的输出形状。请注意,您的训练数据(标签)必须由形状组成(2, 2)
数组也。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)