ReverseSequence¶
ReverseSequence - 10¶
版本¶
網域:
main
起始版本:
10
函數:
False
支援等級:
SupportType.COMMON
形狀推斷:
True
此版本的運算符自版本 10 起可用。
摘要¶
反轉由 sequence_lens
指定不同長度的序列批次。
對於在批次軸上迭代的每個切片 i,運算符反轉時間軸上前 sequence_lens[i] 個元素,並將索引超出 sequence_lens[i] 的元素複製到輸出。因此,輸出切片 i 在前 sequence_lens[i] 個元素上包含反轉的序列,然後將其他元素的原始值複製。
範例 1:input = [[0.0, 4.0, 8.0, 12.0], [1.0, 5.0, 9.0, 13.0], [2.0, 6.0, 10.0, 14.0], [3.0, 7.0, 11.0, 15.0]] sequence_lens = [4, 3, 2, 1] time_axis = 0 batch_axis = 1
output = [[3.0, 6.0, 9.0, 12.0], [2.0, 5.0, 8.0, 13.0], [1.0, 4.0, 10.0, 14.0], [0.0, 7.0, 11.0, 15.0]]
範例 2:input = [[0.0, 1.0, 2.0, 3.0 ], [4.0, 5.0, 6.0, 7.0 ], [8.0, 9.0, 10.0, 11.0], [12.0, 13.0, 14.0, 15.0]] sequence_lens = [1, 2, 3, 4] time_axis = 1 batch_axis = 0
output = [[0.0, 1.0, 2.0, 3.0 ], [5.0, 4.0, 6.0, 7.0 ], [10.0, 9.0, 8.0, 11.0], [15.0, 14.0, 13.0, 12.0]]
屬性¶
batch_axis - INT (預設為
'1'
)(可選) 指定哪個軸是批次軸。必須是 1 (預設) 或 0 中的一個。
time_axis - INT (預設為
'0'
)(可選) 指定哪個軸是時間軸。必須是 0 (預設) 或 1 中的一個。
輸入¶
input (異質) - T
秩 r >= 2 的張量。
sequence_lens (異質) - tensor(int64)
指定批次中序列長度的張量。它的形狀為
[batch_size]
。
輸出¶
Y (異質) - T
與輸入形狀相同的張量。
類型約束¶
T in (
tensor(bool)
,tensor(complex128)
,tensor(complex64)
,tensor(double)
,tensor(float)
,tensor(float16)
,tensor(int16)
,tensor(int32)
,tensor(int64)
,tensor(int8)
,tensor(string)
,tensor(uint16)
,tensor(uint32)
,tensor(uint64)
,tensor(uint8)
)輸入和輸出類型可以是任何張量類型。