Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

Dialek & # 39; tfl & # 39; definisi

Dialek TensorFlow Lite.

Dialek ini memetakan ke operasi TensorFlow Lite.

Invarian:

  • Semua nilai adalah tipe Tensor (khususnya, skalars diwakili menggunakan tensor dimensi nol);

Definisi operasi

tfl.abs (TFL :: AbsOp)

Operator nilai absolut

Deskripsi:

Dengan tensor x , operasi ini mengembalikan tensor yang berisi nilai absolut dari setiap elemen dalam x . Misalnya, jika x adalah elemen input dan y adalah elemen output, operasi ini menghitung \ (y = | x | \).

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.add_n (TFL :: AddNOp)

operator add_n

Deskripsi:

Menambahkan semua elemen input tensor-bijaksana.

Operan:

  1. inputs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. sum : tensor nilai jenis apa pun

tfl.add (TFL :: AddOp)

Operator tambahan

Deskripsi:

Operasi penambahan elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.arg_max (TFL :: ArgMaxOp)

Operator ArgMax

Deskripsi:

Mengembalikan indeks dengan nilai terbesar melintasi dimensi tensor.

Operan:

  1. input : tensor nilai jenis apa pun
  2. dim : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
output_type Attribute atribut atribut turunan

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.arg_min (TFL :: ArgMinOp)

Operator ArgMin

Deskripsi:

Mengembalikan indeks dengan nilai terkecil melintasi dimensi tensor. "A = [1, 10, 26.9, 2.8, 166.32, 62.3] b = tf.math.argmin (input = a) c = tf.keras.backend.eval (b)

Operan:

  1. input : tensor nilai jenis apa pun
  2. dim : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
output_type Attribute atribut atribut turunan

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.average_pool_2d (TFL :: AveragePool2DOp)

Operator Average_pool_2d

Deskripsi:

Melakukan operasi penyatuan rata-rata pada input.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
filter_height IntegerAttr Atribut atribut integer 32-bit
filter_width IntegerAttr Atribut atribut integer 32-bit
padding StringAttr atribut padding enum
stride_h IntegerAttr Atribut atribut integer 32-bit
stride_w IntegerAttr Atribut atribut integer 32-bit
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.basic_lstm (TFL :: BasicLSTMOp)

Operator dasar lstm

Deskripsi:

Operator Sel LSTM dasar.

Operan:

  1. data_input : tensor nilai jenis apa pun
  2. prev_activ_input : tensor nilai jenis apa pun
  3. weights_input : tensor nilai jenis apa pun
  4. biases_input : tensor nilai jenis apa pun
  5. prev_state_input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum
cell_clip FloatAttr Atribut atribut float 32-bit
proj_clip FloatAttr Atribut atribut float 32-bit
kernel_type StringAttr lstm tipe kernel dan atribut BASIC case

Hasil:

  1. activ_output : tensor 2D dari semua jenis nilai
  2. state_output : tensor 2D dari semua jenis nilai
  3. concat_temp : tensor 2D dari semua nilai tipe
  4. activ_temp : tensor 2D dari semua nilai tipe

tfl.batch_to_space_nd (TFL :: BatchToSpaceNdOp)

Operator BatchToSpaceNd

Deskripsi:

Operasi ini membentuk kembali dimensi "kumpulan" 0 menjadi dimensi ruang.

Operan:

  1. input : tensor nilai jenis apa pun
  2. block_shape : tensor nilai jenis apa pun
  3. indices : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.cast (TFL :: CastOp)

Operator pemeran

Deskripsi:

Melemparkan input dari tipe input ke tipe output.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.ceil (TFL :: CeilOp)

Operator langit-langit

Deskripsi:

Mengembalikan nilai ceil elemen-bijaksana input.

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.concatenation (TFL :: ConcatenationOp)

Operator gabungan

Deskripsi:

Menggabungkan tensor sepanjang satu dimensi

Operan:

  1. values : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
axis IntegerAttr Atribut atribut integer 32-bit
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.pseudo_const (TFL :: ConstOp)

Pseudo op konstan.

Deskripsi:

Merupakan nilai konstan dalam dialek TensorFlow Lite. Ini bukan operasi yang sebenarnya dan sebagai gantinya akan diturunkan ke buffer.

Op diizinkan untuk memiliki semua jenis atribut yang sama dengan tf.Const tidak (misalnya, atribut TF buram diizinkan).

Operan:

Atribut:

Atribut Jenis MLIR Deskripsi
value ElementsAttr atribut atribut vektor / tensor konstan

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.conv_2d (TFL :: Conv2DOp)

Operator konvolusi

Deskripsi:

Melakukan operasi konvolusi pada input.

Input: inputs[0] : wajib: input tensor aktivasi inputs[1] : wajib: inputs[2] tensor berat filter inputs[2] : opsional: tensor bias

Operan:

  1. input : tensor nilai jenis apa pun
  2. filter : tensor nilai jenis apa pun
  3. bias : tensor nilai tipe apa pun atau tipe tidak ada

Atribut:

Atribut Jenis MLIR Deskripsi
dilation_h_factor IntegerAttr Atribut atribut integer 32-bit
dilation_w_factor IntegerAttr Atribut atribut integer 32-bit
fused_activation_function StringAttr aktivasi enum atribut enum
padding StringAttr atribut padding enum
stride_h IntegerAttr Atribut atribut integer 32-bit
stride_w IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.convolution_2d_transpose_bias (TFL :: Convolution2DTransposeBiasOp)

Alihkan konvolusi dengan operator bias

Deskripsi:

Melakukan operasi konvolusi transpose pada input, dengan opsi menambahkan bias. Catatan ini adalah op kustom yang tidak didukung dalam runtime standar.

 Inputs:
  `inputs[0]`: required: the input activation tensor
  `inputs[1]`: required: the filter weight tensor
  `inputs[2]`: optional: the bias tensor
 

Operan:

  1. input : tensor nilai jenis apa pun
  2. filter : tensor nilai jenis apa pun
  3. bias : tensor nilai tipe apa pun atau tipe tidak ada

Atribut:

Atribut Jenis MLIR Deskripsi
padding StringAttr atribut padding enum
stride_h IntegerAttr Atribut atribut integer 32-bit
stride_w IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.cos (TFL :: CosOp)

Operator kosinus

Deskripsi:

Menghitung input input elemen-bijaksana

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.densify (TFL :: DensifyOp)

Densifikasi operator

Deskripsi:

Mengubah format tensor menjadi padat menjadi jarang.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.depth_to_space (TFL :: DepthToSpaceOp)

Operator DepthToSpace

Deskripsi:

