广播与相同 y_data 配对的多个版本的 X_data

问题描述 投票:0回答:1

我的深度学习架构也接受大小为 512 的输入向量和大小为 512 的输出向量。

问题是我有

X_data
版本与相同的
y_data
配对。

我有这些张量:

(4, 8, 512) -> (batch_size, number of X_data version, input size to model architecture) (list of X_data)

(4, 512) -> (batch_size, output size to model architecture) (y_data)

这意味着:

X_data[0,0,:] is pairing with y_data[0,:]
X_data[0,1,:] is pairing with y_data[0,:]
...
X_data[0,7,:] is pairing with y_data[0,:]
X_data[1,0,:] is pairing with y_data[1,:]
X_data[1,1,:] is pairing with y_data[1,:]
...
X_data[1,7,:] is pairing with y_data[1,:]
...
X_data[3,7,:] is pairing with y_data[3,:]

X_data 和 y_data 的最终张量形状是什么,以便我可以训练模型?

你能在 NumPy 中做到这一点吗?

python numpy tensorflow keras deep-learning
1个回答
1
投票

要将数组重塑为

(32, 512)
数组,其中
X_data
y_data
与您指定的方式匹配,您可以执行以下操作:

import numpy as np

X_data = np.random.rand(4, 8, 512)
y_data = np.random.rand(4, 512)

X_data, y_data = np.broadcast_arrays(X_data, y_data[:, None, :])
X_data = X_data.reshape(32, 512)
y_data = y_data.reshape(32, 512)
``
© www.soinside.com 2019 - 2024. All rights reserved.