ReshapeLayer

ReshapeLayer[dims]

指定 spec に従って入力配列を再形成するネットの層を表す.

詳細とオプション

  • ReshapeLayerNetGraph等で使うために次のポートを開放する.
  • "Input"任意階数の配列
    "ReferenceShape"そこから形状をコピーする配列(任意)
    "Output"再形成された配列
  • ReshapeLayer[spec]spec には次の値を使うことができる.
  • {dim1,}次元を明示的に指定する
    "ReferenceShape""Reference"ポートに渡された配列の次元
  • ReshapeLayer[{dim1,}]dimi には次の要素を使うことができる.
  • n次元を明示的に指定する
    Inherited入力から次元をコピーする
    Automatic他から次元を推測する
    All入力から残りの次元をコピーする
  • 次元のリストには1つのAutomaticあるいは1つのAllしか使えない.
  • 入力配列中の要素の総数は,出力配列中の要素の総数を同じである.入力配列中の要素の総数は,出力配列中の要素の総数を同じである.
  • ReshapeLayerは,通常は,入力次元をNetChain等のコンテキストから推測する.{n1,n2,}として明示的に次元を指定する場合はReshapeLayer["Input"->{n1,n2,}]を使う.
  • ReshapeLayer[][input]は,層を input に適用して明示的に出力を計算する.
  • ReshapeLayer[][{input1,input2,}]は,inputiのそれぞれについて明示的に出力を計算する.
  • With a "ReferenceShape"再形成指定がある場合は,入力をReshapeLayer[][<|"Input"input,"ReferenceShape"ref|>]またはReshapeLayer[][<|"Input"{input1,},"ReferenceShape"{ref1,}|>]として渡すことができる.
  • NumericArrayが入力として渡されると,出力はNumericArrayになる.
  • Options[ReshapeLayer]は層を構築する際のデフォルトオプションのリストを与える.Options[ReshapeLayer[]]はデータについて層を評価する際のデフォルトオプションのリストを与える.
  • Information[ReshapeLayer[]]は層についてのレポートを与える.
  • Information[ReshapeLayer[],prop]ReshapeLayer[]の特性 prop の値を与える.使用可能な特性NetGraphと同じである.

例題

すべて開くすべて閉じる

  (3)

入力を2×3行列に再形成するReshapeLayerを作る:

任意の入力を2×3行列に再形成するReshapeLayerを作る:

この層をベクトルに適用する:

この層を4階の配列に適用する:

長さ1のベクトルを単一の数に再形成するReshapeLayerを作る:

この層を入力に適用する:

スコープ  (5)

特定のサイズの入力テンソルを再形成するReshapeLayerを作る:

この層をベクトルに適用する:

入力の第1次元のサイズをコピーするReshapeLayerを作る:

この層を次元6×1×4の配列に適用する:

入力の第1次元のサイズをコピーし,その他から第4次元のサイズを推測するReshapeLayerを作る:

この層を次元6×4×4の配列に適用する:

サイズ1の次元を配列の最深レベルに加えるReshapeLayerを作る:

この層を入力に適用する:

参照配列にマッチするよう入力を再形成するReshapeLayerを作成する:

この層を配列と参照に適用する:

アプリケーション  (1)

32×32のRGB画像を取って96×32のグレースケール画像を返すReshapeLayerを作成する:

特性と関係  (3)

FlattenLayerReshapeLayerを使って実装することができる.2×3×3配列を正しい出力次元にすることで最初の2層を平らにする:

AutomaticおよびInheritedと指定すると,入力サイズがNetReplacePartによって変更された場合にReshapeLayerがその出力サイズを再計算することができる.ReshapeLayerを作る:

入力サイズを変える:

指定を固定して同じReshapeLayerを作った場合は,サイズ変更すると失敗する:

整数次元が指定されている場合,ReshapeLayerは以下を計算する:

データについて評価する:

考えられる問題  (2)

入力中の要素の総数は出力中の総数と同じでなければならない:

次元指定ではAutomaticは1つしか使えない.2つ以上使うと出力サイズが曖昧になるからである:

インタラクティブな例題  (1)

行と列の数を操作して,リストを行列に再形成する:

おもしろい例題  (2)

数のリストを作成する:

可能なすべての3Dの形状を計算する:

リストを深さ3の配列に再形成し,Image3Dを使って結果を可視化する:

リストをさまざまに再形成する:

Wolfram Research (2016), ReshapeLayer, Wolfram言語関数, https://reference.wolfram.com/language/ref/ReshapeLayer.html (2025年に更新).

テキスト

Wolfram Research (2016), ReshapeLayer, Wolfram言語関数, https://reference.wolfram.com/language/ref/ReshapeLayer.html (2025年に更新).

CMS

Wolfram Language. 2016. "ReshapeLayer." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/ReshapeLayer.html.

APA

Wolfram Language. (2016). ReshapeLayer. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ReshapeLayer.html

BibTeX

@misc{reference.wolfram_2025_reshapelayer, author="Wolfram Research", title="{ReshapeLayer}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/ReshapeLayer.html}", note=[Accessed: 31-January-2025 ]}

BibLaTeX

@online{reference.wolfram_2025_reshapelayer, organization={Wolfram Research}, title={ReshapeLayer}, year={2025}, url={https://reference.wolfram.com/language/ref/ReshapeLayer.html}, note=[Accessed: 31-January-2025 ]}