Mengatur ulang data dari kedalaman menjadi blok data spasial. Ini adalah transformasi kebalikan dari SpaceToDepth. Lebih khusus, op ini menghasilkan salinan dari tensor input di mana nilai-nilai dari dimensi depth dipindahkan dalam blok spasial ke dimensi height dan width . block_size menunjukkan ukuran blok input dan bagaimana data dipindahkan.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
block_size IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.depthwise_conv_2d (TFL :: DepthwiseConv2DOp)

Operator konvolusi yang terpisah secara terpisah

Deskripsi:

Melakukan operasi konvolusi pada input.

Input: inputs[0] : wajib: input tensor aktivasi inputs[1] : wajib: inputs[2] tensor berat filter inputs[2] : opsional: tensor bias

Operan:

  1. input : tensor nilai jenis apa pun
  2. filter : tensor nilai jenis apa pun
  3. bias : tensor nilai tipe apa pun atau tipe tidak ada

Atribut:

Atribut Jenis MLIR Deskripsi
dilation_h_factor IntegerAttr Atribut atribut integer 32-bit
dilation_w_factor IntegerAttr Atribut atribut integer 32-bit
fused_activation_function StringAttr aktivasi enum atribut enum
padding StringAttr atribut padding enum
stride_h IntegerAttr Atribut atribut integer 32-bit
stride_w IntegerAttr Atribut atribut integer 32-bit
depth_multiplier IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.dequantize (TFL :: DequantizeOp)

Operator dequantize

Deskripsi:

Mengubah array bilangan bulat yang dikuantifikasi menjadi titik-mengambang sesuai dengan parameter kuantisasi.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.div (TFL :: DivOp)

Operator divisi

Deskripsi:

Operasi pembagian elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.elu (TFL :: EluOp)

Operator Unit Linear Eksponensial

Deskripsi:

Menghitung linear eksponensial f (x) -> exp (x) - 1 untuk x <0, x untuk x> = 0. elemen-bijaksana.

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.embedding_lookup (TFL :: EmbeddingLookupOp)

Melekatkan operator pencarian

Deskripsi:

Mencari id dalam daftar tensor penyisipan.

Operan:

  1. lookup : tensor nilai jenis apa pun
  2. value : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.equal (TFL :: EqualOp)

Operator yang setara

Deskripsi:

Mengembalikan elemen kebenaran x == y elemen-bijaksana

Operan:

  1. x : tensor nilai jenis apa pun
  2. y : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.exp (TFL :: ExpOp)

Operator eksponensial alami

Deskripsi:

Melakukan operasi eksponensial alami elemen-bijaksana pada input.

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.expand_dims (TFL :: ExpandDimsOp)

Memasukkan dimensi 1 ke dalam bentuk tensor.

Deskripsi:

Diberikan input tensor, operasi ini memasukkan dimensi 1 pada axis indeks dimensi bentuk input . axis indeks dimensi dimulai dari nol; jika Anda menentukan angka negatif untuk axis itu dihitung mundur dari ujung.

Operasi ini berguna jika Anda ingin menambahkan dimensi batch ke elemen tunggal. Misalnya, jika Anda memiliki satu gambar bentuk [height, width, channels] , Anda dapat membuatnya menjadi batch 1 gambar dengan expand_dims(image, 0) , yang akan membuat bentuk [1, height, width, channels] .

Contoh lain:

 # 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]

# 't2' is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]
 

Operasi ini mensyaratkan bahwa:

-1-input.dims() <= dim <= input.dims()

Operasi ini terkait dengan squeeze() , yang menghilangkan dimensi ukuran 1.

Operan:

  1. input : tensor nilai jenis apa pun
  2. dim : tensor dari semua tipe integer

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.external_const (TFL :: ExternalConstOp)

Operasi const eksternal.

Deskripsi:

External const op memegang buffer_index yang menunjuk ke sebuah konstanta pada flatbuffer.

Operan:

Atribut:

Atribut Jenis MLIR Deskripsi
buffer_index IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.fake_quant (TFL :: FakeQuantOp)

Operator FakeQuant

Deskripsi:

Palsu-mengukur tensor 'input' tipe float melalui skalar float min dan maks ke tensor 'output' dengan bentuk yang sama dengan input.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
min FloatAttr Atribut atribut float 32-bit
max FloatAttr Atribut atribut float 32-bit
num_bits IntegerAttr Atribut atribut integer 32-bit
narrow_range BoolAttr atribut atribut bool

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.fill (TFL :: FillOp)

Isi tensor dengan nilai yang diberikan.

Deskripsi:

Isi tensor dengan nilai yang diberikan.

Operan:

  1. dims : tensor nilai jenis apa pun
  2. value : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. res : tensor nilai jenis apa pun

tfl.floor_div (TFL :: FloorDivOp)

Operator lantai div

Deskripsi:

Operasi lantai div elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.floor_mod (TFL :: FloorModOp)

Pengingat divisi

Deskripsi:

Operasi pengingat divisi elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.floor (TFL :: FloorOp)

Operator lantai

Deskripsi:

Mengembalikan nilai dasar elemen dari input.

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.fully_connected (TFL :: FullyConnectedOp)

Operasi yang sepenuhnya terhubung

Deskripsi:

Operan:

  1. input : tensor nilai jenis apa pun
  2. filter : tensor nilai jenis apa pun
  3. bias : tensor nilai tipe apa pun atau tipe tidak ada

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum
weights_format StringAttr Opsi yang sepenuhnya terhubung, menimbang atribut format
keep_num_dims BoolAttr atribut atribut bool

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.gather_nd (TFL :: GatherNdOp)

Kumpulkan operator

Deskripsi:

Kumpulkan irisan dari params menjadi Tensor dengan bentuk yang ditentukan oleh indices .

Operan:

  1. params : tensor nilai jenis apa pun
  2. indices : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.gather (TFL :: GatherOp)

Kumpulkan operator

Deskripsi:

Kumpulkan irisan dari sumbu axis params sesuai dengan indices .

Operan:

  1. params : tensor nilai jenis apa pun
  2. indices : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
axis IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.greater_equal (TFL :: GreaterEqualOp)

Operator yang lebih besar

Deskripsi:

Operasi Greater_equal elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.greater (TFL :: GreaterOp)

Operator yang lebih baik

Deskripsi:

Elemen-operasi yang lebih besar.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.hard_swish (TFL :: HardSwishOp)

Fungsi aktivasi Hardswish.

Deskripsi:

Menghitung fungsi aktivasi hard-swish f (x) -> (x * relu6 (x + 3)) / 6 elemen-bijaksana.

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. out : tensor nilai jenis apa pun

tfl.l2_normalization (TFL :: L2NormalalizationOp)

