Split¶
バージョン名: Split-1
カテゴリー: データ移動
簡単な説明: Split 操作は、入力テンソルを軸に沿って同じ長さの部分に分割します。
詳細な説明:
Split 操作は、指定された入力テンソル data
をスカラー axis
に沿って同じ長さのチャンクに分割します。num_splits 属性に基づいて複数の出力テンソルを生成します。i 番目の出力テンソル形状は、data.shape[axis]/num_splits
である axis
に沿った次元を除いて、入力テンソル data
形状と等しくなります。
ここで、D は入力テンソル data
のランクです。分割される軸は、num_splits 属性によって均等に分割される必要があります。
属性:
-
num_splits
説明: 入力テンソル
data
がaxis
次元に沿って分割される出力の数。axis
に沿ったdata
形状の次元は、num_splits で均等に割り切れる必要があります。値の範囲: 範囲内の整数
[1, data.shape[axis]]
タイプ:
int
必須: はい
入力:
1:
data
。タイプ T の任意の形状のテンソル。必須。2:
axis
。分割するdata
に沿った軸。[-rank(data), rank(data) - 1]
範囲内の T_AXIS タイプのスカラー。負の値は終端からの次元を指定します。必須。注:
axis
に沿った入力テンソルdata
形状の次元は、num_splits 属性で均等に割り切れる必要があります。
出力:
複数の出力: T タイプのテンソル。i 番目の出力は、
data.shape[axis]/num_splits
であるaxis
に沿った次元を除き、data
入力テンソルと同じ形状を持ちます。
タイプ:
T: サポートされている任意のタイプ。
T_AXIS: 任意の整数タイプ。
例:
<layer id="1" type="Split" ...>
<data num_splits="3" />
<input>
<port id="0"> <!-- some data -->
<dim>6</dim>
<dim>12</dim>
<dim>10</dim>
<dim>24</dim>
</port>
<port id="1"> <!-- axis: 1 -->
</port>
</input>
<output>
<port id="2">
<dim>6</dim>
<dim>4</dim>
<dim>10</dim>
<dim>24</dim>
</port>
<port id="3">
<dim>6</dim>
<dim>4</dim>
<dim>10</dim>
<dim>24</dim>
</port>
<port id="4">
<dim>6</dim>
<dim>4</dim>
<dim>10</dim>
<dim>24</dim>
</port>
</output>
</layer>