如何在keras中将三维数组转换为五维数组[重复]

Posted

技术标签:

【中文标题】如何在keras中将三维数组转换为五维数组[重复]【英文标题】:how to convert an array of dimension three to five in keras [duplicate] 【发布时间】:2019-07-15 19:45:49 【问题描述】:

我有一个形状数组(?, ?, 128),我想将其转换为(?, ?, 128,1,1)

我试图搜索它,但我没有找到任何好东西,或者我没有使用正确的词来找到我正在寻找的东西。 有什么有效的方法可以做到这一点吗?

This 是我发现的最相关的东西,与我想要的东西不一样。

提前致谢:)

【问题讨论】:

使用numpy 数组很容易做到这一点——无论是在np.newaxis 上使用reshape。我不知道keras 允许什么。 @hpaulj 你能给出 Numpy 中的等价物吗? @user2699 但单独添加 newaxis 会创建一个没有的维度。也在这里 ?正在制造一个问题。我的意思是我不知道前两个轴的正确尺寸,所以我想保持原样。 arr[..., np.newaxis, np.newaxis], arr.reshape(arr.shape + (1,1))。这是使用tuple 连接来创建一个新形状。这 '?' keras 尺寸是一个很大的未知数。 keras 文档肯定有一些关于重塑的东西吗? @sariii,不,第一个答案在重复地址中给出。维度的数量发生了变化,但原始维度的形状保持不变。 【参考方案1】:

使用 Numpy,你可以做到reshape

a = np.random.rand(2, 3, 128)
b = a.reshape(a.shape + (1, 1))

使用Keras,您可以使用keras.backend.expand_dims(x, axis=-1) 添加1 尺寸的尺寸。

【讨论】:

感谢您的回复。其实我想在 keras 中做到这一点 official Keras document 表示keras.backend.expand_dims(x, axis=-1)“在索引轴上添加一个 1 尺寸的维度”。 您能否更新您的答案以便我接受? 更新了答案!

以上是关于如何在keras中将三维数组转换为五维数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在python中将数组字符串转换为数组[重复]

如何在java中将字符串数组转换为int数组[重复]

如何在 C++ 中将数字字符串转换为 int 数组 [重复]

在javascript中将数字转换为数组| angular7的打字稿[重复]

如何在Go中将字节数组转换为字符串[重复]

如何在java中将字符串集合转换为字符串数组[重复]