Concat¶
バージョン名: Concat-1
カテゴリー: データ移動
簡単な説明: 任意の数の入力テンソルを 1 つの軸に沿って 1 つの出力テンソルに連結します。
属性:
-
axis
説明: axis は連結する次元を指定します
値の範囲: 整数負の値は、次元を端から数えることを意味します。範囲は
[-R, R-1]
です。ここで、R
はすべての入力のランクです。タイプ: int
必須: はい
入力:
1..N: タイプ T の入力テンソルの任意の数。すべてのテンソルのタイプが一致する必要があります。すべてのテンソルのランクは一致する必要があります。ランクは正であるため、入力としてスカラーは許可されません。すべての入力の形状は、
axis
の位置を除くすべての位置で一致する必要があります。少なくとも 1 つの入力が必要です。
出力:
1: 入力テンソルと同じタイプ T のテンソルおよび形状
[d1, d2, ..., d_axis, ...]
。ここで、d_axis
はaxis
次元に沿った入力テンソルのサイズの合計です。
タイプ:
T: 任意の数値タイプ。
例:
<layer id="1" type="Concat">
<data axis="1" />
<input>
<port id="0">
<dim>1</dim>
<dim>8</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
<port id="1">
<dim>1</dim>
<dim>16</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
<port id="2">
<dim>1</dim>
<dim>32</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
</input>
<output>
<port id="0">
<dim>1</dim>
<dim>56</dim> <!-- concatenated axis: 8 + 16 + 32 = 48 -->
<dim>50</dim>
<dim>50</dim>
</port>
</output>
</layer>
<layer id="1" type="Concat">
<data axis="-3" />
<input>
<port id="0">
<dim>1</dim>
<dim>8</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
<port id="1">
<dim>1</dim>
<dim>16</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
<port id="2">
<dim>1</dim>
<dim>32</dim> <!-- axis for concatenation -->
<dim>50</dim>
<dim>50</dim>
</port>
</input>
<output>
<port id="0">
<dim>1</dim>
<dim>56</dim> <!-- concatenated axis: 8 + 16 + 32 = 48 -->
<dim>50</dim>
<dim>50</dim>
</port>
</output>
</layer>