Split#

バージョン名: Split-1

カテゴリー: データ移動

簡単な説明: Split 操作は、入力テンソルを軸に沿って同じ長さの部分に分割します。

詳細な説明

Split 操作は、指定された入力テンソル data をスカラー axis に沿って同じ長さのチャンクに分割します。num_splits 属性に基づいて複数の出力テンソルを生成します。i 番目の出力テンソル形状は、data.shape[axis]/num_splits である axis に沿った次元を除いて、入力テンソル data 形状と等しくなります。

shape_output_tensor=[data.shape[0],data.shape[1],,data.shape[axis]/num_splits,data.shape[D1]]

ここで、D は入力テンソル data のランクです。分割される軸は、num_splits 属性によって均等に分割される必要があります。

属性

  • num_splits

    • 説明: 入力テンソル dataaxis 次元に沿って分割される出力の数。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"> <!-- いくつかのデータ --> 
            <dim>6</dim> 
            <dim>12</dim> 
            <dim>10</dim> 
            <dim>24</dim> 
        </port> 
        <port id="1">
            <!-- 軸: 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>