L2 Menormalkan Operator

Deskripsi:

L2Normalisasi Op

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.lstm (TFL :: LSTMOp)

Operator lstm penuh

Deskripsi:

Lapisan jaringan berulang unit memori jangka pendek (LSTM). Implementasi non-lubang intip default didasarkan pada: http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf S. Hochreiter dan J. Schmidhuber. "Memori Jangka Pendek Panjang". Neural Computation, 9 (8): 1735-1780, 1997. Implementasi lubang intip didasarkan pada: https://research.google.com/pubs/archive/43905.pdf Hasim Sak, Andrew Senior, dan Francoise Beaufays. "Arsitektur jaringan saraf rekurensi jangka panjang jangka panjang untuk pemodelan akustik skala besar. INTERSPEECH, 2014. Kopling input dan forget gate (CIFG) didasarkan pada: http://arxiv.org/pdf/1503.04069.pdf Greff et al . "LSTM: A Space Space Odyssey" Normalisasi layer didasarkan pada: https://arxiv.org/pdf/1607.06450.pdf Ba et al. "Normalisasi Layer"

Operan:

  1. input : tensor nilai jenis apa pun
  2. input_to_input_weights : tensor nilai tipe apa pun atau tipe apa pun
  3. input_to_forget_weights : tensor nilai jenis apa pun
  4. input_to_cell_weights : tensor nilai jenis apa pun
  5. input_to_output_weights : tensor nilai jenis apa pun
  6. recurrent_to_input_weights : tensor nilai tipe apa pun atau tipe apa pun
  7. recurrent_to_forget_weights : tensor nilai jenis apa pun
  8. recurrent_to_cell_weights : tensor nilai jenis apa pun
  9. recurrent_to_output_weights : tensor nilai jenis apa pun
  10. cell_to_input_weights : tensor nilai tipe apa pun atau tipe apa pun
  11. cell_to_forget_weights : tensor nilai tipe apa pun atau tipe apa pun
  12. cell_to_output_weights : tensor nilai tipe apa pun atau tipe apa pun
  13. input_gate_bias : tensor nilai tipe apa pun atau tipe tidak sama sekali
  14. forget_gate_bias : tensor nilai jenis apa pun
  15. cell_bias : tensor nilai jenis apa pun
  16. output_gate_bias : tensor nilai jenis apa pun
  17. projection_weights : tensor nilai tipe apa pun atau tipe tidak ada
  18. projection_bias : tensor nilai tipe apa pun atau tipe tidak ada
  19. input_activation_state : tensor stateful
  20. input_cell_state : tensor stateful
  21. input_layer_norm_coefficients : tensor nilai tipe apa pun atau tipe apa pun
  22. forget_layer_norm_coefficients : tensor nilai tipe apa pun atau tipe apa pun
  23. cell_layer_norm_coefficients : tensor nilai tipe apa pun atau tipe apa pun
  24. output_layer_norm_coefficients : tensor nilai tipe apa pun atau tipe apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum
cell_clip FloatAttr Atribut atribut float 32-bit
proj_clip FloatAttr Atribut atribut float 32-bit
kernel_type StringAttr lstm tipe kernel enum case FULL atribut

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.leaky_relu (TFL :: LeakyReluOp)

Operator Leaky Relu

Deskripsi:

Elemen Reak Leaky operator Elemen x -> x> = 0? x: (alpha * x)

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
alpha FloatAttr Atribut atribut float 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.less_equal (TFL :: LessEqualOp)

Operator Less_equal

Deskripsi:

Operasi less_equal elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.less (TFL :: LessOp)

Lebih sedikit operator

Deskripsi:

Elemen kurang operasi.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.local_response_normalization (TFL :: LocalResponseNormalizationOp)

Normalisasi Respon Lokal.

Deskripsi:

input tensor 4-D diperlakukan sebagai array 3-D dari vektor 1-D (sepanjang dimensi terakhir), dan masing-masing vektor dinormalisasi secara independen. Di dalam vektor yang diberikan, masing-masing komponen dibagi dengan jumlah input kuadrat tertimbang, dalam depth_radius . Secara terperinci,

 sqr_sum[a, b, c, d] =
    sum(input[a, b, c, d - depth_radius : d + depth_radius + 1] ** 2)
output = input / (bias + alpha * sqr_sum) ** beta
 

Untuk detailnya, lihat Krizhevsky et al., Klasifikasi ImageNet dengan jaringan saraf convolutional yang mendalam (NIPS 2012) .

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
radius IntegerAttr Atribut atribut integer 32-bit
bias FloatAttr Atribut atribut float 32-bit
alpha FloatAttr Atribut atribut float 32-bit
beta FloatAttr Atribut atribut float 32-bit

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.log (TFL :: LogOp)

Operator logaritma alami

Deskripsi:

Melakukan operasi logaritma natural elemen-bijaksana pada input.

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.log_softmax (TFL :: LogSoftmaxOp)

Log operator softmax

Deskripsi:

Menghitung aktivasi log softmax elemen-bijaksana dengan rumus berikut

input - log (mengurangi_sum (exp (input), redup))

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.logical_and (TFL :: LogicalAndOp)

Logis DAN operator

Deskripsi:

Elemen-bijaksana logis DAN operasi.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.logical_not (TFL :: LogicalNotOp)

TIDAK logis operator

Deskripsi:

Elemen-bijaksana, BUKAN operasi.

Operan:

  1. lhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.logical_or (TFL :: LogicalOrOp)

Logika ATAU operator

Deskripsi:

Elemen ATAU operasi logis.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.logistic (TFL :: LogisticOp)

Operator logistik

Deskripsi:

Menghitung elemen input bijak

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.matrix_diag (TFL :: MatrixDiagOp)

 Returns a tensor with the provided diagonal and everything else padded with zeros.
 

Deskripsi:

Diberikan diagonal, mengembalikan tensor dengan diagonal dan yang lainnya diisi dengan nol. Asumsikan diagonal memiliki dimensi k [I, J, K, ..., N] , maka outputnya adalah tensor dari peringkat k+1 dengan dimensi [I, J, K, ..., N, N] mana: output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n].

Operan:

  1. diagonal : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.matrix_set_diag (TFL :: MatrixSetDiagOp)

 Returns a batched matrix tensor with new batched diagonal values.
 

Deskripsi:

Diberikan input dan diagonal , operasi ini mengembalikan tensor dengan bentuk dan nilai yang sama dengan input , kecuali untuk diagonal utama dari matriks terdalam. Ini akan ditimpa oleh nilai-nilai diagonal .

