ReverseSequence#

バージョン名: ReverseSequence-1

カテゴリー: データ移動

簡単な説明: ReverseSequence は、データの可変長スライスを反転します。

詳細な説明

ReverseSequence は、batch_axis 属性で指定された次元に沿って、指定された入力テンソル data をスライスします。各スライス i について、seq_axis 属性で指定された次元に沿って最初の seq_lengths[i] 要素が反転されます。

属性

  • batch_axis

    • 説明: batch_axis は、data 入力テンソルがスライスされるバッチ次元のインデックスです。

    • 値の範囲: 範囲内 [-rank(data), rank(data) - 1] の整数

    • タイプ: int

    • デフォルト値: 0

    • 必須: いいえ

  • seq_axis

    • 説明: seq_axis は、data 入力テンソルの要素が反転されるシーケンス次元のインデックスです。

    • 値の範囲: 範囲内 [-rank(data), rank(data) - 1] の整数

    • タイプ: int

    • デフォルト値: 1

    • 必須: いいえ

入力

  • 1: data - 反転するデータを入力します。タイプ T1 でランク 2 以上のテンソル。必須。

  • 2: seq_lengths - 入力テンソル data で反転するシーケンスの長さ。T2 タイプの data_shape[batch_axis] 要素で構成される 1D テンソル。すべての要素の値は、[1, data_shape[seq_axis]] の範囲内の整数値である必要があります。値 1 は、反転要素がないことを意味します。必須。

出力

  • 1: スライスおよび逆 data 入力テンソルの結果。T1 タイプのテンソルで、data 入力テンソルと同じ形状です。

タイプ

  • T1: サポートされている任意のタイプ。

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

 <layer ... type="ReverseSequence"> 
    <data batch_axis="0" seq_axis="1"/> 
    <input> 
        <port id="0"> <!-- data --> 
            <dim>4</dim> <!-- batch_axis --> 
            <dim>10</dim> <!-- seq_axis --> 
            <dim>100</dim> 
            <dim>200</dim> 
        </port> 
        <port id="1"> 
            <dim>4</dim> <!-- seq_lengths 値: [2, 4, 8, 10] --> 
        </port> 
    </input> 
    <output> 
        <port id="2"> 
            <dim>4</dim> 
            <dim>10</dim>
            <dim>100</dim> 
            <dim>200</dim> 
        </port> 
    </output> 
</layer>