0

在 Flux.jl 中,我想将一层中的一些数据转换为一维数组,以便将其输入到下一层。是否有内置功能可以做到这一点?

4

1 回答 1

1

Flux 提供了一个内置Flux.flatten()函数,根据 Flux 文档

将任意形状的输入重塑为矩阵形状的输出,保留最后一维的大小。

您可以看到如下示例:

julia> rand(Int8, 3,4,2)  # batch of two matrices, each 3 x 4
3×4×2 Array{Int8, 3}:
[:, :, 1] =
 -29  -97  61    1
  34  -53   4  -16
  74   46  41  -40

[:, :, 2] =
  10    25  -86  77
  94   -48  114   1
 -68  -125   35  68

julia> Flux.flatten(ans)  # batch of two vectors
12×2 Matrix{Int8}:
 -29    10
  34    94
  74   -68
 -97    25
 -53   -48
  46  -125
  61   -86
   4   114
  41    35
   1    77
 -16     1
 -40    68
于 2021-06-28T02:05:56.860 回答