Operan:

  1. input : tensor float 32-bit atau integer 32-bit atau integer 64-bit atau integer 8-bit atau tipe QI8 atau tipe QI16 atau tipe QUI8 atau tipe UFL8 TFLite atau nilai tipe TFLite quint8
  2. diagonal : tensor float 32-bit atau integer 32-bit atau integer 64-bit atau integer 8-bit atau tipe QI8 atau tipe QI16 atau tipe QUI8 atau TFLite tipe uint8 atau TFLite tipe nilai quint8

Atribut:

Hasil:

  1. output : tensor float 32-bit atau integer 32-bit atau integer 64-bit atau integer 8-bit atau tipe QI8 atau tipe QI16 atau tipe QUI8 atau tipe Uint8 TFLite atau nilai tipe TFLite quint8

tfl.max_pool_2d (TFL :: MaxPool2DOp)

Max Pool 2D op

Deskripsi:

Melakukan max pool 2D pada input.

Input: inputs[0] : wajib: tensor input

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
padding StringAttr atribut padding enum
stride_w IntegerAttr Atribut atribut integer 32-bit
stride_h IntegerAttr Atribut atribut integer 32-bit
filter_width IntegerAttr Atribut atribut integer 32-bit
filter_height IntegerAttr Atribut atribut integer 32-bit
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.max_pooling_with_argmax_2d (TFL :: MaxPoolingWithArgMax2DOp)

Max Pool 2D dengan op argmax

Deskripsi:

Melakukan penyatuan maks pada input dan menampilkan nilai dan indeks maks. Setiap indeks adalah indeks rata dalam sub-larik ukuran "filter_w" x "filter_h". Perhatikan ini adalah op kustom yang tidak didukung dalam runtime standar.

Input: inputs[0] : wajib: tensor aktivasi input

Operan:

  1. input : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
padding StringAttr atribut padding enum
stride_w IntegerAttr Atribut atribut integer 32-bit
stride_h IntegerAttr Atribut atribut integer 32-bit
filter_w IntegerAttr Atribut atribut integer 32-bit
filter_h IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. value : tensor nilai jenis apa pun
  2. indices : tensor nilai jenis apa pun

tfl.max_unpooling_2d (TFL :: MaxUnpooling2DOp)

Max Unpool 2D

Deskripsi:

Melakukan operasi unpool maks. Untuk beberapa hal ini adalah operasi kebalikan dari pengumpulan maks: elemen-elemen dalam tensor aktivasi input disimpan ke posisi yang ditentukan oleh indeks input. Catatan ini adalah op kustom yang tidak didukung dalam runtime standar.

Input: inputs[0] : wajib: input tensor aktivasi inputs[1] : wajib: indeks input

Operan:

  1. input : tensor nilai jenis apa pun
  2. indices : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
padding StringAttr atribut padding enum
stride_w IntegerAttr Atribut atribut integer 32-bit
stride_h IntegerAttr Atribut atribut integer 32-bit
filter_w IntegerAttr Atribut atribut integer 32-bit
filter_h IntegerAttr Atribut atribut integer 32-bit

Hasil:

  1. outputs : tensor nilai jenis apa pun

tfl.maximum (TFL :: MaximumOp)

Operator maks

Deskripsi:

Operasi maks elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. max : tensor nilai jenis apa pun

tfl.mean (TFL :: MeanOp)

Operator yang berarti

Deskripsi:

Menghitung rata-rata elemen dalam dimensi tensor. Mengurangi input_tensor sepanjang dimensi yang diberikan dalam sumbu. Kecuali jika keepdims benar, pangkat tensor dikurangi sebesar 1 untuk setiap entri dalam sumbu. Jika keepdims benar, dimensi yang diperkecil dipertahankan dengan panjang 1.

Operan:

  1. input : tensor nilai jenis apa pun
  2. axis : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
keep_dims BoolAttr atribut atribut bool

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.minimum (TFL :: MinimumOp)

Operator minimum

Deskripsi:

Operasi min elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. min : tensor nilai jenis apa pun

tfl.mirror_pad (TFL :: MirrorPadOp)

Operator MirrorPad. Pads tensor dengan nilai cermin.

Deskripsi:

Operasi ini memberikan input dengan nilai cermin sesuai dengan bantalan yang Anda tentukan. paddings adalah tensor integer dengan bentuk [n, 2], di mana n adalah pangkat input. Untuk setiap dimensi D input, paddings [D, 0] menunjukkan berapa banyak nilai yang harus ditambahkan sebelum isi input dalam dimensi itu, dan paddings [D, 1] menunjukkan berapa banyak nilai yang akan ditambahkan setelah isi input dalam dimensi tersebut.

Baik paddings [D, 0] dan paddings [D, 1] harus tidak lebih dari input.dim_size (D) (atau input.dim_size (D) - 1) jika copy_border benar (jika salah, masing-masing).

Ukuran empuk dari setiap dimensi D dari output adalah:

paddings (D, 0) + input.dim_size (D) + paddings (D, 1)

Operan:

  1. input : tensor nilai jenis apa pun
  2. pad : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
mode StringAttr Atribut mirror pad enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.mul (TFL :: MulOp)

Operator perkalian

Deskripsi:

Operasi penggandaan elemen-bijaksana.

Operan:

  1. lhs : tensor nilai jenis apa pun
  2. rhs : tensor nilai jenis apa pun

Atribut:

Atribut Jenis MLIR Deskripsi
fused_activation_function StringAttr aktivasi enum atribut enum

Hasil:

  1. output : tensor nilai jenis apa pun

tfl.neg (TFL :: NegOp)

Operator negosiasi

Deskripsi:

Hitung elemen-bijaksana negasi input

Operan:

  1. x : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. y : tensor nilai jenis apa pun

tfl.non_max_suppression_v4 (TFL :: NonMaxSuppressionV4Op)

Dengan rakus memilih subset dari kotak pembatas dalam urutan skor yang menurun,

Deskripsi:

