gpt4 book ai didi

machine-learning - 连接到 Keras 中的每个时间戳

转载 作者:行者123 更新时间:2023-11-30 09:31:47 25 4
gpt4 key购买 nike

我有一个 keras 层,它输出 N 个大小为 M 的时间戳(即 NxM 大小)。我想将大小为 1xK 的相同向量附加到所有时间戳,因此输出应该有 N 个大小为 M+K 的时间戳。如果我像这样使用连接层:

x = Concatenate()[x, v]

由于尺寸不匹配,因此出现错误。如果我使用像这样的 TimeDistributed 包装器:

x = TimeDistributed(Concatenate())[x, v]

由于向量 v 没有时间戳,因此会出现错误。

哪种方法最简单?

谢谢!!

最佳答案

首先,使用 RepeatVector 复制矢量 N 次:

v = RepeatVector(N)(v) # shape == (N, K)

然后,由于它们的形状现在匹配((N, M)(N, K)),您可以将它们连接起来:

x = Concatenate()([x, v]) # shape == (N, M+K)
<小时/>

如果 N 未知,您可以使用 lambda 层中相应的后端函数手动执行此操作:

from keras import backend as K

def func(xv):
x, v = xv
n = x.shape[1]
v = K.repeat(v, n)
return K.concatenate((x, v))

x = Lambda(lambda xv: func(xv))([x, v])

关于machine-learning - 连接到 Keras 中的每个时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54983135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com