Select#
バージョン名: Select-1
カテゴリー: 状態
簡単な説明: Select は、条件 (最初の入力) の値に応じて、2 番目または 3 番目の入力からの要素で満たされたテンソルを返します。
詳細な説明
Select は、最初の入力 cond で指定された条件マスクに基づいて、then 入力テンソルまたは else 入力テンソルから要素を取得します。形状が異なり、auto_broadcast 属性が none でない場合、選択を実行する前に入力テンソル then と else が相互にブロードキャストされます。次に、 cond テンソルが一方向にブロードキャストされ、then と else でブロードキャストされた結果の形状になります。auto_broadcast の値に従ってブロードキャストされます。
属性
auto_broadcast
説明: 入力テンソルの自動ブロードキャストに使用されるルールを指定します。
値の範囲:
なし - 自動ブロードキャストは許可されません。すべての入力形状が一致する必要があります
numpy - numpy ブロードキャスト・ルール。説明は要素ごとの操作のブロードキャスト・ルールで参照できます。
pdpd - PaddlePaddle スタイルの暗黙的ブロードキャストの説明は、要素ごとの操作のブロードキャスト・ルールで参照できます
タイプ:
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>