memangkas kotak yang memiliki persimpangan tinggi-over-union (IOU) tumpang tindih dengan kotak yang dipilih sebelumnya. Kotak score_threshold dengan skor kurang dari score_threshold dihapus. Bounding box disediakan sebagai [y1, x1, y2, x2], di mana (y1, x1) dan (y2, x2) adalah koordinat dari setiap pasangan sudut kotak diagonal dan koordinat dapat diberikan sebagai dinormalisasi (yaitu, berbaring di interval [0, 1]) atau absolut. Perhatikan bahwa algoritma ini bersifat agnostik ke tempat asalnya dalam sistem koordinat dan lebih umum tidak berubah pada transformasi ortogonal dan terjemahan sistem koordinat; dengan demikian menerjemahkan atau refleksi dari hasil sistem koordinat dalam kotak yang sama dipilih oleh algoritma. Output dari operasi ini adalah satu set bilangan bulat yang mengindeks ke dalam kumpulan input dari kotak pembatas yang mewakili kotak yang dipilih. Koordinat kotak terikat sesuai dengan indeks yang dipilih kemudian dapat diperoleh dengan menggunakan tf.gather operation . Misalnya: selected_indices = tf.image.non_max_suppression_v2 (kotak, skor, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather (kotak, selected_indices)

Operan:

  1. boxes : tensor nilai jenis apa pun
  2. scores : tensor nilai jenis apa pun
  3. max_output_size : tensor nilai jenis apa pun
  4. iou_threshold : tensor nilai jenis apa pun
  5. score_threshold : tensor nilai jenis apa pun

Atribut:

Hasil:

  1. selected_indices : tensor nilai jenis apa pun
  2. valid_outputs : tensor nilai jenis apa pun

tfl.non_max_suppression_v5 (TFL :: NonMaxSuppressionV5Op)

Dengan rakus memilih subset dari kotak pembatas dalam urutan skor yang menurun,

Deskripsi:

memangkas kotak yang memiliki persimpangan tinggi-over-union (IOU) tumpang tindih dengan kotak yang dipilih sebelumnya. Kotak score_threshold dengan skor kurang dari score_threshold dihapus. Bounding box disediakan sebagai [y1, x1, y2, x2], di mana (y1, x1) dan (y2, x2) adalah koordinat dari setiap pasangan sudut kotak diagonal dan koordinat dapat diberikan sebagai dinormalisasi (yaitu, berbaring di interval [0, 1]) atau absolut. Perhatikan bahwa algoritma ini bersifat agnostik ke tempat asalnya dalam sistem koordinat dan lebih umum tidak berubah pada transformasi ortogonal dan terjemahan sistem koordinat; dengan demikian menerjemahkan atau refleksi dari hasil sistem koordinat dalam kotak yang sama dipilih oleh algoritma. Output dari operasi ini adalah satu set bilangan bulat yang mengindeks ke dalam kumpulan input dari kotak pembatas yang mewakili kotak yang dipilih. Koordinat kotak terikat sesuai dengan indeks yang dipilih kemudian dapat diperoleh dengan menggunakan tf.gather operation . For example: selected_indices = tf.image.non_max_suppression_v2( boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) This op also supports a Soft-NMS (with Gaussian weighting) mode (cf Bodla et al, https://arxiv.org/abs/1704.04503) where boxes reduce the score of other overlapping boxes instead of directly causing them to be pruned. To enable this Soft-NMS mode, set the soft_nms_sigma parameter to be larger than 0.

Operands:

  1. boxes : tensor of any type values
  2. scores : tensor of any type values
  3. max_output_size : tensor of any type values
  4. iou_threshold : tensor of any type values
  5. score_threshold : tensor of any type values
  6. soft_nms_sigma : tensor of any type values

Attributes:

Results:

  1. selected_indices : tensor of any type values
  2. selected_scores : tensor of any type values
  3. valid_outputs : tensor of any type values

tfl.not_equal (TFL::NotEqualOp)

Not_equal operator

Description:

Element-wise not_equal operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.NumericVerify (TFL::NumericVerifyOp)

Verifies the numericals of the two operands

Description:

The NumericVerify op is a debugging op to verify the numericals of the two activations. It is a custom op in TFLite.

Operands:

  1. input : tensor of any type values
  2. ref : tensor of any type values

Attributes:

Attribute MLIR Type Description
tolerance FloatAttr 32-bit float attribute attribute

Results:

tfl.one_hot (TFL::OneHotOp)

OneHot operator

Description:

Returns a one-hot tensor.The locations represented by indices in indices take value on_value , while all other locations take value off_value .

If the input indices is rank N , the output will have rank N+1 , The new axis is created at dimension axis (default: the new axis is appended at the end).

Operands:

  1. indices : tensor of any type values
  2. depth : tensor of any type values
  3. on_value : tensor of any type values
  4. off_value : tensor of any type values

Attributes:

Attribute MLIR Type Description
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.prelu (TFL::PReluOp)

Parameterized Relu operator

Description:

Parameterized Relu operator x -> x >= 0 ? x : (alpha * x) where alpha is a trainable tensor. alpha should have one less rank than the input as it doesn't have the batch dimension, and the other dimensions either should be the same size as input or size 1, where it is broadcasted in the second case.

Operands:

  1. input : tensor of any type values
  2. alpha : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pack (TFL::PackOp)

Packs a list of tensors along a dimension into one tensor

Description:

Packs a list of values_count rank- R tensors into one rank- (R+1) tensor.

Packs the values_count tensors in values into a tensor with rank one higher than each tensor in values , by packing them along the axis dimension.

Given a list of tensors of shape (A, B, C) ;

if axis == 0 then the output tensor will have the shape (N, A, B, C) . if axis == 1 then the output tensor will have the shape (A, N, B, C) . Etc.

For example:

 # 'x' is [1, 4]
# 'y' is [2, 5]
# 'z' is [3, 6]
pack([x, y, z]) => [[1, 4], [2, 5], [3, 6]]  # Pack along first dim.
pack([x, y, z], axis=1) => [[1, 2, 3], [4, 5, 6]]
 

This is the opposite of unpack .

Operands:

  1. values : tensor of any type values

Attributes:

Attribute MLIR Type Description
values_count IntegerAttr 32-bit integer attribute attribute
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.pad (TFL::PadOp)

Padding operator

Description:

This operation pads a input with zeros according to the paddings you specify. paddings is an integer tensor with shape [Dn, 2] , where n is the rank of input . For each dimension D of input , paddings[D, 0] indicates how many zeros to add before the contents of input in that dimension, and paddings[D, 1] indicates how many zeros to add after the contents of input in that dimension.

The padded size of each dimension D of the output is:

paddings(D, 0) + input.dim_size(D) + paddings(D, 1)

For example:

 # 't' is [[1, 1], [2, 2]]
# 'paddings' is [[1, 1], [2, 2]]
# rank of 't' is 2
pad(t, paddings) ==> [[0, 0, 0, 0, 0, 0]
                      [0, 0, 1, 1, 0, 0]
                      [0, 0, 2, 2, 0, 0]
                      [0, 0, 0, 0, 0, 0]]
 

Operands:

  1. input : tensor of any type values
  2. padding : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.padv2 (TFL::PadV2Op)

Padding operator v2

Description:

This operation pads a input according to the paddings and constant_values you specify. paddings is an integer tensor with shape [Dn, 2] , where n is the rank of input . For each dimension D of input , paddings[D, 0] indicates how many zeros to add before the contents of input in that dimension, and paddings[D, 1] indicates how many zeros to add after the contents of input in that dimension. constant_values is a scalar tensor of the same type as input that indicates the value to use for padding input .

The padded size of each dimension D of the output is:

paddings(D, 0) + input.dim_size(D) + paddings(D, 1)

For example:

 # 't' is [[1, 1], [2, 2]]
# 'paddings' is [[1, 1], [2, 2]]
# rank of 't' is 2
pad(t, paddings) ==> [[0, 0, 0, 0, 0, 0]
                      [0, 0, 1, 1, 0, 0]
                      [0, 0, 2, 2, 0, 0]
                      [0, 0, 0, 0, 0, 0]]
 

Operands:

  1. input : tensor of any type values
  2. padding : tensor of any type values
  3. constant_values : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pow (TFL::PowOp)

Power operator

Description:

Element-wise power operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pseudo_qconst (TFL::QConstOp)

Quantized constant pseudo op

Description:

Represents a quantized constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead. The quantization parameters are stored as a type attribute in this constant.

Operands:

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute
value ElementsAttr constant vector/tensor attribute attribute

Results:

  1. output : tensor of any type values

tfl.quantize (TFL::QuantizeOp)

Quantize operator

Description:

Converts floating point tensors to quantized integer tensors according to the quantization parameters defined in the type attribute.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute

Results:

  1. output : tensor of any type values

tfl.range (TFL::RangeOp)

Range operator

Description:

Returns a 1D tensor defined by a sequence from start to limit with a given delta .

Operands:

  1. start : tensor of any type values
  2. limit : tensor of any type values
  3. delta : tensor of any type values

Attributes:

Results:

  1. result : tensor of any type values

tfl.rank (TFL::RankOp)

Rank operator.

Description:

Returns the rank of a tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. output : tensor of any integer type

tfl.reduce_any (TFL::ReduceAnyOp)

Computes the "logical or" of elements across dimensions of a tensor.

Description:

Reduces input along the dimensions given in axis . Unless keep_dims is true, the rank of the tensor is reduced by 1 for each entry in axis . If keep_dims is true, the reduced dimensions are retained with length 1.

Operands:

  1. input : tensor of any type values
  2. reduction_indices : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.reduce_max (TFL::ReduceMaxOp)

Max-reduction operator

Description:

Computes the max reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.reduce_min (TFL::ReduceMinOp)

Min-reduction operator

Description:

Computes the min reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.reduce_prod (TFL::ReduceProdOp)

Prod-reduction operator

Description:

Computes the product along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.relu_n1_to_1 (TFL::Relu1Op)

Relu1 operator

Description:

Element-wise Relu1 operator x -> max(-1, min(1, x))

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.relu6 (TFL::Relu6Op)

Relu6 operator

Description:

Element-wise Relu6 operator x -> max(0, min(6, x))

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.relu (TFL::ReluOp)

Relu operator

Description:

Element-wise Relu operator x -> max(0, x)

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.reshape (TFL::ReshapeOp)

Reshape operator

Description:

Produces a tensor with the same values but different static shape defined by the output type.

Operands:

  1. input : tensor of any type values
  2. shape : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.resize_bilinear (TFL::ResizeBilinearOp)

ResizeBilinear Op

Description:

Resize images to size using bilinear interpolation.

Operands:

  1. input : tensor of any type values
  2. size : tensor of any type values

Attributes:

Attribute MLIR Type Description
align_corners BoolAttr bool attribute attribute
half_pixel_centers BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.resize_nearest_neighbor (TFL::ResizeNearestNeighborOp)

ResizeNearestNeighbor Op

Description:

Resize images to size using nearest neighbor interpolation.

Operands:

  1. input : tensor of any type values
  2. size : tensor of any type values

Attributes:

Attribute MLIR Type Description
align_corners BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.reverse_sequence (TFL::ReverseSequenceOp)

Reverses variable length slices.

Description:

This op first slices input along the dimension batch_dim , and for each slice i , reverses the first seq_lengths[i] elements along the dimension seq_dim .

The elements of seq_lengths must obey seq_lengths[i] <= input.dims[seq_dim] , and seq_lengths must be a vector of length input.dims[batch_dim] .

The output slice i along dimension batch_dim is then given by input slice i , with the first seq_lengths[i] slices along dimension seq_dim reversed.

Operands:

  1. input : tensor of any type values
  2. seq_lengths : tensor of any type values

Attributes:

Attribute MLIR Type Description
seq_dim IntegerAttr 32-bit integer attribute attribute
batch_dim IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.reverse_v2 (TFL::ReverseV2Op)

ReverseV2 Operator

Description:

Reverses specific dimensions of a tensor.

Given a tensor, and a int32/int64 tensor axis representing the set of dimensions of tensor to reverse. This operation reverses each dimension i for which there exists j st axis[j] == i.

Args: tensor: A Tensor. Must be one of the following types: uint8, int16, int32, int64, float32, bool Up to 8-D.

axis: A Tensor. Must be one of the following types: int32, int64. with only 1 element which is the axis index. TODO: Add support for multiple elements.

Operands:

  1. input : tensor of any type values
  2. axis : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.round (TFL::RoundOp)

Round operator

Description:

Rounds the values of a tensor to the nearest integer, element-wise.

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.rsqrt (TFL::RsqrtOp)

Reciprocal of square root operator

Description:

Computes element-wise reverse square root of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.svdf (TFL::SVDFOp)

Single value decomposition filter operator

Description:

The SVDF op is a decomposition of a densely connected op into low rank filters. For details: https://research.google.com/pubs/pub43813.html https://arxiv.org/abs/1812.02802

Operands:

  1. input : tensor of any type values
  2. feature_weights : tensor of any type values
  3. time_weights : tensor of any type values
  4. input_gate_bias : tensor of any type values or none type
  5. activation_state : stateful tensor

Attributes:

Attribute MLIR Type Description
rank IntegerAttr 32-bit integer attribute attribute
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.segment_sum (TFL::SegmentSumOp)

SegmentSum operator

Description:

Computes the sum along segments of a tensor.

Operands:

  1. data : tensor of any type values
  2. segment_ids : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.select (TFL::SelectOp)

Select operator

Description:

Select values of 'x' if the corresponding value of 'condition' is true or the value of 'y' if false. There are valid condition input sizes:

  1. Either the same shape (in which case the select is elementwise), or
  2. condition must be Rank 1 and match over the first dimension.

Operands:

  1. condition : tensor of any type values
  2. x : tensor of any type values
  3. y : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.select_v2 (TFL::SelectV2Op)

SelectV2 operator

Description:

Select values of 'x' if the corresponding value of 'condition' is true or the value of 'y' if false. There are valid condition input sizes:

  1. Either the same shape (in which case the select is elementwise), or
  2. Broadcastable shapes between 'condition', 'x' and 'y'.

Operands:

  1. condition : tensor of any type values
  2. x : tensor of any type values
  3. y : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.shape (TFL::ShapeOp)

Shape operator

Description:

Returns the shape of a tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
out_type Attribute derived attribute attribute

Results:

  1. output : tensor of any type values

tfl.sin (TFL::SinOp)

Sine operator

Description:

Computes element-wise Sine of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.slice (TFL::SliceOp)

Return a slice from 'input'.

Description:

The output tensor is a tensor with dimensions described by 'size' whose values are extracted from 'input' starting at the offsets in 'begin'.

begin is zero-based; size is one-based. If size[i] is -1, all remaining elements in dimension i are included in the slice. In other words, this is equivalent to setting: size[i] = input.dim_size(i) - begin[i]

Requirements : 0 <= begin[i] <= begin[i] + size[i] <= Di for i in [0, n)

Operands:

  1. input : tensor of any type values
  2. begin : tensor of any type values
  3. size : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.softmax (TFL::SoftmaxOp)

Softmax operator

Description:

Computes element-wise softmax activations with the following formula

exp(input) / tf.reduce_sum(exp(input * beta), dim)

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
beta FloatAttr 32-bit float attribute attribute

Results:

  1. output : tensor of any type values

tfl.space_to_batch_nd (TFL::SpaceToBatchNdOp)

SpaceToBatchNd operator

Description:

This operation reshapes space dimensions into the "batch" dimension 0

Operands:

  1. input : tensor of any type values
  2. block_shape : tensor of any type values
  3. paddings : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.space_to_depth (TFL::SpaceToDepthOp)

SpaceToDepth operator

Description:

Rearranges blocks of spatial data, into depth. More specifically, this op outputs a copy of the input tensor where values from the height and width dimensions are moved to the depth dimension. block_size indicates the input block size.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
block_size IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.pseudo_sparse_const (TFL::SparseConstOp)

Sparse constant pseudo op.

Description:

Represents a sparse constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead.

Operands:

Attributes:

Attribute MLIR Type Description
value ElementsAttr constant vector/tensor attribute attribute
s_param TFL::SparsityParameterAttr Sparsity parameter. attribute

Results:

  1. output : tensor of any type values

tfl.pseudo_sparse_qconst (TFL::SparseQConstOp)

Sparse quantized constant pseudo op

Description:

Represents a sparse quantized constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead. The quantization parameters are stored as a type attribute in this constant.

Operands:

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute
value ElementsAttr constant vector/tensor attribute attribute
s_param TFL::SparsityParameterAttr Sparsity parameter. attribute

Results:

  1. output : tensor of any type values

tfl.sparse_to_dense (TFL::SparseToDenseOp)

Converts a sparse representation into a dense tensor.

Description:

Builds an array dense with shape output_shape such that

 # If sparse_indices is scalar
dense[i] = (i == sparse_indices ? sparse_values : default_value)

# If sparse_indices is a vector, then for each i
dense[sparse_indices[i]] = sparse_values[i]

# If sparse_indices is an n by d matrix, then for each i in [0, n)
dense[sparse_indices[i][0], ..., sparse_indices[i][d-1]] = sparse_values[i]
 

All other values in dense are set to default_value . If sparse_values is a scalar, all sparse indices are set to this single value.

Indices should be sorted in lexicographic order, and indices must not contain any repeats. If validate_indices is true, these properties are checked during execution.

Operands:

  1. sparse_indices : tensor of any type values
  2. output_shape : tensor of any type values
  3. sparse_values : tensor of any type values
  4. default_value : tensor of any type values

Attributes:

Results:

  1. dense : tensor of any type values

tfl.split (TFL::SplitOp)

Splits a tensor into num_split tensors along one dimension.

Description:

Splits the value tensor along split_dim into a number of sub-tensors with same shape as the original one, except for split_dim . Same as tf.Split.

Operands:

  1. split_dim : tensor of any type values
  2. value : tensor of any type values

Attributes:

Attribute MLIR Type Description
num_splits IntegerAttr positive 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.split_v (TFL::SplitVOp)

Splits a tensor into num_split tensors along one dimension.

Description:

Splits the value tensor along split_dim into a number of sub-tensors with same shape as the original one, except for split_dim . The grouping of the resultant sub-tensors is decided by size-splits . Same as tf.SplitV.

Operands:

  1. value : tensor of any type values
  2. size_splits : 1D tensor of 32-bit integer values
  3. split_dim : 0D tensor of 32-bit integer values

Attributes:

Attribute MLIR Type Description
num_splits IntegerAttr positive 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.sqrt (TFL::SqrtOp)

Square root operator

Description:

Computes element-wise Square root of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.square (TFL::SquareOp)

Square operator

Description:

Computes element-wise Square of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.squared_difference (TFL::SquaredDifferenceOp)

Squared difference operator

Description:

Element-wise squared difference operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.squeeze (TFL::SqueezeOp)

Removes dimensions of size 1 from the shape of a tensor.

Description:

Given a tensor input , this operation returns a tensor of the same type with all dimensions of size 1 removed. If you don't want to remove all size 1 dimensions, you can remove specific size 1 dimensions by specifying axis .

For example:

 # 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
shape(squeeze(t)) ==> [2, 3]
 

Or, to remove specific size 1 dimensions:

 # 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1]
 

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
squeeze_dims ArrayAttr 64-bit integer array attribute attribute

Results:

  1. output : tensor of any type values

tfl.strided_slice (TFL::StridedSliceOp)

StridedSlice Op

Description:

Return a strided slice from input .

Operands:

  1. input : tensor of any type values
  2. begin : tensor of any type values
  3. end : tensor of any type values
  4. strides : tensor of any type values

Attributes:

Attribute MLIR Type Description
begin_mask IntegerAttr 32-bit integer attribute attribute
end_mask IntegerAttr 32-bit integer attribute attribute
ellipsis_mask IntegerAttr 32-bit integer attribute attribute
new_axis_mask IntegerAttr 32-bit integer attribute attribute
shrink_axis_mask IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.sub (TFL::SubOp)

Subtraction operator

Description:

Element-wise subtraction operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Attribute MLIR Type Description
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.sum (TFL::SumOp)

Sum operator

Description:

Computes the sum reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.tanh (TFL::TanhOp)

Hyperbolic tangent operator

Description:

Computes element-wise Hyperbolic tangent of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.tile (TFL::TileOp)

Tile operator.

Description:

Constructs a tensor by tiling a given tensor.

This operation creates a new tensor by replicating input multiples times. The output tensor's i'th dimension has input.dims(i) * multiples[i] elements, and the values of input are replicated multiples[i] times along the 'i'th dimension. For example, tiling [abcd] by [2] produces [abcdabcd].

Operands:

  1. input : tensor of any type values
  2. multiples : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.topk_v2 (TFL::TopKV2Op)

TopK operator

Description:

Returns the top k largest element along each last dimensional slice of input and the indices of values within the last dimension of the input tensor.

Operands:

  1. input : tensor of any type values
  2. k : tensor of any type values

Attributes:

Results:

  1. values : tensor of any type values
  2. indices : tensor of any type values

tfl.transpose_conv (TFL::TransposeConvOp)

Transpose convolution operator

Description:

Performs transpose convolution operation on input.

Operands:

  1. output_shape : 1D tensor of any type values
  2. weights : tensor of any type values
  3. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
padding StringAttr padding enum attribute
stride_h IntegerAttr 32-bit integer attribute attribute
stride_w IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.transpose (TFL::TransposeOp)

Transpose operator

Description:

Returns the Transpose of x

Operands:

  1. x : tensor of any type values
  2. perm : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.unidirectional_sequence_lstm (TFL::UnidirectionalSequenceLSTMOp)

Unidirectional sequence lstm operator

Description:

A recurrent neural network specified by an LSTM cell. This Op supports unrolling the input along the time or batch dimensions, and implements the following operation for each element in the sequence s = 1...sequence_length: outputs[s] = state = activation(LSTMOp(inputs[s]))

where LSTMOp is LSTM TF Lite Op and the “activation” is the function passed as the “fused_activation_function” argument (if not “NONE”).

Operands:

  1. input : tensor of any type values
  2. input_to_input_weights : tensor of any type values or none type
  3. input_to_forget_weights : tensor of any type values
  4. input_to_cell_weights : tensor of any type values
  5. input_to_output_weights : tensor of any type values
  6. recurrent_to_input_weights : tensor of any type values or none type
  7. recurrent_to_forget_weights : tensor of any type values
  8. recurrent_to_cell_weights : tensor of any type values
  9. recurrent_to_output_weights : tensor of any type values
  10. cell_to_input_weights : tensor of any type values or none type
  11. cell_to_forget_weights : tensor of any type values or none type
  12. cell_to_output_weights : tensor of any type values or none type
  13. input_gate_bias : tensor of any type values or none type
  14. forget_gate_bias : tensor of any type values
  15. cell_bias : tensor of any type values
  16. output_gate_bias : tensor of any type values
  17. projection_weights : tensor of any type values or none type
  18. projection_bias : tensor of any type values or none type
  19. input_activation_state : stateful tensor
  20. input_cell_state : stateful tensor
  21. input_layer_norm_coefficients : tensor of any type values or none type
  22. forget_layer_norm_coefficients : tensor of any type values or none type
  23. cell_layer_norm_coefficients : tensor of any type values or none type
  24. output_layer_norm_coefficients : tensor of any type values or none type

Attributes:

Attribute MLIR Type Description
fused_activation_function StringAttr fused activation enum attribute
cell_clip FloatAttr 32-bit float attribute attribute
proj_clip FloatAttr 32-bit float attribute attribute
time_major BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.unidirectional_sequence_rnn (TFL::UnidirectionalSequenceRNNOp)

Unidirectional sequence rnn operator

Description:

A recurrent neural network specified by an RNN cell. This Op takes in input in a format {batch_size, seq_len, input_size} or {seq_len, batch_size, input_size} if it's time-majored.

It implements the following operation for each element in the sequence s = 1...sequence_length: outputs[s] = state = activation(RNNOp(inputs[s]))

where RNNOp is RNNOp TF Lite Op and the “activation” is the function passed as the “fused_activation_function” argument (if not “NONE”).

Operands:

  1. input : tensor of any type values
  2. input_to_input_weights : tensor of any type values
  3. recurrent_to_input_weights : tensor of any type values
  4. input_gate_bias : tensor of any type values
  5. hidden_state : stateful tensor

Attributes:

Attribute MLIR Type Description
time_major BoolAttr bool attribute attribute
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.unique (TFL::UniqueOp)

Unique Op.

Description:

This operation returns a tensor y containing all of the unique elements of x sorted in the same order that they occur in x . This operation also returns a tensor idx the same size as x that contains the index of each value of x in the unique output y . In other words:

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
idx_out_type Attribute derived attribute attribute

Results:

  1. output : tensor of any type values
  2. idx : tensor of any type values

tfl.unpack (TFL::UnpackOp)

Unpacks a tensor along a dimension into multiple tensors

Description:

Unpacks a given dimension of a rank- R tensor into num rank- (R-1) tensors.

Unpacks num tensors from value by chipping it along the axis dimension. For example, given a tensor of shape (A, B, C, D) ;

If axis == 0 then the i'th tensor in output is the slice value[i, :, :, :] and each tensor in output will have shape (B, C, D) . (Note that the dimension unpacked along is gone, unlike split ).

If axis == 1 then the i'th tensor in output is the slice value[:, i, :, :] and each tensor in output will have shape (A, C, D) . Etc.

This is the opposite of pack .

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
num IntegerAttr 32-bit integer attribute attribute
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.where (TFL::WhereOp)

Returns locations of nonzero / true values in a tensor.

Description:

This operation returns the coordinates of true elements in condition . The coordinates are returned in a 2-D tensor where the first dimension (rows) represents the number of true elements, and the second dimension (columns) represents the coordinates of the true elements. Keep in mind, the shape of the output tensor can vary depending on how many true values there are in condition . Indices are output in row-major order.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. index : tensor of any type values

tfl.while (TFL::WhileOp)

While loop

Description:

output = input; while (cond(output)) { output = body(output) }

While loop where all values are passes through arguments with implicit capture.

input: A list of input tensors whose types are T. output: A list of output tensors whose types are T. cond: A region takes 'input' and returns a boolean scalar tensor. body: A region that takes a list of tensors and returns another list of tensors. Both lists have the same types.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
is_stateless BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.yield (TFL::YieldOp)

Yield operation

Description:

The "yield" operation represents a return operation within the conditional and body of structured control flow (eg, while). The operation takes variable number of operands and produces no results. The operand number and types must match the signature of the region that contains the operation.

Operands:

  1. operands : any type

Attributes:

Results:

tfl.zeros_like (TFL::ZerosLikeOp)

ZerosLike operator

Description:

Returns a tensor of zeros with the same shape and type as the input tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values