Tile#

バージョン名: Tile-1

カテゴリー: データ移動

簡単な説明: Tile 操作は、入力テンソル “data” を、各次元に沿って “repeats” 入力テンソルで指定された回数繰り返します。

  • “repeats” の要素の数が “data” の形状よりも多い場合、“data” は、新しい軸を先頭に追加することによって “repeats” に昇格されます。“data” の形状が (2, 3) に等しく、“repeats” が [2, 2, 2] に等しい場合、“data” の形状は (1, 2, 3) にプロモートされ、結果の形状は (2, 4, 6) になります。

  • “repeats” の要素の数が “data” の形状よりも少ない場合、“repeats” は先頭に 1 を付加することによって “data” に昇格されます。“data” の形状が (4, 2, 3) に等しく、“repeats” が [2, 2] に等しい場合、“repeats” は [1, 2, 2] に昇格され、結果の形状は (4、4、6) になります。

属性:

利用可能な属性はありません。

入力:

  • 1: “data” - パディングされる入力テンソル。T1 タイプのテンソル。必須。

  • 2: “repeats” - 次元ごとの複製係数。例えば、repeats が 88 に等しい場合は、出力テンソルが指定された軸からデータの 88 コピーを取得することを意味します。T2 タイプのテンソル。必須。

出力:

  • 1: 結果の形状の次元数は、“data” 形状の次元数と “repeats” の要素数の最大値と等しくなります。1 番目のテンソルとタイプが一致するテンソル。

タイプ

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

  • T2: 任意の整数タイプ。

詳細な説明:

Tile 操作は、次のルールに従って入力テンソルを拡張し、出力テンソルを埋めます:

outi=inputi[innerdimt]
t(0,tiles)

例 1: “repeats” の要素数がデータの形状と等しい場合

 <layer ... type="Tile"> 
    <input> 
        <port id="0"> 
            <dim>2</dim> 
            <dim>3</dim> 
            <dim>4</dim> 
        </port> 
        <port id="1"> 
            <dim>3</dim> <!-- [1, 2, 3] --> 
        </port> 
    </input> 
    <output> 
        <port id="2"> 
            <dim>2</dim> 
            <dim>6</dim> 
            <dim>12</dim> 
        </port> 
    </output> 
</layer>

例 2: “repeats” の要素数がデータの形状より多い場合

 <layer ... type="Tile"> 
    <input> 
        <port id="0"> <!-- will be promoted to shape (1, 2, 3, 4) --> 
            <dim>2</dim> 
            <dim>3</dim> 
            <dim>4</dim> 
        </port> 
        <port id="1"> 
            <dim>4</dim> <!-- [5, 1, 2, 3] --> 
        </port> 
    </input> 
    <output> 
        <port id="2"> 
            <dim>5</dim> 
            <dim>2</dim> 
            <dim>6</dim> 
            <dim>12</dim> 
        </port> 
    </output> 
</layer>

例 3: “repeats” の要素数がデータの形状より少ない場合

 <layer ... type="Tile"> 
    <input> 
        <port id="0"> 
            <dim>5</dim> 
            <dim>2</dim> 
            <dim>3</dim> 
            <dim>4</dim> 
        </port> 
        <port id="1"> 
            <dim>3</dim> <!-- [1, 2, 3] will be promoted to [1, 1, 2, 3] --> 
        </port> 
    </input> 
    <output> 
        <port id="2"> 
            <dim>5</dim> 
            <dim>2</dim> 
            <dim>6</dim> 
            <dim>12</dim> 
        </port> 
    </output> 
</layer>