Select

バージョン名: Select-1

カテゴリー: 条件

簡単な説明: Select は、条件 (最初の入力) の値に応じて、2 番目または 3 番目の入力からの要素で満たされたテンソルを返します。

詳細説明:

Select は、最初の入力 cond で指定された条件マスクに基づいて、then 入力テンソルまたは else 入力テンソルから要素を取得します。形状が異なり、auto_broadcast 属性が none でない場合、選択を実行する前に入力テンソル thenelse が相互にブロードキャストされます。次に、cond テンソルが一方向にブロードキャストされ、thenelse でブロードキャストされた結果の形状になります。auto_broadcast の値に従ってブロードキャストされます。

属性:

  • auto_broadcast

    • 説明: 入力テンソルの自動ブロードキャストに使用されるルールを指定します。

    • 値の範囲:

    • タイプ: string

    • デフォルト値: “numpy”

    • 必須: いいえ

入力:

  • 1: cond - T_COND タイプのテンソルと選択マスクを備えた任意の形状。必須

  • 2: then - cond 内の対応する要素が true である場合に取得する要素を持つ T タイプおよび任意の形状のテンソル。必須

  • 3: else - cond 内の対応する要素が false である場合に取得する要素を持つ T タイプおよび任意の形状のテンソル。必須

出力:

  • 1: cond およびブロードキャスト・ルールに基づいて、then および else の入力テンソルの値から調整されたブレンド出力テンソル。then および else と同じタイプの要素があります。

タイプ:

  • T_COND: boolean タイプ。

  • T: サポートされている数値タイプ。

例:

 <layer ... type="Select">
     <input>
         <port id="0">     <!-- cond value is: [[false, false], [true, false], [true, true]] -->
             <dim>3</dim>
             <dim>2</dim>
         </port>
         <port id="1">     <!-- then value is: [[-1, 0], [1, 2], [3, 4]] -->
             <dim>3</dim>
             <dim>2</dim>
         </port>
         <port id="2">     <!-- else value is: [[11, 10], [9, 8], [7, 6]] -->
             <dim>3</dim>
             <dim>2</dim>
         </port>
     </input>
     <output>
         <port id="1">     <!-- output value is: [[11, 10], [1, 8], [3, 4]] -->
             <dim>3</dim>
             <dim>2</dim>
         </port>
     </output>
 </layer>