'tfl' Dialecte

Le dialecte TensorFlow Lite.

Ce dialecte correspond aux opérations TensorFlow Lite.

Invariants :

  • Toutes les valeurs sont de type Tensor (en particulier, les scalaires sont représentés à l'aide de tenseurs de dimension zéro) ;

Opérations

tfl.abs (TFL::AbsOp)

Opérateur de valeur absolue

Étant donné un tenseur x , cette opération renvoie un tenseur contenant la valeur absolue de chaque élément de x . Par exemple, si x est un élément d'entrée et y est un élément de sortie, cette opération calcule \(y = |x|\).

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs flottantes de 32 bits ou de type QI8 ou de type QI16

Résultats:

Résultat Description
y tenseur d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs flottantes de 32 bits ou de type QI8 ou de type QI16

tfl.add (TFL::AddOp)

Opérateur d'addition

Opération d’addition par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.add_n (TFL::AddNOp)

_Ajouter n opérateur

Ajoute tous les tenseurs d'entrée par élément.

Traits : AlwaysSpeculatableImplTrait , Commutative

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
inputs variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
sum tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.arg_max (TFL::ArgMaxOp)

Opérateur ArgMax

Renvoie l'index avec la plus grande valeur sur toutes les dimensions d'un tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
output_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe 32/64 bits

tfl.arg_min (TFL::ArgMinOp)

Opérateur ArgMin

Renvoie l'index avec la plus petite valeur sur les dimensions d'un tenseur. a = [1, 10, 26,9, 2,8, 166,32, 62,3] b = tf.math.argmin(input = a) c = tf.keras.backend.eval(b)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
output_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe 32/64 bits

tfl.assign_variable (TFL::AssignVariableOp)

Attribue une nouvelle valeur à une variable.

Tout ReadVariableOp avec une dépendance de contrôle sur cette opération est assuré de renvoyer cette valeur ou une valeur ultérieure plus récente de la variable.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
resource_id tenseur des valeurs des ressources
value tenseur de 32 bits flottants ou 64 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier sans signe 32 bits ou entier sans signe 64 bits ou type QI16 ou type complexe avec des éléments flottants de 32 bits ou type complexe avec des valeurs d'éléments flottants de 64 bits

tfl.atan2 (TFL::Atan2Op)

Opération Atan2

L'opération "atan2" calcule l'arctangente de y/x élément par élément, en respectant les signes des arguments.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
y tenseur de valeurs flottantes 32 bits ou 64 bits
x tenseur de valeurs flottantes 32 bits ou 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.average_pool_2d (TFL::AveragePool2DOp)

Opérateur _Average_pool 2D

Effectue une opération de pooling moyen en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
filter_height ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_width ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.basic_lstm (TFL::BasicLSTMOp)

L'opérateur lstm de base

Opérateur de cellule LSTM de base.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
kernel_type ::mlir::TFL::LSTMKernelTypeAttr lstm_kernel_type dont la valeur est mlir::TFL::LSTMKernelType::BASIC

Opérandes :

Opérande Description
data_input tenseur de valeurs de type float ou QUI8 32 bits
prev_activ_input tenseur de valeurs de type float ou QUI8 32 bits
weights_input tenseur de valeurs de type float ou QUI8 32 bits
biases_input tenseur de valeurs de type float ou QI32 32 bits
prev_state_input tenseur de valeurs de type float ou QI16 32 bits

Résultats:

Résultat Description
activ_output Tenseur 2D de tout type de valeurs
state_output Tenseur 2D de tout type de valeurs
concat_temp Tenseur 2D de tout type de valeurs
activ_temp Tenseur 2D de tout type de valeurs

tfl.batch_matmul (TFL::BatchMatMulOp)

Opérateur de multiplication matricielle par lots

Effectue une multiplication matricielle par lots sur les entrées. Suit les conventions de TensorFlow BatchMatMulV2, avec prise en charge des dimensions inconnues dans les dimensions du lot et la diffusion.

Inputs:
  `inputs[0]`: required: input LHS
  `inputs[1]`: required: input RHS
  `adjoint_lhs`: optional: Transpose LHS (default false)
  `adjoint_rhs`: optional: Transpose RHS (default false)

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
adj_x ::mlir::BoolAttr attribut booléen
adj_y ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
x tenseur de type float 32 bits ou QI8 ou type QI16 ou valeurs entières sans signe 8 bits
y tenseur de type float 32 bits ou QI8 ou type QI16 ou valeurs entières sans signe 8 bits

Résultats:

Résultat Description
output tenseur de type flottant 32 bits ou de type QI8 ou de type QI16 ou de valeurs entières sans signe de 32 bits

tfl.batch_to_space_nd (TFL :: BatchToSpaceNdOp)

Opérateur BatchToSpaceNd

Cette opération remodèle la dimension "batch" 0 en dimensions spatiales.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
block_shape tenseur de valeurs entières sans signe de 32 bits
indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.bidirectional_sequence_lstm (TFL :: BidirectionnelSequenceLSTMOp)

Opérateur lstm de séquence bidirectionnelle

Le LSTM bidirectionnel est essentiellement composé de deux LSTM, l'un allant vers l'avant et l'autre vers l'arrière. Et le résultat est la concaténation des deux lstms.

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
merge_outputs ::mlir::BoolAttr attribut booléen
time_major ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_input_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_recurrent_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
fw_forget_gate_bias tenseur de valeurs flottantes 32 bits
fw_cell_bias tenseur de valeurs flottantes 32 bits
fw_output_gate_bias tenseur de valeurs flottantes 32 bits
fw_projection_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_projection_bias tenseur de n'importe quel type de valeurs ou aucun type
bw_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_input_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_input_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_input_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_recurrent_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
bw_forget_gate_bias tenseur de valeurs flottantes 32 bits
bw_cell_bias tenseur de valeurs flottantes 32 bits
bw_output_gate_bias tenseur de valeurs flottantes 32 bits
bw_projection_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_projection_bias tenseur de n'importe quel type de valeurs ou aucun type
fw_input_activation_state tenseur avec état
fw_input_cell_state tenseur avec état
bw_input_activation_state tenseur avec état
bw_input_cell_state tenseur avec état
aux_input tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_cell_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_cell_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
fw_output tenseur de tout type de valeurs
bw_output tenseur de tout type de valeurs

tfl.bitcast (TFL :: BitcastOp)

Opérateur de diffusion de bits

Bitcaste un tenseur d'un type à un autre.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.bitwise_xor (TFL :: BitwiseXorOp)

Opérateur Xor au niveau du bit

Elementwise calcule le XOR au niveau du bit de lhs et rhs .

Traits : AlwaysSpeculatableImplTrait , Commutative , ResultsBroadcastableShape , SameOperandsAndResultElementType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits
rhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

Résultats:

Résultat Description
output tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

tfl.broadcast_args (TFL::BroadcastArgsOp)

Renvoie la forme de s0 op s1 avec diffusion.

Étant donnés s0 et s1 , tenseurs qui représentent des formes, calculez r0 , la forme diffusée. s0 , s1 et r0 sont tous des vecteurs entiers.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
s0 tenseur de valeurs entières sans signe 32/64 bits
s1 tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
r0 tenseur de valeurs entières sans signe 32/64 bits

tfl.broadcast_to (TFL::BroadcastToOp)

Diffusez un tableau pour une forme compatible.

La diffusion est le processus de création de tableaux ayant des formes compatibles pour les opérations arithmétiques. Deux formes sont compatibles si pour chaque paire de dimensions elles sont égales ou si l'une d'elles en est une. Lorsque vous essayez de diffuser un Tensor sur une forme, il commence par les dimensions de fin et progresse.

Par exemple,

x = tf.constant([1, 2, 3]) y = tf.broadcast_to(x, [3, 3]) print(y) tf.Tensor( [[1 2 3] [1 2 3] [1 2 3]], forme=(3, 3), dtype=int32)

Dans l'exemple ci-dessus, le Tensor d'entrée avec la forme de [1, 3] est diffusé vers le Tensor de sortie avec la forme de [3, 3] .

Lors d'opérations de diffusion telles que la multiplication d'un tenseur par un scalaire, la diffusion confère (généralement) un certain avantage temporel ou spatial, car le tenseur diffusé n'est jamais matérialisé.

Cependant, broadcast_to n’apporte pas de tels avantages. Le tenseur nouvellement créé prend toute la mémoire de la forme diffusée. (Dans un contexte graphique, broadcast_to peut cependant être fusionné avec une opération ultérieure, puis optimisé.)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers sans signe de 1 bits ou entiers sans signe de 4 bits ou entiers sans signe de 8 bits ou de type QI8 ou entiers non signés de 8 bits ou entiers non signés de 32 bits ou de type QUI8 ou 16 entier sans signe de 64 bits ou type QI16 ou entier sans signe de 64 bits ou type complexe avec Valeurs des éléments flottants 32 bits
shape tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers sans signe de 1 bits ou entiers sans signe de 4 bits ou entiers sans signe de 8 bits ou de type QI8 ou entiers non signés de 8 bits ou entiers non signés de 32 bits ou de type QUI8 ou 16 entier sans signe de 64 bits ou type QI16 ou entier sans signe de 64 bits ou type complexe avec Valeurs des éléments flottants 32 bits

tfl.bucketize (TFL::BucketizeOp)

Bucketise les « entrées » en fonction des « limites ».

Exemple:

Si les entrées sont boundaries = [0, 10, 100] et input = [[-5, 10000][150, 10][5, 100]] , alors la sortie sera output = [[0, 3][3, 2][1, 3]] .

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
boundaries ::mlir::ArrayAttr Attribut de tableau flottant 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou flottantes 64 bits ou d'entiers sans signe 32 bits ou de valeurs entières sans signe 64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 32 bits

tfl.call_once (TFL::CallOnceOp)

Appelle une fonction d'initialisation

Cette opération invoque la fonction d'initialisation donnée pour l'initialiseur de session dans le dialecte du modèle enregistré tf.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
session_init_function ::mlir::StringAttr attribut de chaîne

tfl.cast (TFL::CastOp)

Opérateur de casting

Convertit l’entrée du type d’entrée en type de sortie.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type float 16 bits ou bfloat16 ou float 32 bits ou float 64 bits ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 16 bits ou entier non signé 16 bits ou entier sans signe 32 bits ou Entier non signé de 32 bits ou entier sans signe de 64 bits ou type TFLite quint8 ou Entier non signé de 8 bits ou entier sans signe de 8 bits ou type complexe avec des valeurs d'éléments flottants de 32 bits

Résultats:

Résultat Description
output tenseur de type float 16 bits ou bfloat16 ou float 32 bits ou float 64 bits ou entier sans signe 1 bit ou entier sans signe 16 bits ou entier non signé 16 bits ou entier sans signe 32 bits ou entier sans signe 32 bits ou Entier sans signe 64 bits ou type TFLite quint8 ou entier non signé 8 bits ou entier sans signe de 8 bits ou type complexe avec des valeurs d'éléments flottants de 32 bits

tfl.ceil (TFL::CeilOp)

Opérateur de plafond

Renvoie la valeur plafond par élément de l’entrée.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.complex_abs (TFL :: ComplexAbsOp)

Calcule la valeur absolue complexe d'un tenseur.

Étant donné un tenseur x de nombres complexes, cette opération renvoie un tenseur de type float ou double qui est la valeur absolue de chaque élément de x . Tous les éléments de x doivent être des nombres complexes de la forme \(a + bj\). La valeur absolue est calculée comme \( \sqrt{a^2 + b^2}\).

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.concatenation (TFL::ConcaténationOp)

Opérateur de concaténation

Concatène les tenseurs le long d'une dimension

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
values variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output tenseur de flottant 32 bits ou entier sans signe 64 bits ou entier sans signe 32 bits ou entier sans signe 16 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier non signé 8 bits ou entier non signé 32 bits ou 1 -valeurs entières sans signe de bits

tfl.control_node (TFL::ControlNodeOp)

L'opération TFL.control_node encapsule les opérations sur un seul bloc afin d'attacher des bords de contrôle.

Ceci est utilisé pour envelopper des régions et leur attacher des dépendances de contrôle. Généralement, cela se produit dans l'une des dernières étapes avant l'émission du modèle flatbuffer afin de permettre des optimisations qui reposent sur un ordre fixe d'opérations (telles que la rematérialisation.) L'exportateur flatbuffer déballera la région encapsulée et annotera le modèle généré avec des métadonnées. de telle sorte que toute réorganisation d'exécution respectera l'ordre donné par les dépendances de contrôle.

Traits : HasParent<mlir::func::FuncOp> , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Opérandes :

Opérande Description
controlInputs variadique de contrôle

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type
control contrôle

tfl.conv_2d (TFL :: Conv2DOp)

Opérateur de convolution

Effectue une opération de convolution sur les entrées.

Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.conv_3d (TFL :: Conv3DOp)

Opérateur 3D de convolution

Effectue une opération de convolution sur les entrées 3D. Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , quant::AccumulatorUniformScale<2, 0, 1>

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_d_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_d ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
filter tenseur de valeurs flottantes 32 bits
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.conv_3d_transpose (TFL :: Conv3DTransposeOp)

Opérateur 3D de convolution transposée

Effectue une opération de convolution transposée sur les entrées 3D. Entrées : inputs[0] : obligatoire : la forme du tenseur de sortie inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : obligatoire : le tenseur d'activation d'entrée inputs[3] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , quant::AccumulatorUniformScale<2, 0, 1>

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_d_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_d ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
output_shape tenseur de valeurs entières sans signe de 32 bits
filter tenseur de valeurs flottantes 32 bits
input tenseur de valeurs flottantes 32 bits
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.cos (TFL::CosOp)

Opérateur cosinus

Calcule le cosinus de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.cumsum (TFL::CumsumOp)

Opérateur cumulatif

Calculez la somme cumulée du tenseur x le long de l'axe.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
exclusive ::mlir::BoolAttr attribut booléen
reverse ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.custom (TFL::CustomOp)

Opération personnalisée

Une opération générique pour toute opération personnalisée TFLite.

input : Une liste d’entrées dans l’opération originale. custom_code : une chaîne utilisée pour identifier exactement cette opération, qui correspond à Operator_codes.custom_code dans le flatbuffer. custom_option : un support pour enregistrer les attributs op en mode octets. sortie : une liste de sorties dans l'opération d'origine.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
custom_code ::mlir::StringAttr attribut de chaîne
custom_option ::mlir::TFL::ConstBytesAttr Une représentation d'attribut de chaîne des octets compilés

Opérandes :

Opérande Description
input variadique de tenseur de tout type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.custom_tf (TFL::CustomTfOp)

Wrapper Op pour les opérations personnalisées TF.

Une opération wrapper autour de n’importe quelle opération Custom TF. Celles-ci incluent les opérations définies à l'aide de custom_opdefs ou liées qui ne sont pas définies dans le dialecte TF. Cette opération enveloppe simplement l'opération personnalisée dans une région. Remarque n°1, cette opération n'inclura pas les opérations personnalisées TF Lite définies à l'aide de CustomOp. Remarque n°2, cette opération n'est qu'une représentation interne à l'intérieur du convertisseur et n'est pas exposée/exportée lorsque le modèle est exporté vers Flatbuffer.

Traits : IsolatedFromAbove , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : InferTypeOpInterface , TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
input variadique de tenseur de tout type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.densify (TFL::DensifyOp)

Opérateur densification

Convertit le tenseur clairsemé en format dense.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

tfl.depth_to_space (TFL :: ProfondeurToSpaceOp)

Opérateur DepthToSpace

Réorganise les données de la profondeur en blocs de données spatiales. Il s'agit de la transformation inverse de SpaceToDepth. Plus précisément, cette opération génère une copie du tenseur d'entrée où les valeurs de la dimension depth sont déplacées dans des blocs spatiaux vers les dimensions height et width . L'attr block_size indique la taille du bloc d'entrée et la manière dont les données sont déplacées.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
block_size ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type TFLite quint8 ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type TFLite quint8 ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8

tfl.depthwise_conv_2d (TFL :: DepthwiseConv2DOp)

Opérateur de convolution séparable en profondeur

Effectue une opération de convolution sur les entrées.

Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<3, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
depth_multiplier ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.dequantize (TFL::DequantizeOp)

Opérateur de déquantification

Convertit un tableau quantifié d'entiers en virgules flottantes en fonction des paramètres de quantification.

Interfaces : NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type QI4 ou type QI8 ou type QUI8 ou type QI16 ou valeurs flottantes 16 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.dilate (TFL::DilateOp)

Opérateur de dilatation

Étend un tenseur en ajoutant de nouveaux éléments entre ceux existants.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou d'un entier non signé de 8 bits ou d'un entier non signé de 16 bits ou d'un entier non signé de 32 bits ou d'un entier non signé de 64 bits ou Valeurs flottantes 32 bits ou 64 bits
dilations tenseur de valeurs entières sans signe de 32 bits
padding_value Tenseur 0D de tout type de valeurs

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou d'un entier non signé de 8 bits ou d'un entier non signé de 16 bits ou d'un entier non signé de 32 bits ou d'un entier non signé de 64 bits ou Valeurs flottantes 32 bits ou 64 bits

tfl.div (TFL::DivOp)

Opérateur de division

Opération de division par éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8
rhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8

tfl.dynamic_update_slice (TFL :: DynamicUpdateSliceOp)

DynamicUpdateSlice.

Opération DynamicUpdateSlice qui a la même sémantique avec XLA DynamicUpdateSlice. Génère un résultat qui est la valeur de l'opérande du tableau d'entrée, avec une mise à jour de tranche écrasée à start_indices.

Voir https://www.tensorflow.org/xla/operation_semantics#dynamicupdateslice

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
operand tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits
update tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits
start_indices tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits

tfl.elu (TFL::EluOp)

Opérateur d'unité linéaire exponentielle

Calcule le linéaire exponentiel f(x) -> exp(x) - 1 pour x < 0, x pour x >= 0. par élément.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

tfl.embedding_lookup (TFL::EmbeddingLookupOp)

Opérateur de recherche d'intégration

Recherche les identifiants dans une liste de tenseurs d'intégration.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lookup tenseur de valeurs entières sans signe de 32 bits
value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI4

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits ou de valeurs entières non signées de 8 bits

tfl.equal (TFL :: EqualOp)

Opérateur égal

Renvoie l'élément de vérité de x == y élément par élément

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'un entier non signé de 8 bits ou de valeurs de type chaîne TFLite
y tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'un entier non signé de 8 bits ou de valeurs de type chaîne TFLite

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.exp (TFL::ExpOp)

Opérateur d'exponentiation naturelle

Effectue une opération d’exponentiation naturelle par élément en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

tfl.expand_dims (TFL :: ExpandDimsOp)

Insère une dimension de 1 dans la forme d'un tenseur.

Étant donné un tenseur input , cette opération insère une dimension de 1 sur l' axis d'index de dimension de la forme de input . L' axis d'index de dimension commence à zéro ; si vous spécifiez un nombre négatif pour axis il est compté à rebours à partir de la fin.

Cette opération est utile si vous souhaitez ajouter une dimension de lot à un seul élément. Par exemple, si vous avez une seule image de forme [height, width, channels] , vous pouvez en faire un lot de 1 image avec expand_dims(image, 0) , ce qui créera la forme [1, height, width, channels] .

Autres exemples :

# '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]

Cette opération nécessite que :

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

Cette opération est liée à squeeze() , qui supprime les dimensions de taille 1.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.external_const (TFL::ExternalConstOp)

Op. const externe.

L'opération const externe contient un buffer_index qui pointe vers une constante dans le flatbuffer.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
buffer_index ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.fake_quant (TFL::FakeQuantOp)

Opérateur FakeQuant

Fausse quantifier le tenseur des « entrées » de type float via les scalaires float min et max en tenseur « sorties » de même forme que les entrées.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
min ::mlir::FloatAttr Attribut float 32 bits
max ::mlir::FloatAttr Attribut float 32 bits
num_bits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur minimale est 2 dont la valeur maximale est 16
narrow_range ::mlir::BoolAttr attribut booléen dont la valeur est fausse

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.fill (TFL::FillOp)

Remplissez le tenseur avec la valeur donnée.

Remplissez le tenseur avec la valeur donnée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
dims tenseur de valeurs entières sans signe 32/64 bits
input tenseur de valeurs flottantes de 32 bits ou flottantes de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou de type QI8 ou de type QI16 ou de valeurs de type chaîne TFLite

Résultats:

Résultat Description
result tenseur de valeurs flottantes de 32 bits ou flottantes de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou de type QI8 ou de type QI16 ou de valeurs de type chaîne TFLite

tfl.floor (TFL::FloorOp)

Opérateur d'étage

Renvoie la valeur plancher par élément de l’entrée.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.floor_div (TFL::FloorDivOp)

Opérateur de division d'étage

Opération de division au sol par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

tfl.floor_mod (TFL::FloorModOp)

Rappel de division

Opération de rappel de division par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits
rhs tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits

tfl.fully_connected (TFL::FullyConnectedOp)

Opération entièrement connectée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
weights_format ::mlir::StringAttr attribut de chaîne dont la valeur est DEFAULT ou SHUFFLED4x16INT8
keep_num_dims ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou de type QUI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8 ou de type QI16
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.gather (TFL::GatherOp)

Opérateur de collecte

Rassemblez les tranches de axis des params en fonction indices .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
batch_dims ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
params tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type chaîne TFLite ou 8 bits entier non signé ou valeurs de type QI8 ou de type QUI8 ou de type QI16
indices tenseur de valeurs entières sans signe de 16 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type chaîne TFLite ou 8 bits entier non signé ou valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.gather_nd (TFL::GatherNdOp)

_Gather et opérateur

Rassemblez les tranches des params dans un Tensor avec une forme spécifiée par indices .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
params tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type chaîne TFLite
indices tenseur de valeurs entières sans signe de 16 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type chaîne TFLite

tfl.gelu (TFL::GeluOp)

Fonction d'activation GELU.

Calcule la fonction d'activation GELU par élément.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
approximate ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8

tfl.greater (TFL::GreaterOp)

Un plus grand opérateur

Fonctionnement plus efficace au niveau des éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.greater_equal (TFL::GreaterEqualOp)

_Plus grand opérateur égal

Opération Greater_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QUI8 ou de type QI8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QUI8 ou de type QI8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.hard_swish (TFL::HardSwishOp)

Fonction d'activation Hardswish.

Calcule la fonction d'activation hard-swish f(x) -> (x * relu6(x+3))/6 par élément.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.hashtable (TFL::HashtableOp)

Crée une table de hachage non initialisée.

Cette opération crée une table de hachage, spécifiant le type de ses clés et valeurs. Avant d'utiliser la table, vous devrez l'initialiser. Après initialisation, la table sera immuable.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
table_id ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
key_dtype ::mlir::TypeAttr n'importe quel attribut de type
value_dtype ::mlir::TypeAttr n'importe quel attribut de type

Résultats:

Résultat Description
out tenseur des valeurs des ressources

tfl.hashtable_find (TFL :: HashtableFindOp)

Recherche les clés dans un tableau, affiche les valeurs correspondantes.

Les keys tensorielles doivent être du même type que les clés de la table. Les values de sortie sont du type des valeurs du tableau.

La valeur scalaire default_value est la valeur de sortie pour les clés non présentes dans la table. Il doit également être du même type que les valeurs du tableau.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources
keys tenseur d'entier sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits
default_value tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
out tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

tfl.hashtable_import (TFL :: HashtableImportOp)

Remplace le contenu de la table par les clés et valeurs spécifiées.

Les keys tensorielles doivent être du même type que les clés de la table. Les values du tenseur doivent être du type des valeurs du tableau.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources
keys tenseur d'entier sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits
values tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

tfl.hashtable_size (TFL::HashtableSizeOp)

Calcule le nombre d'éléments dans la table donnée.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources

Résultats:

Résultat Description
out tenseur de valeurs entières sans signe de 64 bits

tfl.if (TFL::IfOp)

Opération si-alors-sinon

L'opération tfl.if représente une construction if-then-else pour l'exécution conditionnelle de deux régions de code. L'opérande d'une opération if est une valeur booléenne. Par exemple:

tfl.if %b  {
  ...
} else {
  ...
}

tfl.if peut également renvoyer des résultats définis dans ses régions. Les valeurs définies sont déterminées par le chemin d'exécution emprunté.

Exemple:

%x, %y = tfl.if %b -> (tensor<f32>, tensor<f32>) {
  %x_true = ...
  %y_true = ...
  tfl.yield %x_true, %y_true : tensor<f32>, tensor<f32>
} else {
  %x_false = ...
  %y_false = ...
  tfl.yield %x_false, %y_false : tensor<f32>, tensor<f32>
}

Les régions tfl.if se terminent toujours par "tfl.yield". Si "tfl.if" ne définit aucune valeur, "tfl.yield" peut être laissé de côté et sera inséré implicitement. Sinon, il faut que ce soit explicite. De plus, si « tfl.if » définit une ou plusieurs valeurs, le bloc « else » ne peut pas être omis.

Exemple:

tfl.if %b  {
  ...
}

Traits : NoRegionArguments , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : RegionBranchOpInterface , TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
cond tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
results variadique de valeurs de tenseur de tout type

tfl.imag (TFL::ImagOp)

Renvoie la partie imaginaire d'un nombre complexe.

Étant donné une input tensorielle de nombres complexes, cette opération renvoie un tenseur de type float qui est la partie imaginaire de chaque élément de input . Tous les éléments en input doivent être des nombres complexes de la forme \(a + bj\), où a est la partie réelle et b est la partie imaginaire renvoyée par cette opération.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.l2_normalization (TFL :: L2NormalizationOp)

Opérateur de normalisation L2

Opération de normalisation L2

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de type flottant 32 bits ou de type QUI8 ou de type QI8 ou de type QUI16 ou de type QI16 ou de valeurs entières sans signe de 8 bits

Résultats:

Résultat Description
output tenseur de type flottant 32 bits ou de type QUI8 ou de type QI8 ou de type QUI16 ou de type QI16 ou de valeurs entières sans signe de 8 bits

tfl.leaky_relu (TFL::LeakyReluOp)

Opérateur Leaky Relu

Opérateur Leaky ReLU par élément x -> x >= 0 ? x : (alpha * x)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
alpha ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs de type QI16

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.less (TFL::LessOp)

Moins d'opérateur

Moins de fonctionnement au niveau des éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.less_equal (TFL :: LessEqualOp)

_Moins d'opérateur égal

Opération less_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.local_response_normalization (TFL :: LocalResponseNormalizationOp)

Normalisation de la réponse locale.

Le tenseur input 4D est traité comme un tableau 3D de vecteurs 1D (le long de la dernière dimension) et chaque vecteur est normalisé indépendamment. Dans un vecteur donné, chaque composant est divisé par la somme carrée pondérée des entrées dans depth_radius . En détails,

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

Pour plus de détails, voir Krizhevsky et al., Classification ImageNet avec réseaux de neurones convolutifs profonds (NIPS 2012) .

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
radius ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
bias ::mlir::FloatAttr Attribut float 32 bits
alpha ::mlir::FloatAttr Attribut float 32 bits
beta ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.log (TFL :: LogOp)

Opérateur de logarithme naturel

Effectue une opération de logarithme naturel par élément en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 32 bits

tfl.log_softmax (TFL :: LogSoftmaxOp)

Journaliser l'opérateur softmax

Calcule les activations softmax du journal par élément avec la formule suivante

entrée - log(reduce_sum(exp(input), dim))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou TFLite quint8

tfl.logical_and (TFL :: LogicalAndOp)

Opérateur ET logique

Opération logique ET par élément.

Traits : AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit
rhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logical_not (TFL :: LogicalNotOp)

Opérateur NON logique

Opération NON logique par élément.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logical_or (TFL :: LogicalOrOp)

Opérateur OU logique

Opération OU logique par élément.

Traits : AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit
rhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logistic (TFL::LogisticOp)

Opérateur logistique

Calcule le sigmoïde d'entrée par élément

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
y tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.lstm (TFL::LSTMOp)

L'opérateur lstm complet

Couche réseau récurrente d'unité de mémoire à long terme (LSTM). L'implémentation par défaut sans judas est basée sur : http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf S. Hochreiter et J. Schmidhuber. « Mémoire à long terme et à court terme ». Neural Computation, 9(8):1735-1780, 1997. L'implémentation du judas est basée sur : https://research.google.com/pubs/archive/43905.pdf Hasim Sak, Andrew Senior et Françoise Beaufays. «Architectures de réseaux neuronaux récurrents à mémoire longue et à court terme pour la modélisation acoustique à grande échelle.» INTERSPEECH, 2014. Le couplage des portes d'entrée et d'oubli (CIFG) est basé sur : http://arxiv.org/pdf/1503.04069.pdf Greff et al. « LSTM : A Search Space Odyssey » La normalisation des couches est basée sur : https://arxiv.org/pdf/1607.06450.pdf Ba et al. 'Normalisation des couches'

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
kernel_type ::mlir::TFL::LSTMKernelTypeAttr lstm_kernel_type dont la valeur est mlir::TFL::LSTMKernelType::FULL
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen
input_to_input_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_forget_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_cell_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_output_intermediate ::mlir::TypeAttr n'importe quel attribut de type
effective_hidden_scale_intermediate ::mlir::TypeAttr n'importe quel attribut de type

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits
input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
input_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
recurrent_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
forget_gate_bias tenseur de valeurs de type float ou QI32 32 bits
cell_bias tenseur de valeurs de type float ou QI32 32 bits
output_gate_bias tenseur de valeurs de type float ou QI32 32 bits
projection_weights tenseur de n'importe quel type de valeurs ou aucun type
projection_bias tenseur de n'importe quel type de valeurs ou aucun type
input_activation_state tenseur avec état
input_cell_state tenseur avec état
input_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
forget_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
cell_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
output_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.matrix_diag (TFL::MatrixDiagOp)

Renvoie un tenseur avec la diagonale fournie et tout le reste complété par des zéros.

Étant donné une diagonale, renvoie un tenseur avec la diagonale et tout le reste complété par des zéros. Supposons que la diagonale a k dimensions [I, J, K, ..., N] , alors la sortie est un tenseur de rang k+1 avec des dimensions [I, J, K, ..., N, N] où : output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n].

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
diagonal tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

tfl.matrix_set_diag (TFL::MatrixSetDiagOp)

Renvoie un tenseur matriciel par lots avec de nouvelles valeurs diagonales par lots.

Étant donné input et diagonal , cette opération renvoie un tenseur avec la même forme et les mêmes valeurs que input , à l'exception de la diagonale principale des matrices les plus internes. Celles-ci seront écrasées par les valeurs en diagonal .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8
diagonal tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
result tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8

tfl.max_pool_2d (TFL::MaxPool2DOp)

Opération Max Pool 2D

Effectue un pool maximum 2D en entrée.

Entrées : inputs[0] : obligatoire : le tenseur d'entrée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_width ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_height ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.maximum (TFL::MaximumOp)

Opérateur maximum

Opération maximale par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

Résultats:

Résultat Description
max tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

tfl.mean (TFL::MeanOp)

Opérateur moyen

Calcule la moyenne des éléments sur les dimensions d'un tenseur. Réduit input_tensor le long des dimensions données dans l'axe. Sauf si keepdims est vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans l'axe. Si keepdims est vrai, les dimensions réduites sont conservées avec une longueur de 1.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'entier non signé de 8 bits ou de valeurs de type QI16
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'entier non signé de 8 bits ou de valeurs de type QI16

tfl.minimum (TFL::MinimumOp)

Opérateur minimum

Opération minimale par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

Résultats:

Résultat Description
min tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

tfl.mirror_pad (TFL::MirrorPadOp)

Opérateur MirrorPad. Remplit un tenseur avec des valeurs en miroir.

Cette opération remplit une entrée avec des valeurs en miroir en fonction des remplissages que vous spécifiez. paddings est un tenseur entier de forme [n, 2], où n est le rang de l'entrée. Pour chaque dimension D de l'entrée, paddings[D, 0] indique le nombre de valeurs à ajouter avant le contenu de l'entrée dans cette dimension, et paddings[D, 1] indique le nombre de valeurs à ajouter après le contenu de l'entrée dans cette dimension.

paddings[D, 0] et paddings[D, 1] ne doivent pas être supérieurs à input.dim_size(D) (ou input.dim_size(D) - 1) si copy_border est vrai (si faux, respectivement).

La taille complétée de chaque dimension D de la sortie est :

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

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
mode ::mlir::TFL::MirrorPaddingTypeAttr miroir_pad_enum

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
pad tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.mul (TFL::MulOp)

Opérateur de multiplication

Opération de multiplication par éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits
rhs tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits

tfl.multinomial (TFL::MultinomialOp)

Tire des échantillons à partir d’une distribution catégorielle.

Les valeurs générées auront une distribution catégorielle basée sur les logits ou les probabilités logarithmiques non normalisées fournies pour toutes les classes.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
logits tenseur de valeurs flottantes 32 bits
num_samples tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.neg (TFL::NegOp)

Opérateur de négation

Calcule la négation de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.no_value (TFL :: NoValueOp)

Constante ne représentant aucune valeur.

Aucune valeur constante op.

Traits : AlwaysSpeculatableImplTrait , ConstantLike

Interfaces : ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::UnitAttr attribut d'unité

Résultats:

Résultat Description
none_val aucun type

tfl.non_max_suppression_v4 (TFL :: NonMaxSuppressionV4Op)

Sélectionne goulûment un sous-ensemble de boîtes englobantes par ordre décroissant de score,

élaguer les cases qui ont un chevauchement élevé d'intersection sur union (IOU) avec les cases précédemment sélectionnées. Les cadres de délimitation dont le score est inférieur à score_threshold sont supprimés. Les boîtes englobantes sont fournies sous la forme [y1, x1, y2, x2], où (y1, x1) et (y2, x2) sont les coordonnées de toute paire diagonale de coins de boîte et les coordonnées peuvent être fournies sous forme normalisée (c'est-à-dire situées dans l'intervalle [0, 1]) ou absolu. Notez que cet algorithme est indépendant de l'endroit où se trouve l'origine dans le système de coordonnées et plus généralement est invariant aux transformations orthogonales et aux traductions du système de coordonnées ; ainsi, la traduction ou les réflexions du système de coordonnées entraînent la sélection des mêmes cases par l'algorithme. Le résultat de cette opération est un ensemble d’entiers indexés dans la collection d’entrée de cadres englobants représentant les cadres sélectionnés. Les coordonnées de la boîte englobante correspondant aux indices sélectionnés peuvent ensuite être obtenues à l'aide de l' tf.gather operation . Par exemple : selected_indices = tf.image.non_max_suppression_v2 (boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather (boxes, selected_indices)

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
boxes tenseur de valeurs flottantes 32 bits
scores tenseur de valeurs flottantes 32 bits
max_output_size tenseur de valeurs entières sans signe de 32 bits
iou_threshold tenseur de valeurs flottantes 32 bits
score_threshold tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
selected_indices tenseur de valeurs entières sans signe de 32 bits
valid_outputs tenseur de valeurs entières sans signe de 32 bits

tfl.non_max_suppression_v5 (TFL :: NonMaxSuppressionV5Op)

Sélectionne goulûment un sous-ensemble de boîtes englobantes par ordre décroissant de score,

élaguer les cases qui ont un chevauchement élevé d'intersection sur union (IOU) avec les cases précédemment sélectionnées. Les cadres de délimitation dont le score est inférieur à score_threshold sont supprimés. Les boîtes englobantes sont fournies sous la forme [y1, x1, y2, x2], où (y1, x1) et (y2, x2) sont les coordonnées de toute paire diagonale de coins de boîte et les coordonnées peuvent être fournies sous forme normalisée (c'est-à-dire situées dans l'intervalle [0, 1]) ou absolu. Notez que cet algorithme est indépendant de l'endroit où se trouve l'origine dans le système de coordonnées et plus généralement est invariant aux transformations orthogonales et aux traductions du système de coordonnées ; ainsi, la traduction ou les réflexions du système de coordonnées entraînent la sélection des mêmes cases par l'algorithme. Le résultat de cette opération est un ensemble d’entiers indexés dans la collection d’entrée de cadres englobants représentant les cadres sélectionnés. Les coordonnées de la boîte englobante correspondant aux indices sélectionnés peuvent ensuite être obtenues à l'aide de l' tf.gather operation . Par exemple : selected_indices = tf.image.non_max_suppression_v2( boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) Cette opération supporte également un mode Soft-NMS (avec pondération gaussienne) (cf Bodla et al , https://arxiv.org/abs/1704.04503 ) où les boîtes réduisent le score des autres boîtes qui se chevauchent au lieu de provoquer directement leur élagage. Pour activer ce mode Soft-NMS, définissez le paramètre soft_nms_sigma sur une valeur supérieure à 0.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
boxes tenseur de valeurs flottantes 32 bits
scores tenseur de valeurs flottantes 32 bits
max_output_size tenseur de valeurs entières sans signe de 32 bits
iou_threshold tenseur de valeurs flottantes 32 bits
score_threshold tenseur de valeurs flottantes 32 bits
soft_nms_sigma tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
selected_indices tenseur de valeurs entières sans signe de 32 bits
selected_scores tenseur de valeurs flottantes 32 bits
valid_outputs tenseur de valeurs entières sans signe de 32 bits

tfl.not_equal (TFL::NotEqualOp)

_Opérateur différent

Opération not_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8 ou de type chaîne TFLite
rhs tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8 ou de type chaîne TFLite

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.NumericVerify (TFL::NumericVerifyOp)

Vérifie les numériques des deux opérandes

L'opération NumericVerify est une opération de débogage pour vérifier les chiffres des deux activations. Il s'agit d'une opération personnalisée dans TFLite. Si log_if_failed est vrai, l'opération NumericVerify calcule des statistiques sur les différences entre les activations flottantes et quantifiées, génère des journaux, définit les différences dans les tenseurs de sortie et renvoie une erreur si des erreurs supérieures à la tolérance existent. Si log_if_failed = false, alors il ne se soucie pas des erreurs.

Traits : QuantizableResult , SameOperandsShape

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
tolerance ::mlir::FloatAttr Attribut float 32 bits
log_if_failed ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de type QI8 ou de type QUI8 ou de type QI16 ou valeurs de type float 16 bits ou TFLite quint8
ref tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.one_hot (TFL::OneHotOp)

Opérateur OneHot

Renvoie un tenseur unique. Les emplacements représentés par des indices dans indices prennent la valeur on_value , tandis que tous les autres emplacements prennent la valeur off_value .

Si les indices d'entrée sont de rang N , la sortie aura le rang N+1 , Le nouvel axe est créé au niveau de axis de dimension (par défaut : le nouvel axe est ajouté à la fin).

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
indices tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits
depth tenseur de valeurs entières sans signe de 32 bits
on_value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits
off_value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits

tfl.pack (TFL::PackOp)

Regroupe une liste de tenseurs le long d'une dimension en un seul tenseur

Regroupe une liste de tenseurs de rang R values_count dans un tenseur de rang (R+1) .

Emballe les tenseurs values_count dans values ​​dans un tenseur de rang supérieur de un à chaque tenseur In values ​​, en les regroupant le long de la dimension axis .

Étant donné une liste de tenseurs de forme (A, B, C) ;

si axis == 0 alors le tenseur output aura la forme (N, A, B, C) . si axis == 1 alors le tenseur output aura la forme (A, N, B, C) . Etc.

Par exemple:

# '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]]

C'est le contraire de unpack .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
values_count ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
values variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output tenseur de nombre flottant de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou de type QI8 ou de type QUI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.pad (TFL::PadOp)

Opérateur de remplissage

Cette opération complète une input avec des zéros en fonction des paddings que vous spécifiez. paddings est un tenseur entier de forme [Dn, 2] , où n est le rang de input . Pour chaque dimension D de input , paddings[D, 0] indique le nombre de zéros à ajouter avant le contenu de input dans cette dimension, et paddings[D, 1] indique le nombre de zéros à ajouter après le contenu de input dans cette dimension.

La taille complétée de chaque dimension D de la sortie est :

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

Par exemple:

# '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]]

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
padding tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.padv2 (TFL :: PadV2Op)

Opérateur de remplissage v2

Cette opération remplit une input en fonction des paddings et constant_values ​​que vous spécifiez. paddings est un tenseur entier de forme [Dn, 2] , où n est le rang de input . Pour chaque dimension D de input , paddings[D, 0] indique le nombre de zéros à ajouter avant le contenu de input dans cette dimension, et paddings[D, 1] indique le nombre de zéros à ajouter après le contenu de input dans cette dimension. constant_values ​​est un tenseur scalaire du même type que input qui indique la valeur à utiliser pour le remplissage input .

La taille complétée de chaque dimension D de la sortie est :

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

Par exemple:

# '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]]

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8
padding tenseur de valeurs entières sans signe 32/64 bits
constant_values tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8

tfl.poly_call (TFL :: PolyCallOp)

Appel poly

Avoir plusieurs corps de fonctions pour le même calcul. Cela permet à un compilateur/interprète de programme de choisir l'une des options disponibles pour exécuter le programme en fonction de celle qui convient le mieux au backend cible.

input : Une liste de tenseurs d’entrée dont les types sont T. output : Une liste de tenseurs de sortie dont les types sont T.

appel : plusieurs régions, dont chacune encapsule le même calcul sémantique mais sous des formes différentes.

Caractéristiques : SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : RegionBranchOpInterface

Opérandes :

Opérande Description
input variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.pow (TFL::PowOp)

Opérateur électrique

Fonctionnement électrique par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
rhs tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.prelu (TFL::PReluOp)

Opérateur Relu paramétré

Opérateur Relu paramétré x -> x >= 0 ? x : (alpha * x) où alpha est un tenseur entraînable. L'entrée et l'alpha doivent avoir la même taille que l'entrée ou être diffusables.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape , quant::AffineOpCoefficient<-1, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8
alpha tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8

tfl.pseudo_const (TFL::ConstOp)

Pseudo-op constant.

Représente une valeur constante dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon.

L'opération est autorisée à avoir le même type d'attributs que tf.Const (par exemple, les attributs TF opaques sont autorisés).

Traits : AlwaysSpeculatableImplTrait , ConstantLike , FirstAttrDerivedResultType , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.pseudo_qconst (TFL::QConstOp)

Pseudo-opération constante quantifiée

Représente une valeur constante quantifiée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon. Les paramètres de quantification sont stockés comme attribut de type dans cette constante.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface)

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur
value ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de type QUI8 ou type QI8 ou type QI16 ou type QUI16 ou valeurs de type TFLite quint8

tfl.pseudo_sparse_const (TFL :: SparseConstOp)

Pseudo-op constant et clairsemé.

Représente une valeur constante clairsemée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::ElementsAttr attribut vecteur/tenseur constant
s_param ::mlir::TFL::SparsityParameterAttr Paramètre de parcimonie.
compressed_data ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.pseudo_sparse_qconst (TFL :: SparseQConstOp)

Pseudo-opération constante quantifiée clairsemée

Représente une valeur constante quantifiée clairsemée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon. Les paramètres de quantification sont stockés comme attribut de type dans cette constante.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur
value ::mlir::ElementsAttr attribut vecteur/tenseur constant
s_param ::mlir::TFL::SparsityParameterAttr Paramètre de parcimonie.
compressed_data ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de type QUI8 ou type QI8 ou type QI16 ou type QUI16 ou valeurs de type TFLite quint8

tfl.quantize (TFL::QuantizeOp)

Opérateur de quantification

Convertit les tenseurs à virgule flottante en tenseurs entiers quantifiés selon les paramètres de quantification définis dans l'attribut type.

Traits : FirstAttrDerivedResultType , SameOperandsAndResultShape

Interfaces : NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur

Opérandes :

Opérande Description
input tenseur de 32 bits float ou type QI4 ou type QI8 ou type QUI8 ou type QI16 ou valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de type QI4 ou type QI8 ou type QUI8 ou type QI16 ou valeurs de type TFLite quint8

tfl.random_standard_normal (TFL::RandomStandardNormalOp)

Produit des valeurs aléatoires à partir d’une distribution normale.

Les valeurs générées auront une moyenne de 0 et un écart type de 1.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs flottantes 32 bits

tfl.random_uniform (TFL::RandomUniformOp)

Génère des valeurs aléatoires à partir d’une distribution uniforme.

Les valeurs générées suivent une distribution uniforme dans la plage [0, 1) . La limite inférieure 0 est incluse dans la plage, tandis que la limite supérieure 1 est exclue.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs flottantes 32 bits

tfl.range (TFL::RangeOp)

Opérateur de gamme

Renvoie un tenseur 1D défini par une séquence du start à limit avec un delta donné.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
start tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 32 bits ou flottantes de 64 bits
limit tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 32 bits ou flottantes de 64 bits
delta tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 32 bits ou flottantes de 64 bits

Résultats:

Résultat Description
result tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 32 bits ou flottantes de 64 bits

tfl.rank (TFL::RankOp)

Opérateur de classement.

Renvoie le rang d'un tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type entier

tfl.read_variable (TFL :: ReadVariableOp)

Lit la valeur de la variable.

Lire les données variables identifiées par 'resource_id'.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
resource_id tenseur des valeurs des ressources

Résultats:

Résultat Description
result tenseur de 32 bits flottants ou 64 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier sans signe 32 bits ou entier sans signe 64 bits ou type QI16 ou type complexe avec des éléments flottants de 32 bits ou type complexe avec des valeurs d'éléments flottants de 64 bits

tfl.real (TFL::RealOp)

Renvoie la partie réelle d'un nombre complexe.

Étant donné une input tensorielle de nombres complexes, cette opération renvoie un tenseur de type float qui est la partie réelle de chaque élément dans input . Tous les éléments en input doivent être des nombres complexes de la forme \(a + bj\), où a est la partie réelle renvoyée par cette opération et b est la partie imaginaire.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.reduce_all (TFL::ReduceAllOp)

Calcule le « et logique » des éléments sur les dimensions d'un tenseur.

Réduit input le long des dimensions indiquées dans axis . Sauf si keep_dims est vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans axis . Si keep_dims est vrai, les dimensions réduites sont conservées avec une longueur de 1.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs entières sans signe de 1 bit
reduction_indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.reduce_any (TFL::ReduceAnyOp)

Calcule le « ou logique » des éléments sur les dimensions d'un tenseur.

Réduit input le long des dimensions indiquées dans axis . Sauf si keep_dims est vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans axis . Si keep_dims est vrai, les dimensions réduites sont conservées avec une longueur de 1.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs entières sans signe de 1 bit
reduction_indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.reduce_max (TFL::ReduceMaxOp)

Opérateur de réduction maximale

Calcule la réduction maximale le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.reduce_min (TFL::ReduceMinOp)

Opérateur de réduction min

Calcule la réduction minimale le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.reduce_prod (TFL::ReduceProdOp)

Opérateur de réduction de production

Calcule le produit le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.relu (TFL::ReluOp)

Opérateur Relu

Opérateur Relu par élément x -> max(0, x)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou de type QI16

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou de type QI16

tfl.relu6 (TFL::Relu6Op)

Opérateur Relu6

Opérateur Relu6 par élément x -> max(0, min(6, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.relu_0_to_1 (TFL :: Relu0To1Op)

Opérateur Relu0To1

Opérateur Relu0To1 par élément x -> max(0, min(1, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.relu_n1_to_1 (TFL :: Relu1Op)

Opérateur Relu1

Opérateur Relu1 par élément x -> max(-1, min(1, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.reshape (TFL::ReshapeOp)

Opérateur de remodelage

Produit un tenseur avec les mêmes valeurs mais une forme statique différente définie par le type de sortie.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.resize_bilinear (TFL :: ResizeBilinearOp)

ResizeOpération bilinéaire

Redimensionnez images à size à l'aide de l'interpolation bilinéaire.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
align_corners ::mlir::BoolAttr attribut booléen
half_pixel_centers ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float 32 bits ou TFLite quint8 ou de type QUI8 ou de type QI8 ou de type QI16
size tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs de type float 32 bits ou TFLite quint8 ou de type QUI8 ou de type QI8 ou de type QI16

tfl.resize_nearest_neighbor (TFL :: ResizeNearestNeighborOp)

Redimensionner l'opération du voisin le plus proche

Redimensionnez images à size en utilisant l'interpolation du voisin le plus proche.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
align_corners ::mlir::BoolAttr attribut booléen
half_pixel_centers ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float 32 bits ou TFLite quint8 ou de type QUI8 ou de type QI8 ou de type QI16
size tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs de type float 32 bits ou TFLite quint8 ou de type QUI8 ou de type QI8 ou de type QI16

tfl.reverse_sequence (TFL::ReverseSequenceOp)

Inverse les tranches de longueur variable.

Cette opération coupe d'abord input le long de la dimension batch_dim , et pour chaque tranche i , inverse les premiers éléments seq_lengths[i] le long de la dimension seq_dim .

Les éléments de seq_lengths doivent obéir seq_lengths[i] <= input.dims[seq_dim] , et seq_lengths doit être un vecteur de longueur input.dims[batch_dim] .

La tranche de sortie i le long de la dimension batch_dim est ensuite donnée par la tranche d'entrée i , les premières tranches seq_lengths[i] le long de la dimension seq_dim étant inversées.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
seq_dim ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur n'est pas négative
batch_dim ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur n'est pas négative

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8
seq_lengths tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8

tfl.reverse_v2 (TFL::ReverseV2Op)

Opérateur ReverseV2

Inverse les dimensions spécifiques d'un tenseur.

Étant donné un tenseur et un axe tenseur int32/int64 représentant l'ensemble des dimensions du tenseur à inverser. Cette opération inverse chaque dimension i pour laquelle il existe j st axis[j] == i.

Args : tenseur : un tenseur. Doit être l'un des types suivants : uint8, int8, int16, int32, int64, float32, bool Jusqu'à 8-D.

axe : un tenseur. Doit être l'un des types suivants : int32, int64. avec seulement 1 élément qui est l'index de l'axe. À FAIRE : Ajouter la prise en charge de plusieurs éléments.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI16 ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs entières sans signe de 1 bit
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI16 ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs entières sans signe de 1 bit

tfl.rfft2d (TFL::RFFT2dOp)

Transformation de Fourier rapide 2D à valeur réelle.

Calcule la transformée de Fourier discrète bidimensionnelle d'un signal à valeur réelle sur les 2 dimensions les plus internes de input .

Puisque la DFT d'un signal réel est symétrique hermitienne, RFFT2D renvoie uniquement les composantes uniques fft_length / 2 + 1 de la FFT pour la dimension la plus interne de output : le terme de fréquence nulle, suivi de la fréquence positive fft_length / 2 termes.

Le long de chaque axe, RFFT2D est calculé, si fft_length est plus petit que la dimension correspondante de input , la dimension est rognée. Si elle est plus grande, la dimension est complétée par des zéros.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
fft_length tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de type complexe avec des valeurs d'éléments flottants de 32 bits

tfl.right_shift (TFL :: RightShiftOp)

Opérateur de décalage vers la droite

Elementwise calcule le décalage vers la droite au niveau du bit de lhs par rhs .

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits
rhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

Résultats:

Résultat Description
output tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

tfl.round (TFL::RoundOp)

Opérateur rond

Arrondit les valeurs d'un tenseur à l'entier le plus proche, élément par élément.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.rsqrt (TFL::RsqrtOp)

Réciproque de l'opérateur racine carrée

Calcule la racine carrée inverse de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

tfl.scatter_nd (TFL::ScatterNdOp)

_Scatter et opérateur

Scatter updates dans un nouveau tenseur selon indices

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
indices tenseur de valeurs entières sans signe de 32 bits
updates tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs entières sans signe de 1 bit
shape Tenseur 1D de tout type de valeurs

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs entières sans signe de 1 bit

tfl.segment_sum (TFL::SegmentSumOp)

Opérateur SegmentSum

Calcule la somme le long des segments d'un tenseur.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.select (TFL :: SelectOp)

Sélectionnez l'opérateur

Sélectionnez les valeurs de « x » si la valeur correspondante de « condition » est vraie ou la valeur de « y » si elle est fausse. Il existe des tailles d'entrée de condition valides :

  1. Soit la même forme (auquel cas la sélection se fait par élément), soit
  2. la condition doit être de rang 1 et correspondre à la première dimension.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition tenseur de valeurs entières sans signe de 1 bit
x tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8
y tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.select_v2 (TFL :: SelectV2Op)

Opérateur SelectV2

Sélectionnez les valeurs de « x » si la valeur correspondante de « condition » est vraie ou la valeur de « y » si elle est fausse. Il existe des tailles d'entrée de condition valides :

  1. Soit la même forme (auquel cas la sélection se fait par élément), soit
  2. Formes diffusables entre « condition », « x » et « y ».

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition tenseur de valeurs entières sans signe de 1 bit
x tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8
y tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou entier non signé 32 bits ou type QI8 ou type QUI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.shape (TFL::ShapeOp)

Opérateur de forme

Renvoie la forme d'un tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
out_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.sign (TFL::SignOp)

Opération de signature

Renvoie NaN si x est NaN, 0 si x est 0, -1 si x < 0 et 1 si x > 0.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits ou flottantes 64 bits ou de valeurs entières sans signe 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou flottantes 64 bits ou de valeurs entières sans signe 32 bits

tfl.sin (TFL::SinOp)

Opérateur sinus

Calcule le sinus d'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.slice (TFL::SliceOp)

Renvoie une tranche de « entrée ».

Le tenseur de sortie est un tenseur dont les dimensions sont décrites par « taille » dont les valeurs sont extraites de « entrée » en commençant par les décalages de « début ».

begin est de base zéro ; size est basée sur un. Si size[i] est -1, tous les éléments restants de la dimension i sont inclus dans la tranche. En d'autres termes, cela équivaut à définir : size[i] = input.dim_size(i) - start[i]

Exigences : 0 <= commencer[i] <= début[i] + taille[i] <= Di pour i dans [0, n)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de 32 bits flottants ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou d'entier sans signe de 1 bit ou de type chaîne TFLite ou de type QI8 ou Valeurs de type QUI8 ou TFLite quint8 ou de type QI16
begin tenseur de valeurs entières sans signe 32/64 bits
size tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou d'entier sans signe de 1 bit ou de type chaîne TFLite ou de type QI8 ou Valeurs de type QUI8 ou TFLite quint8 ou de type QI16

tfl.softmax (TFL::SoftmaxOp)

Opérateur Softmax

Calcule les activations softmax par élément avec la formule suivante

exp(entrée) / tf.reduce_sum(exp(entrée * bêta), faible)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
beta ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

Résultats:

Résultat Description
output tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8 ou de type QI16

tfl.space_to_batch_nd (TFL :: SpaceToBatchNdOp)

Opérateur SpaceToBatchNd

Cette opération remodèle les dimensions de l'espace en dimension "lot" 0

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
block_shape tenseur de valeurs entières sans signe de 32 bits
paddings tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.space_to_depth (TFL :: SpaceToDepthOp)

Opérateur EspaceVers Profondeur

Réorganise les blocs de données spatiales, en profondeur. Plus précisément, cette opération génère une copie du tenseur d'entrée où les valeurs des dimensions height et width sont déplacées vers la dimension depth . block_size indique la taille du bloc d'entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
block_size ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type TFLite quint8

tfl.sparse_to_dense (TFL :: SparseToDenseOp)

Convertit une représentation clairsemée en un tenseur dense.

Construit un tableau dense avec une forme output_shape telle que

# 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]

Toutes les autres valeurs dense sont définies sur default_value . Si sparse_values ​​est un scalaire, tous les indices clairsemés sont définis sur cette valeur unique.

Les index doivent être triés par ordre lexicographique et ne doivent contenir aucune répétition. Si validate_indices est vrai, ces propriétés sont vérifiées lors de l'exécution.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
sparse_indices tenseur de valeurs entières sans signe 32/64 bits
output_shape tenseur de valeurs entières sans signe 32/64 bits
sparse_values tenseur d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou de type QI8 ou d'entier non signé de 8 bits ou de type QUI8 ou de type TFLite quint8 ou de valeurs flottantes de 32 bits
default_value tenseur d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou de type QI8 ou d'entier non signé de 8 bits ou de type QUI8 ou de type TFLite quint8 ou de valeurs flottantes de 32 bits

Résultats:

Résultat Description
dense tenseur d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou de type QI8 ou d'entier non signé de 8 bits ou de type QUI8 ou de type TFLite quint8 ou de valeurs flottantes de 32 bits

tfl.split (TFL::SplitOp)

Divise un tenseur en tenseurs num_split le long d'une dimension.

Divise le tenseur value le long split_dim en un certain nombre de sous-tenseurs ayant la même forme que celui d'origine, à l'exception de split_dim . Identique à tf.Split.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num_splits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
split_dim tenseur de valeurs entières sans signe de 32 bits
value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.split_v (TFL::SplitVOp)

Divise un tenseur en tenseurs num_split le long d'une dimension.

Divise le tenseur value le long split_dim en un certain nombre de sous-tenseurs ayant la même forme que celui d'origine, à l'exception de split_dim . Le regroupement des sous-tenseurs résultants est décidé par size-splits . Identique à tf.SplitV.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num_splits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
size_splits Tenseur 1D de valeurs entières sans signe de 32 bits
split_dim Tenseur 0D de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.sqrt (TFL::SqrtOp)

Opérateur racine carrée

Calcule la racine carrée de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.square (TFL::SquareOp)

Opérateur carré

Calcule le carré d'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.squared_difference (TFL :: SquaredDifferenceOp)

Opérateur de différence au carré

Opération de différence carrée par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QI8
rhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QI8

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QI8

tfl.squeeze (TFL :: SqueezeOp)

Supprime les dimensions de taille 1 de la forme d'un tenseur.

Étant donné une input de tenseur, cette opération renvoie un tenseur du même type avec toutes les dimensions de taille 1 supprimées. Si vous ne souhaitez pas supprimer toutes les dimensions de taille 1, vous pouvez supprimer des dimensions spécifiques de taille 1 en spécifiant squeeze_dims .

Par exemple:

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

Ou, pour supprimer des dimensions spécifiques de taille 1 :

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

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
squeeze_dims ::mlir::ArrayAttr Attribut de tableau d'entiers de 64 bits dont la taille est d'au plus 8

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.strided_slice (TFL :: StridedSliceOp)

Opération StridedSlice

Renvoie une tranche striée depuis input .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
begin_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
end_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
ellipsis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
new_axis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
shrink_axis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
offset ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de nombre flottant de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou de type QI8 ou de type QUI8 ou d'entier sans signe de 1 bit ou 16 -bit entier sans signe ou type QI16 ou type TFLite quint8 ou valeurs de type chaîne TFLite
begin tenseur de valeurs entières sans signe de 32 bits
end tenseur de valeurs entières sans signe de 32 bits
strides tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de nombre flottant de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou de type QI8 ou de type QUI8 ou d'entier sans signe de 1 bit ou 16 -bit entier sans signe ou type QI16 ou type TFLite quint8 ou valeurs de type chaîne TFLite

tfl.sub (TFL::SubOp)

Opérateur de soustraction

Opération de soustraction par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

tfl.sum (TFL::SumOp)

Opérateur de somme

Calcule la réduction de somme le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.svdf (TFL::SVDFOp)

Opérateur de filtre de décomposition à valeur unique

L'opération SVDF est une décomposition d'une opération densément connectée en filtres de bas rang. Pour plus de détails : https://research.google.com/pubs/pub43813.html https://arxiv.org/abs/1812.02802

Traits : QuantizableResult , quant::AccumulatorUniformScale<3, 2, 4>

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
rank ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 32 bits
feature_weights tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8
time_weights tenseur de valeurs de type float ou QI16 32 bits
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
activation_state tenseur avec état

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits

tfl.tanh (TFL::TanhOp)

Opérateur tangent hyperbolique

Calcule la tangente hyperbolique de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.tile (TFL :: TileOp)

Opérateur de tuiles.

Construit un tenseur en mosaïque un tenseur donné.

Cette opération crée un nouveau tenseur en répliquant l'entrée plusieurs fois. La i'ième dimension du tenseur de sortie a des éléments input.dims(i) * multiples[i], et les valeurs d'entrée sont répliquées plusieurs fois[i] le long de la 'i'ième dimension. Par exemple, mosaïquer [abcd] par [2] produit [abcdabcd].

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QUI8 ou de valeurs de type chaîne TFLite
multiples tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QUI8 ou de valeurs de type chaîne TFLite

tfl.topk_v2 (TFL :: TopKV2Op)

Opérateur TopK

Renvoie le k plus grand élément le long de chaque dernière tranche dimensionnelle de input et les indices des valeurs dans la dernière dimension du tenseur d'entrée.

Les résultats sont toujours triés par ordre décroissant.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
k tenseur de valeurs entières sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
values tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
indices tenseur de valeurs entières sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

tfl.transpose (TFL::TransposeOp)

Opérateur de transposition

Renvoie la transposition de x

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 32 bits ou d'un flottant de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 8 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou d'un entier sans signe de 1 bit ou d'un entier sans signe de 64 bits ou de valeurs de type QI16
perm tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 32 bits ou d'un flottant de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 8 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou d'un entier sans signe de 1 bit ou d'un entier sans signe de 64 bits ou de valeurs de type QI16

tfl.transpose_conv (TFL::TransposeConvOp)

Opérateur de convolution de transposition

Effectue une opération de convolution de transposition en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<3, 1, 2> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
output_shape tenseur de valeurs entières sans signe de 32 bits
weights tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.unidirectional_sequence_lstm (TFL :: UnidirectionnelSequenceLSTMOp)

Opérateur lstm de séquence unidirectionnelle

Un réseau neuronal récurrent spécifié par une cellule LSTM. Cette opération prend en charge le déroulement de l'entrée selon les dimensions de temps ou de lot et implémente l'opération suivante pour chaque élément de la séquence s = 1...sequence_length : sorties[s] = état = activation(LSTMOp(inputs[s]))

où LSTMOp est LSTM TF Lite Op et « activation » est la fonction passée comme argument « fused_activation_function » (sinon « NONE »).

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , InferTypeOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
time_major ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen
diagonal_recurrent_tensors ::mlir::BoolAttr attribut booléen
input_to_input_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_forget_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_cell_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_output_intermediate ::mlir::TypeAttr n'importe quel attribut de type
effective_hidden_scale_intermediate ::mlir::TypeAttr n'importe quel attribut de type

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
input_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
recurrent_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
forget_gate_bias tenseur de valeurs flottantes 32 bits
cell_bias tenseur de valeurs flottantes 32 bits
output_gate_bias tenseur de valeurs flottantes 32 bits
projection_weights tenseur de n'importe quel type de valeurs ou aucun type
projection_bias tenseur de n'importe quel type de valeurs ou aucun type
input_activation_state tenseur avec état
input_cell_state tenseur avec état
input_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
forget_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
cell_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
output_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits

tfl.unidirectional_sequence_rnn (TFL::UnidirectionnelSequenceRNNOp)

Opérateur rnn de séquence unidirectionnelle

Un réseau neuronal récurrent spécifié par une cellule RNN. Cette opération prend en compte les entrées dans un format {batch_size, seq_len, input_size} ou {seq_len, batch_size, input_size} si elles sont temporelles.

Il implémente l'opération suivante pour chaque élément de la séquence s = 1...sequence_length : sorties[s] = état = activation(RNNOp(inputs[s]))

où RNNOp est RNNOp TF Lite Op et « activation » est la fonction passée comme argument « fused_activation_function » (sinon « NONE »).

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
time_major ::mlir::BoolAttr attribut booléen
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
input_to_input_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de valeurs de type float ou QI8 32 bits
input_gate_bias tenseur de valeurs flottantes 32 bits
hidden_state tenseur avec état

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.unique (TFL::UniqueOp)

Op. Unique.

Cette opération renvoie une output tensorielle contenant tous les éléments uniques de input triés dans le même ordre dans lequel ils apparaissent dans input . Cette opération renvoie également un tenseur idx de la même taille que x qui contient l'index de chaque valeur d' input dans la output unique sortie . Autrement dit:

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
idx_out_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur d'entier sans signe de 8 bits ou de type QI8 ou d'entier non signé de 8 bits ou de type QUI8 ou d'entier sans signe de 16 bits ou de type QI16 ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs flottantes de 32 bits

Résultats:

Résultat Description
output tenseur d'entier sans signe de 8 bits ou de type QI8 ou d'entier non signé de 8 bits ou de type QUI8 ou d'entier sans signe de 16 bits ou de type QI16 ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs flottantes de 32 bits
idx tenseur de valeurs entières sans signe 32/64 bits

tfl.unpack (TFL :: UnpackOp)

Décompresse un tenseur le long d'une dimension en plusieurs tenseurs

Décompresse une dimension donnée d'un tenseur de rang R en tenseurs de rang num (R-1) .

Décompresse les tenseurs num de value en les découpant le long de la dimension axis . Par exemple, étant donné un tenseur de forme (A, B, C, D) ;

Si axis == 0 alors le iième tenseur en output est la value[i, :, :, :] et chaque tenseur en output aura la forme (B, C, D) . (Notez que la dimension décompressée a disparu, contrairement à split ).

Si axis == 1 alors le iième tenseur en output est la value[:, i, :, :] et chaque tenseur en output aura la forme (A, C, D) . Etc.

C'est le contraire de pack .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultElementType

Interfaces : ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur n'est pas négative
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou de type QI8 ou de type QUI8 ou de valeurs entières sans signe de 16 bits ou de type QI16

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.unsorted_segment_max (TFL::UnsortedSegmentMaxOp)

Opérateur UnsortedSegmentMax

Calcule la valeur maximale le long des segments d'un tenseur tel que output[i] = max(data[j....]) où segment_ids[j...] = i si le maximum est vide pour un ID de segment donné i, il génère la plus petite valeur possible pour le type numérique spécifique, output[i] = numeric_limits::lowest(). Notez que les valeurs de segment_ids sont toujours validées pour être inférieures à num_segments et qu'une erreur est générée pour les index hors limites.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_min (TFL::UnsortedSegmentMinOp)

Opérateur UnsortedSegmentMin

Calcule la valeur minimale le long des segments d'un tenseur tel que output[i] = min(data[j....]) où segment_ids[j...] = i si le minimum est vide pour un ID de segment donné i, il génère la plus grande valeur possible pour le type numérique spécifique, output[i] = numeric_limits::max(). Notez que les valeurs de segment_ids sont toujours validées pour être inférieures à num_segments et qu'une erreur est générée pour les index hors limites.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_prod (TFL::UnsortedSegmentProdOp)

Opérateur UnsortedSegmentProd

Calcule le produit le long des segments d'un tenseur.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_sum (TFL::UnsortedSegmentSumOp)

Opérateur UnsortedSegmentSum

À partir d'une segmentation tensorielle, calcule le output résultant de la somme des éléments mappés au même segment_id. C'est-à-dire que output[i] est égal à la somme tensorielle de tous les éléments du tenseur d'entrée mappé à segment_id i . Si aucun tenseur n'est mappé à un segment_id inclus particulier, la sortie à cet indice sera un tenseur zéro avec la forme appropriée. Notez que les valeurs de segment_ids sont toujours validées pour être inférieures à num_segments et qu'une erreur est générée pour les index hors limites.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.var_handle (TFL::VarHandleOp)

Renvoie un handle vers une ressource variable à partir de son nom.

Renvoie un handle pour une ressource variable à partir de son nom. conteneur : le conteneur dans lequel cette variable est placée. shared_name : le nom par lequel cette variable est référencée.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
container ::mlir::StringAttr attribut de chaîne
shared_name ::mlir::StringAttr attribut de chaîne

Résultats:

Résultat Description
resource_handle tenseur des valeurs des ressources

tfl.where (TFL :: WhereOp)

Renvoie les emplacements des valeurs différentes de zéro/vraies dans un tenseur.

Cette opération renvoie les coordonnées des vrais éléments dans condition . Les coordonnées sont renvoyées dans un tenseur 2D où la première dimension (lignes) représente le nombre de vrais éléments et la deuxième dimension (colonnes) représente les coordonnées des vrais éléments. Gardez à l'esprit que la forme du tenseur de sortie peut varier en fonction du nombre de valeurs vraies présentes dans condition . Les indices sont affichés dans l'ordre des lignes principales.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32/64 bits ou d'un entier sans signe de 8 bits ou d'un entier non signé de 8 bits ou de valeurs entières non signées de 32 bits

Résultats:

Résultat Description
index tenseur de valeurs entières sans signe de 64 bits

tfl.while (TFL::WhileOp)

Boucle while

sortie = entrée ; while (cond(sortie)) { sortie = corps(sortie) }

La boucle While où sont toutes les valeurs passe par des arguments avec capture implicite.

input : Une liste de tenseurs d'entrée dont les types sont T. output : Une liste de tenseurs de sortie dont les types sont T. cond : Une région qui prend 'input' et renvoie un tenseur scalaire booléen. body : une région qui prend une liste de tenseurs et renvoie une autre liste de tenseurs. Les deux listes ont les mêmes types.

Caractéristiques : SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : LoopLikeOpInterface , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
is_stateless ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.yield (TFL::YieldOp)

Opération de rendement

L'opération "yield" représente une opération de retour dans le flux de contrôle conditionnel et structuré (par exemple, while), et un terminateur pour ControlNodeOp. L'opération prend un nombre variable d'opérandes et ne produit aucun résultat. Le numéro et les types d'opérande doivent correspondre à la signature de la région qui contient l'opération.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , Terminator

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
"anonyme" variadique de tout type

tfl.zeros_like (TFL::ZerosLikeOp)

Opérateur ZerosLike

Renvoie un tenseur de zéros avec la même forme et le même type que le tenseur d'entrée.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 64 bits ou d'un entier sans signe de 32 bits ou de valeurs flottantes de 32 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 64 bits ou d'un entier sans signe de 32 bits ou de valeurs flottantes de 32 bits

Attributs

DimensionMetadataAttr

Métadonnées de dimension.

Syntaxe:

#tfl.dimension_metadata<
  ::mlir::TFL::DimensionTypeAttr,   # format
  int32_t,   # dense_size
  ::llvm::ArrayRef<int32_t>,   # segments
  ::llvm::ArrayRef<int32_t>   # indices
>

Paramètres :

Paramètre Type C++ Description
format ::mlir::TFL::DimensionTypeAttr type_dimension
taille_dense int32_t
segments ::llvm::ArrayRef<int32_t>
indices ::llvm::ArrayRef<int32_t>

SparsityParameterAttr

Paramètre de parcimonie.

Syntaxe:

#tfl.sparsity_parameter<
  ::llvm::ArrayRef<int32_t>,   # traversal_order
  ::llvm::ArrayRef<int32_t>,   # block_map
  ::llvm::ArrayRef<DimensionMetadataAttr>   # dim_metadata
>

Paramètres :

Paramètre Type C++ Description
traversal_order ::llvm::ArrayRef<int32_t>
block_map ::llvm::ArrayRef<int32_t>
dim_metadonnées ::llvm::ArrayRef<DimensionMetadataAttr>

ConstBytesAttr

Une représentation d'attribut de chaîne des octets compilés

Exemples de syntaxe :

#tfl<const_bytes : "0xDEADBEEF">

Paramètres :

Paramètre Type C++ Description
valeur ::llvm::StringRef

DimensionTypeAttr

type_dimension

Syntaxe:

#tfl.dimension_type_attr<
  ::mlir::TFL::DimensionType   # value
>

Énumération des cas :

  • DENSE ( DENSE )
  • SPARSE_CSR ( SPARSE_CSR )

Paramètres :

Paramètre Type C++ Description
valeur ::mlir::TFL::DimensionType une énumération de type DimensionType

LSTMKernelTypeAttr

lstm_kernel_type

Syntaxe:

#tfl.lstm_kernel_type_attr<
  ::mlir::TFL::LSTMKernelType   # value
>

Énumération des cas :

  • COMPLET ( FULL )
  • BASE ( BASIC )

Paramètres :

Paramètre Type C++ Description
valeur ::mlir::TFL::LSTMKernelType une énumération de type LSTMKernelType

MirrorPaddingTypeAttr

miroir_pad_enum

Syntaxe:

#tfl.mirror_pad_attr<
  ::mlir::TFL::MirrorPaddingType   # value
>

Énumération des cas :

  • RÉFLÉCHIR ( REFLECT )
  • SYMÉTRIQUE ( SYMMETRIC )

Paramètres :

Paramètre Type C++ Description
valeur ::mlir::TFL::MirrorPaddingType une énumération de type MirrorPaddingType

Énumérations

Type de dimension

type_dimension

Cas :

Symbole Valeur Chaîne
DENSE 0 DENSE
SPARSE_CSR 1 SPARSE_CSR

LSTMKernelType

lstm_kernel_type

Cas :

Symbole Valeur Chaîne
COMPLET 0 COMPLET
BASIQUE 1 BASIQUE

MirrorPaddingType

miroir_pad_enum

Cas :

Symbole Valeur Chaîne
REFLÉTER 0 REFLÉTER
SYMÉTRIQUE 1 SYMÉTRIQUE
,

Le dialecte TensorFlow Lite.

Ce dialecte correspond aux opérations TensorFlow Lite.

Invariants :

  • Toutes les valeurs sont de type Tensor (en particulier, les scalaires sont représentés à l'aide de tenseurs de dimension zéro) ;

Opérations

tfl.abs (TFL::AbsOp)

Opérateur de valeur absolue

Étant donné un tenseur x , cette opération renvoie un tenseur contenant la valeur absolue de chaque élément de x . Par exemple, si x est un élément d'entrée et y est un élément de sortie, cette opération calcule \(y = |x|\).

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs flottantes de 32 bits ou de type QI8 ou de type QI16

Résultats:

Résultat Description
y tenseur d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs flottantes de 32 bits ou de type QI8 ou de type QI16

tfl.add (TFL::AddOp)

Opérateur d'addition

Opération d’addition par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.add_n (TFL::AddNOp)

_Ajouter n opérateur

Ajoute tous les tenseurs d'entrée par élément.

Traits : AlwaysSpeculatableImplTrait , Commutative

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
inputs variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
sum tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.arg_max (TFL::ArgMaxOp)

Opérateur ArgMax

Renvoie l'index avec la plus grande valeur sur toutes les dimensions d'un tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
output_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe 32/64 bits

tfl.arg_min (TFL::ArgMinOp)

Opérateur ArgMin

Renvoie l'index avec la plus petite valeur sur les dimensions d'un tenseur. a = [1, 10, 26,9, 2,8, 166,32, 62,3] b = tf.math.argmin(input = a) c = tf.keras.backend.eval(b)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
output_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 8 bits ou d'un entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe 32/64 bits

tfl.assign_variable (TFL::AssignVariableOp)

Attribue une nouvelle valeur à une variable.

Tout ReadVariableOp avec une dépendance de contrôle sur cette opération est assuré de renvoyer cette valeur ou une valeur ultérieure plus récente de la variable.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
resource_id tenseur des valeurs des ressources
value tenseur de 32 bits flottants ou 64 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier sans signe 32 bits ou entier sans signe 64 bits ou type QI16 ou type complexe avec des éléments flottants de 32 bits ou type complexe avec des valeurs d'éléments flottants de 64 bits

tfl.atan2 (TFL::Atan2Op)

Opération Atan2

L'opération "atan2" calcule l'arctangente de y/x élément par élément, en respectant les signes des arguments.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
y tenseur de valeurs flottantes 32 bits ou 64 bits
x tenseur de valeurs flottantes 32 bits ou 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.average_pool_2d (TFL::AveragePool2DOp)

Opérateur _Average_pool 2D

Effectue une opération de pooling moyen en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
filter_height ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_width ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.basic_lstm (TFL::BasicLSTMOp)

L'opérateur lstm de base

Opérateur de cellule LSTM de base.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
kernel_type ::mlir::TFL::LSTMKernelTypeAttr lstm_kernel_type dont la valeur est mlir::TFL::LSTMKernelType::BASIC

Opérandes :

Opérande Description
data_input tenseur de valeurs de type float ou QUI8 32 bits
prev_activ_input tenseur de valeurs de type float ou QUI8 32 bits
weights_input tenseur de valeurs de type float ou QUI8 32 bits
biases_input tenseur de valeurs de type float ou QI32 32 bits
prev_state_input tenseur de valeurs de type float ou QI16 32 bits

Résultats:

Résultat Description
activ_output Tenseur 2D de tout type de valeurs
state_output Tenseur 2D de tout type de valeurs
concat_temp Tenseur 2D de tout type de valeurs
activ_temp Tenseur 2D de tout type de valeurs

tfl.batch_matmul (TFL::BatchMatMulOp)

Opérateur de multiplication matricielle par lots

Effectue une multiplication matricielle par lots sur les entrées. Suit les conventions de TensorFlow BatchMatMulV2, avec prise en charge des dimensions inconnues dans les dimensions du lot et la diffusion.

Inputs:
  `inputs[0]`: required: input LHS
  `inputs[1]`: required: input RHS
  `adjoint_lhs`: optional: Transpose LHS (default false)
  `adjoint_rhs`: optional: Transpose RHS (default false)

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
adj_x ::mlir::BoolAttr attribut booléen
adj_y ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
x tenseur de type float 32 bits ou QI8 ou type QI16 ou valeurs entières sans signe 8 bits
y tenseur de type float 32 bits ou QI8 ou type QI16 ou valeurs entières sans signe 8 bits

Résultats:

Résultat Description
output tenseur de type flottant 32 bits ou de type QI8 ou de type QI16 ou de valeurs entières sans signe de 32 bits

tfl.batch_to_space_nd (TFL :: BatchToSpaceNdOp)

Opérateur BatchToSpaceNd

Cette opération remodèle la dimension "batch" 0 en dimensions spatiales.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
block_shape tenseur de valeurs entières sans signe de 32 bits
indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.bidirectional_sequence_lstm (TFL :: BidirectionnelSequenceLSTMOp)

Opérateur lstm de séquence bidirectionnelle

Le LSTM bidirectionnel est essentiellement composé de deux LSTM, l'un allant vers l'avant et l'autre vers l'arrière. Et le résultat est la concaténation des deux lstms.

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
merge_outputs ::mlir::BoolAttr attribut booléen
time_major ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_input_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_input_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_recurrent_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_recurrent_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
fw_cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
fw_forget_gate_bias tenseur de valeurs flottantes 32 bits
fw_cell_bias tenseur de valeurs flottantes 32 bits
fw_output_gate_bias tenseur de valeurs flottantes 32 bits
fw_projection_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_projection_bias tenseur de n'importe quel type de valeurs ou aucun type
bw_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_input_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_input_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_input_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_recurrent_to_forget_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_cell_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_recurrent_to_output_weights tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits
bw_cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
bw_forget_gate_bias tenseur de valeurs flottantes 32 bits
bw_cell_bias tenseur de valeurs flottantes 32 bits
bw_output_gate_bias tenseur de valeurs flottantes 32 bits
bw_projection_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_projection_bias tenseur de n'importe quel type de valeurs ou aucun type
fw_input_activation_state tenseur avec état
fw_input_cell_state tenseur avec état
bw_input_activation_state tenseur avec état
bw_input_cell_state tenseur avec état
aux_input tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_cell_weights tenseur de n'importe quel type de valeurs ou aucun type
fw_aux_input_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_cell_weights tenseur de n'importe quel type de valeurs ou aucun type
bw_aux_input_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
fw_output tenseur de tout type de valeurs
bw_output tenseur de tout type de valeurs

tfl.bitcast (TFL :: BitcastOp)

Opérateur de diffusion de bits

Bitcaste un tenseur d'un type à un autre.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.bitwise_xor (TFL :: BitwiseXorOp)

Opérateur Xor au niveau du bit

Elementwise calcule le XOR au niveau du bit de lhs et rhs .

Traits : AlwaysSpeculatableImplTrait , Commutative , ResultsBroadcastableShape , SameOperandsAndResultElementType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits
rhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

Résultats:

Résultat Description
output tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

tfl.broadcast_args (TFL::BroadcastArgsOp)

Renvoie la forme de s0 op s1 avec diffusion.

Étant donnés s0 et s1 , tenseurs qui représentent des formes, calculez r0 , la forme diffusée. s0 , s1 et r0 sont tous des vecteurs entiers.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
s0 tenseur de valeurs entières sans signe 32/64 bits
s1 tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
r0 tenseur de valeurs entières sans signe 32/64 bits

tfl.broadcast_to (TFL::BroadcastToOp)

Diffusez un tableau pour une forme compatible.

La diffusion est le processus de création de tableaux ayant des formes compatibles pour les opérations arithmétiques. Deux formes sont compatibles si pour chaque paire de dimensions elles sont égales ou si l'une d'elles en est une. Lorsque vous essayez de diffuser un Tensor sur une forme, il commence par les dimensions de fin et progresse.

Par exemple,

x = tf.constant([1, 2, 3]) y = tf.broadcast_to(x, [3, 3]) print(y) tf.Tensor( [[1 2 3] [1 2 3] [1 2 3]], forme=(3, 3), dtype=int32)

Dans l'exemple ci-dessus, le Tensor d'entrée avec la forme de [1, 3] est diffusé vers le Tensor de sortie avec la forme de [3, 3] .

Lors d'opérations de diffusion telles que la multiplication d'un tenseur par un scalaire, la diffusion confère (généralement) un certain avantage temporel ou spatial, car le tenseur diffusé n'est jamais matérialisé.

Cependant, broadcast_to n’apporte pas de tels avantages. Le tenseur nouvellement créé prend toute la mémoire de la forme diffusée. (Dans un contexte graphique, broadcast_to peut cependant être fusionné avec une opération ultérieure, puis optimisé.)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers sans signe de 1 bits ou entiers sans signe de 4 bits ou entiers sans signe de 8 bits ou de type QI8 ou entiers non signés de 8 bits ou entiers non signés de 32 bits ou de type QUI8 ou 16 entier sans signe de 64 bits ou type QI16 ou entier sans signe de 64 bits ou type complexe avec Valeurs des éléments flottants 32 bits
shape tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers sans signe de 1 bits ou entiers sans signe de 4 bits ou entiers sans signe de 8 bits ou de type QI8 ou entiers non signés de 8 bits ou entiers non signés de 32 bits ou de type QUI8 ou 16 entier sans signe de 64 bits ou type QI16 ou entier sans signe de 64 bits ou type complexe avec Valeurs des éléments flottants 32 bits

tfl.bucketize (TFL::BucketizeOp)

Bucketise les « entrées » en fonction des « limites ».

Exemple:

Si les entrées sont boundaries = [0, 10, 100] et input = [[-5, 10000][150, 10][5, 100]] , alors la sortie sera output = [[0, 3][3, 2][1, 3]] .

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
boundaries ::mlir::ArrayAttr Attribut de tableau flottant 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou flottantes 64 bits ou d'entiers sans signe 32 bits ou de valeurs entières sans signe 64 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 32 bits

tfl.call_once (TFL::CallOnceOp)

Appelle une fonction d'initialisation

Cette opération invoque la fonction d'initialisation donnée pour l'initialiseur de session dans le dialecte du modèle enregistré tf.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
session_init_function ::mlir::StringAttr attribut de chaîne

tfl.cast (TFL::CastOp)

Opérateur de casting

Convertit l’entrée du type d’entrée en type de sortie.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type float 16 bits ou bfloat16 ou float 32 bits ou float 64 bits ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 16 bits ou entier non signé 16 bits ou entier sans signe 32 bits ou Entier non signé de 32 bits ou entier sans signe de 64 bits ou type TFLite quint8 ou Entier non signé de 8 bits ou entier sans signe de 8 bits ou type complexe avec des valeurs d'éléments flottants de 32 bits

Résultats:

Résultat Description
output tenseur de type float 16 bits ou bfloat16 ou float 32 bits ou float 64 bits ou entier sans signe 1 bit ou entier sans signe 16 bits ou entier non signé 16 bits ou entier sans signe 32 bits ou entier sans signe 32 bits ou Entier sans signe 64 bits ou type TFLite quint8 ou entier non signé 8 bits ou entier sans signe de 8 bits ou type complexe avec des valeurs d'éléments flottants de 32 bits

tfl.ceil (TFL::CeilOp)

Opérateur de plafond

Renvoie la valeur plafond par élément de l’entrée.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.complex_abs (TFL :: ComplexAbsOp)

Calcule la valeur absolue complexe d'un tenseur.

Étant donné un tenseur x de nombres complexes, cette opération renvoie un tenseur de type float ou double qui est la valeur absolue de chaque élément de x . Tous les éléments de x doivent être des nombres complexes de la forme \(a + bj\). La valeur absolue est calculée comme \( \sqrt{a^2 + b^2}\).

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.concatenation (TFL::ConcaténationOp)

Opérateur de concaténation

Concatène les tenseurs le long d'une dimension

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
values variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output tenseur de flottant 32 bits ou entier sans signe 64 bits ou entier sans signe 32 bits ou entier sans signe 16 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier non signé 8 bits ou entier non signé 32 bits ou 1 -valeurs entières sans signe de bits

tfl.control_node (TFL::ControlNodeOp)

L'opération TFL.control_node encapsule les opérations sur un seul bloc afin d'attacher des bords de contrôle.

Ceci est utilisé pour envelopper des régions et leur attacher des dépendances de contrôle. Généralement, cela se produit dans l'une des dernières étapes avant l'émission du modèle flatbuffer afin de permettre des optimisations qui reposent sur un ordre fixe d'opérations (telles que la rematérialisation.) L'exportateur flatbuffer déballera la région encapsulée et annotera le modèle généré avec des métadonnées. de telle sorte que toute réorganisation d'exécution respectera l'ordre donné par les dépendances de contrôle.

Traits : HasParent<mlir::func::FuncOp> , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Opérandes :

Opérande Description
controlInputs variadique de contrôle

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type
control contrôle

tfl.conv_2d (TFL :: Conv2DOp)

Opérateur de convolution

Effectue une opération de convolution sur les entrées.

Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.conv_3d (TFL :: Conv3DOp)

Opérateur 3D de convolution

Effectue une opération de convolution sur les entrées 3D. Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , quant::AccumulatorUniformScale<2, 0, 1>

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_d_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_d ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
filter tenseur de valeurs flottantes 32 bits
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.conv_3d_transpose (TFL :: Conv3DTransposeOp)

Opérateur 3D de convolution transposée

Effectue une opération de convolution transposée sur les entrées 3D. Entrées : inputs[0] : obligatoire : la forme du tenseur de sortie inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : obligatoire : le tenseur d'activation d'entrée inputs[3] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , quant::AccumulatorUniformScale<2, 0, 1>

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_d_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_d ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
output_shape tenseur de valeurs entières sans signe de 32 bits
filter tenseur de valeurs flottantes 32 bits
input tenseur de valeurs flottantes 32 bits
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.cos (TFL::CosOp)

Opérateur cosinus

Calcule le cosinus de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.cumsum (TFL::CumsumOp)

Opérateur cumulatif

Calculez la somme cumulée du tenseur x le long de l'axe.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
exclusive ::mlir::BoolAttr attribut booléen
reverse ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.custom (TFL::CustomOp)

Opération personnalisée

Une opération générique pour toute opération personnalisée TFLite.

input : Une liste d’entrées dans l’opération originale. custom_code : une chaîne utilisée pour identifier exactement cette opération, qui correspond à Operator_codes.custom_code dans le flatbuffer. custom_option : un support pour enregistrer les attributs op en mode octets. sortie : une liste de sorties dans l'opération d'origine.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
custom_code ::mlir::StringAttr attribut de chaîne
custom_option ::mlir::TFL::ConstBytesAttr Une représentation d'attribut de chaîne des octets compilés

Opérandes :

Opérande Description
input variadique de tenseur de tout type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.custom_tf (TFL::CustomTfOp)

Wrapper Op pour les opérations personnalisées TF.

Une opération wrapper autour de n’importe quelle opération Custom TF. Celles-ci incluent les opérations définies à l'aide de custom_opdefs ou liées qui ne sont pas définies dans le dialecte TF. Cette opération enveloppe simplement l'opération personnalisée dans une région. Remarque n°1, cette opération n'inclura pas les opérations personnalisées TF Lite définies à l'aide de CustomOp. Remarque n°2, cette opération n'est qu'une représentation interne à l'intérieur du convertisseur et n'est pas exposée/exportée lorsque le modèle est exporté vers Flatbuffer.

Traits : IsolatedFromAbove , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : InferTypeOpInterface , TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
input variadique de tenseur de tout type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.densify (TFL::DensifyOp)

Opérateur densification

Convertit le tenseur clairsemé en format dense.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

tfl.depth_to_space (TFL :: ProfondeurToSpaceOp)

Opérateur DepthToSpace

Réorganise les données de la profondeur en blocs de données spatiales. Il s'agit de la transformation inverse de SpaceToDepth. Plus précisément, cette opération génère une copie du tenseur d'entrée où les valeurs de la dimension depth sont déplacées dans des blocs spatiaux vers les dimensions height et width . L'attr block_size indique la taille du bloc d'entrée et la manière dont les données sont déplacées.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
block_size ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type TFLite quint8 ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type TFLite quint8 ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8

tfl.depthwise_conv_2d (TFL :: DepthwiseConv2DOp)

Opérateur de convolution séparable en profondeur

Effectue une opération de convolution sur les entrées.

Entrées : inputs[0] : obligatoire : le tenseur d'activation des entrées inputs[1] : obligatoire : le tenseur de poids du filtre inputs[2] : facultatif : le tenseur de biais

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<3, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
dilation_h_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
dilation_w_factor ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
depth_multiplier ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.dequantize (TFL::DequantizeOp)

Opérateur de déquantification

Convertit un tableau quantifié d'entiers en virgules flottantes en fonction des paramètres de quantification.

Interfaces : NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type QI4 ou type QI8 ou type QUI8 ou type QI16 ou valeurs flottantes 16 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.dilate (TFL::DilateOp)

Opérateur de dilatation

Étend un tenseur en ajoutant de nouveaux éléments entre ceux existants.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou d'un entier non signé de 8 bits ou d'un entier non signé de 16 bits ou d'un entier non signé de 32 bits ou d'un entier non signé de 64 bits ou Valeurs flottantes 32 bits ou 64 bits
dilations tenseur de valeurs entières sans signe de 32 bits
padding_value Tenseur 0D de tout type de valeurs

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou d'un entier non signé de 8 bits ou d'un entier non signé de 16 bits ou d'un entier non signé de 32 bits ou d'un entier non signé de 64 bits ou Valeurs flottantes 32 bits ou 64 bits

tfl.div (TFL::DivOp)

Opérateur de division

Opération de division par éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8
rhs tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou entières sans signe 32 bits ou de type QUI8

tfl.dynamic_update_slice (TFL :: DynamicUpdateSliceOp)

DynamicUpdateSlice.

Opération DynamicUpdateSlice qui a la même sémantique avec XLA DynamicUpdateSlice. Génère un résultat qui est la valeur de l'opérande du tableau d'entrée, avec une mise à jour de tranche écrasée à start_indices.

Voir https://www.tensorflow.org/xla/operation_semantics#dynamicupdateslice

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
operand tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits
update tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits
start_indices tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 1 bit ou d'un entier sans signe de 8 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits ou de 16 bits

tfl.elu (TFL::EluOp)

Opérateur d'unité linéaire exponentielle

Calcule le linéaire exponentiel f(x) -> exp(x) - 1 pour x < 0, x pour x >= 0. par élément.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits

tfl.embedding_lookup (TFL::EmbeddingLookupOp)

Opérateur de recherche d'intégration

Recherche les identifiants dans une liste de tenseurs d'intégration.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lookup tenseur de valeurs entières sans signe de 32 bits
value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI4

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 8 bits ou de valeurs entières non signées de 8 bits

tfl.equal (TFL :: EqualOp)

Opérateur égal

Renvoie l'élément de vérité de x == y élément par élément

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'un entier non signé de 8 bits ou de valeurs de type chaîne TFLite
y tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'un entier non signé de 8 bits ou de valeurs de type chaîne TFLite

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.exp (TFL::ExpOp)

Opérateur d'exponentiation naturelle

Effectue une opération d’exponentiation naturelle par élément en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

tfl.expand_dims (TFL :: ExpandDimsOp)

Insère une dimension de 1 dans la forme d'un tenseur.

Étant donné un tenseur input , cette opération insère une dimension de 1 sur l' axis d'index de dimension de la forme de input . L' axis d'index de dimension commence à zéro ; si vous spécifiez un nombre négatif pour axis il est compté à rebours à partir de la fin.

Cette opération est utile si vous souhaitez ajouter une dimension de lot à un seul élément. Par exemple, si vous avez une seule image de forme [height, width, channels] , vous pouvez en faire un lot de 1 image avec expand_dims(image, 0) , ce qui créera la forme [1, height, width, channels] .

Autres exemples :

# '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]

Cette opération nécessite que :

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

Cette opération est liée à squeeze() , qui supprime les dimensions de taille 1.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs
dim tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.external_const (TFL::ExternalConstOp)

Op. const externe.

L'opération const externe contient un buffer_index qui pointe vers une constante dans le flatbuffer.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
buffer_index ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.fake_quant (TFL::FakeQuantOp)

Opérateur FakeQuant

Fausse quantifier le tenseur des « entrées » de type float via les scalaires float min et max en tenseur « sorties » de même forme que les entrées.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
min ::mlir::FloatAttr Attribut float 32 bits
max ::mlir::FloatAttr Attribut float 32 bits
num_bits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur minimale est 2 dont la valeur maximale est 16
narrow_range ::mlir::BoolAttr attribut booléen dont la valeur est fausse

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.fill (TFL::FillOp)

Remplissez le tenseur avec la valeur donnée.

Remplissez le tenseur avec la valeur donnée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
dims tenseur de valeurs entières sans signe 32/64 bits
input tenseur de valeurs flottantes de 32 bits ou flottantes de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou de type QI8 ou de type QI16 ou de valeurs de type chaîne TFLite

Résultats:

Résultat Description
result tenseur de valeurs flottantes de 32 bits ou flottantes de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou de type QI8 ou de type QI16 ou de valeurs de type chaîne TFLite

tfl.floor (TFL::FloorOp)

Opérateur d'étage

Renvoie la valeur plancher par élément de l’entrée.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.floor_div (TFL::FloorDivOp)

Opérateur de division d'étage

Opération de division au sol par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou de valeurs entières sans signe de 32 bits

tfl.floor_mod (TFL::FloorModOp)

Rappel de division

Opération de rappel de division par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits
rhs tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits

Résultats:

Résultat Description
output tenseur d'un entier sans signe de 8 bits ou d'un entier sans signe de 16 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de valeurs flottantes de 32 bits

tfl.fully_connected (TFL::FullyConnectedOp)

Opération entièrement connectée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , quant::AccumulatorUniformScale<2, 0, 1> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
weights_format ::mlir::StringAttr attribut de chaîne dont la valeur est DEFAULT ou SHUFFLED4x16INT8
keep_num_dims ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou de type QUI16
filter tenseur de valeurs flottantes 32 bits ou de type QI4 ou de type QI8 ou de type QUI8 ou de type QI16
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.gather (TFL::GatherOp)

Opérateur de collecte

Rassemblez les tranches de axis des params en fonction indices .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
batch_dims ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
params tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type chaîne TFLite ou 8 bits entier non signé ou valeurs de type QI8 ou de type QUI8 ou de type QI16
indices tenseur de valeurs entières sans signe de 16 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entier sans signe 1 bit ou entier sans signe 4 bits ou entier sans signe 8 bits ou entier sans signe 16 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type chaîne TFLite ou 8 bits entier non signé ou valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.gather_nd (TFL::GatherNdOp)

_Gather et opérateur

Rassemblez les tranches des params dans un Tensor avec une forme spécifiée par indices .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
params tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type chaîne TFLite
indices tenseur de valeurs entières sans signe de 16 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 32 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type chaîne TFLite

tfl.gelu (TFL::GeluOp)

Fonction d'activation GELU.

Calcule la fonction d'activation GELU par élément.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
approximate ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8

tfl.greater (TFL::GreaterOp)

Un plus grand opérateur

Fonctionnement plus efficace au niveau des éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.greater_equal (TFL::GreaterEqualOp)

_Plus grand opérateur égal

Opération Greater_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QUI8 ou de type QI8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QUI8 ou de type QI8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.hard_swish (TFL::HardSwishOp)

Fonction d'activation Hardswish.

Calcule la fonction d'activation hard-swish f(x) -> (x * relu6(x+3))/6 par élément.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.hashtable (TFL::HashtableOp)

Crée une table de hachage non initialisée.

Cette opération crée une table de hachage, spécifiant le type de ses clés et valeurs. Avant d'utiliser la table, vous devrez l'initialiser. Après initialisation, la table sera immuable.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
table_id ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
key_dtype ::mlir::TypeAttr n'importe quel attribut de type
value_dtype ::mlir::TypeAttr n'importe quel attribut de type

Résultats:

Résultat Description
out tenseur des valeurs des ressources

tfl.hashtable_find (TFL :: HashtableFindOp)

Recherche les clés dans un tableau, affiche les valeurs correspondantes.

Les keys tensorielles doivent être du même type que les clés de la table. Les values de sortie sont du type des valeurs du tableau.

La valeur scalaire default_value est la valeur de sortie pour les clés non présentes dans la table. Il doit également être du même type que les valeurs du tableau.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources
keys tenseur d'entier sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits
default_value tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
out tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

tfl.hashtable_import (TFL :: HashtableImportOp)

Remplace le contenu de la table par les clés et valeurs spécifiées.

Les keys tensorielles doivent être du même type que les clés de la table. Les values du tenseur doivent être du type des valeurs du tableau.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources
keys tenseur d'entier sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits
values tenseur de 32 bits flottants ou d'entiers sans signe de 32 bits ou de type chaîne TFLite ou de valeurs entières sans signe de 64 bits

tfl.hashtable_size (TFL::HashtableSizeOp)

Calcule le nombre d'éléments dans la table donnée.

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
hash_table tenseur des valeurs des ressources

Résultats:

Résultat Description
out tenseur de valeurs entières sans signe de 64 bits

tfl.if (TFL::IfOp)

Opération si-alors-sinon

L'opération tfl.if représente une construction if-then-else pour l'exécution conditionnelle de deux régions de code. L'opérande d'une opération if est une valeur booléenne. Par exemple:

tfl.if %b  {
  ...
} else {
  ...
}

tfl.if peut également renvoyer des résultats définis dans ses régions. Les valeurs définies sont déterminées par le chemin d'exécution emprunté.

Exemple:

%x, %y = tfl.if %b -> (tensor<f32>, tensor<f32>) {
  %x_true = ...
  %y_true = ...
  tfl.yield %x_true, %y_true : tensor<f32>, tensor<f32>
} else {
  %x_false = ...
  %y_false = ...
  tfl.yield %x_false, %y_false : tensor<f32>, tensor<f32>
}

Les régions tfl.if se terminent toujours par "tfl.yield". Si "tfl.if" ne définit aucune valeur, "tfl.yield" peut être laissé de côté et sera inséré implicitement. Sinon, il faut que ce soit explicite. De plus, si « tfl.if » définit une ou plusieurs valeurs, le bloc « else » ne peut pas être omis.

Exemple:

tfl.if %b  {
  ...
}

Traits : NoRegionArguments , RecursiveMemoryEffects , SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : RegionBranchOpInterface , TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
cond tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
results variadique de valeurs de tenseur de tout type

tfl.imag (TFL::ImagOp)

Renvoie la partie imaginaire d'un nombre complexe.

Étant donné une input tensorielle de nombres complexes, cette opération renvoie un tenseur de type float qui est la partie imaginaire de chaque élément de input . Tous les éléments en input doivent être des nombres complexes de la forme \(a + bj\), où a est la partie réelle et b est la partie imaginaire renvoyée par cette opération.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.l2_normalization (TFL :: L2NormalizationOp)

Opérateur de normalisation L2

Opération de normalisation L2

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de type flottant 32 bits ou de type QUI8 ou de type QI8 ou de type QUI16 ou de type QI16 ou de valeurs entières sans signe de 8 bits

Résultats:

Résultat Description
output tenseur de type flottant 32 bits ou de type QUI8 ou de type QI8 ou de type QUI16 ou de type QI16 ou de valeurs entières sans signe de 8 bits

tfl.leaky_relu (TFL::LeakyReluOp)

Opérateur Leaky Relu

Opérateur Leaky ReLU par élément x -> x >= 0 ? x : (alpha * x)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
alpha ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs de type QI16

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.less (TFL::LessOp)

Moins d'opérateur

Moins de fonctionnement au niveau des éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.less_equal (TFL :: LessEqualOp)

_Moins d'opérateur égal

Opération less_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de valeurs de type QI8 ou de type QUI8

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.local_response_normalization (TFL :: LocalResponseNormalizationOp)

Normalisation de la réponse locale.

Le tenseur input 4D est traité comme un tableau 3D de vecteurs 1D (le long de la dernière dimension) et chaque vecteur est normalisé indépendamment. Dans un vecteur donné, chaque composant est divisé par la somme carrée pondérée des entrées dans depth_radius . En détails,

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

Pour plus de détails, voir Krizhevsky et al., Classification ImageNet avec réseaux de neurones convolutifs profonds (NIPS 2012) .

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
radius ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
bias ::mlir::FloatAttr Attribut float 32 bits
alpha ::mlir::FloatAttr Attribut float 32 bits
beta ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.log (TFL :: LogOp)

Opérateur de logarithme naturel

Effectue une opération de logarithme naturel par élément en entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 32 bits

tfl.log_softmax (TFL :: LogSoftmaxOp)

Journaliser l'opérateur softmax

Calcule les activations softmax du journal par élément avec la formule suivante

entrée - log(reduce_sum(exp(input), dim))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8 ou TFLite quint8

tfl.logical_and (TFL :: LogicalAndOp)

Opérateur ET logique

Opération logique ET par élément.

Traits : AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit
rhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logical_not (TFL :: LogicalNotOp)

Opérateur NON logique

Opération NON logique par élément.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logical_or (TFL :: LogicalOrOp)

Opérateur OU logique

Opération OU logique par élément.

Traits : AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs entières sans signe de 1 bit
rhs tenseur de valeurs entières sans signe de 1 bit

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.logistic (TFL::LogisticOp)

Opérateur logistique

Calcule le sigmoïde d'entrée par élément

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
y tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.lstm (TFL::LSTMOp)

L'opérateur lstm complet

Couche réseau récurrente d'unité de mémoire à long terme (LSTM). L'implémentation par défaut sans judas est basée sur : http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf S. Hochreiter et J. Schmidhuber. « Mémoire à long terme et à court terme ». Neural Computation, 9(8):1735-1780, 1997. L'implémentation du judas est basée sur : https://research.google.com/pubs/archive/43905.pdf Hasim Sak, Andrew Senior et Françoise Beaufays. «Architectures de réseaux neuronaux récurrents à mémoire longue et à court terme pour la modélisation acoustique à grande échelle.» INTERSPEECH, 2014. Le couplage des portes d'entrée et d'oubli (CIFG) est basé sur : http://arxiv.org/pdf/1503.04069.pdf Greff et al. « LSTM : A Search Space Odyssey » La normalisation des couches est basée sur : https://arxiv.org/pdf/1607.06450.pdf Ba et al. 'Normalisation des couches'

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
kernel_type ::mlir::TFL::LSTMKernelTypeAttr lstm_kernel_type dont la valeur est mlir::TFL::LSTMKernelType::FULL
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen
input_to_input_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_forget_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_cell_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_output_intermediate ::mlir::TypeAttr n'importe quel attribut de type
effective_hidden_scale_intermediate ::mlir::TypeAttr n'importe quel attribut de type

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits
input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
input_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
recurrent_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
forget_gate_bias tenseur de valeurs de type float ou QI32 32 bits
cell_bias tenseur de valeurs de type float ou QI32 32 bits
output_gate_bias tenseur de valeurs de type float ou QI32 32 bits
projection_weights tenseur de n'importe quel type de valeurs ou aucun type
projection_bias tenseur de n'importe quel type de valeurs ou aucun type
input_activation_state tenseur avec état
input_cell_state tenseur avec état
input_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
forget_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
cell_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
output_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.matrix_diag (TFL::MatrixDiagOp)

Renvoie un tenseur avec la diagonale fournie et tout le reste complété par des zéros.

Étant donné une diagonale, renvoie un tenseur avec la diagonale et tout le reste complété par des zéros. Supposons que la diagonale a k dimensions [I, J, K, ..., N] , alors la sortie est un tenseur de rang k+1 avec des dimensions [I, J, K, ..., N, N] où : output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n].

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
diagonal tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8

tfl.matrix_set_diag (TFL::MatrixSetDiagOp)

Renvoie un tenseur matriciel par lots avec de nouvelles valeurs diagonales par lots.

Étant donné input et diagonal , cette opération renvoie un tenseur avec la même forme et les mêmes valeurs que input , à l'exception de la diagonale principale des matrices les plus internes. Celles-ci seront écrasées par les valeurs en diagonal .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8
diagonal tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
result tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de type QI8 ou de type QI16 ou de type QUI8 ou de valeurs de type TFLite quint8

tfl.max_pool_2d (TFL::MaxPool2DOp)

Opération Max Pool 2D

Effectue un pool maximum 2D en entrée.

Entrées : inputs[0] : obligatoire : le tenseur d'entrée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_width ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
filter_height ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QUI8 ou de type QI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.maximum (TFL::MaximumOp)

Opérateur maximum

Opération maximale par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

Résultats:

Résultat Description
max tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

tfl.mean (TFL::MeanOp)

Opérateur moyen

Calcule la moyenne des éléments sur les dimensions d'un tenseur. Réduit input_tensor le long des dimensions données dans l'axe. Sauf si keepdims est vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans l'axe. Si keepdims est vrai, les dimensions réduites sont conservées avec une longueur de 1.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'entier non signé de 8 bits ou de valeurs de type QI16
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou d'entier non signé de 8 bits ou de valeurs de type QI16

tfl.minimum (TFL::MinimumOp)

Opérateur minimum

Opération minimale par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16
rhs tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

Résultats:

Résultat Description
min tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32/64 bits ou de type QI8 ou de type QUI8 ou de valeurs de type QI16

tfl.mirror_pad (TFL::MirrorPadOp)

Opérateur MirrorPad. Remplit un tenseur avec des valeurs en miroir.

Cette opération remplit une entrée avec des valeurs en miroir en fonction des remplissages que vous spécifiez. paddings est un tenseur entier de forme [n, 2], où n est le rang de l'entrée. Pour chaque dimension D de l'entrée, paddings[D, 0] indique le nombre de valeurs à ajouter avant le contenu de l'entrée dans cette dimension, et paddings[D, 1] indique le nombre de valeurs à ajouter après le contenu de l'entrée dans cette dimension.

paddings[D, 0] et paddings[D, 1] ne doivent pas être supérieurs à input.dim_size(D) (ou input.dim_size(D) - 1) si copy_border est vrai (si faux, respectivement).

La taille complétée de chaque dimension D de la sortie est :

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

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
mode ::mlir::TFL::MirrorPaddingTypeAttr miroir_pad_enum

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16
pad tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type QI16

tfl.mul (TFL::MulOp)

Opérateur de multiplication

Opération de multiplication par éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits
rhs tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits

Résultats:

Résultat Description
output tenseur de 32 bits flottants ou entiers sans signe de 32 bits ou entiers non signés de 32 bits ou entiers sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type QI16 ou entiers sans signe de 16 bits ou de type complexe avec des valeurs d'éléments flottants de 32 bits

tfl.multinomial (TFL::MultinomialOp)

Tire des échantillons à partir d’une distribution catégorielle.

Les valeurs générées auront une distribution catégorielle basée sur les logits ou les probabilités logarithmiques non normalisées fournies pour toutes les classes.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
logits tenseur de valeurs flottantes 32 bits
num_samples tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.neg (TFL::NegOp)

Opérateur de négation

Calcule la négation de l'entrée par élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.no_value (TFL :: NoValueOp)

Constante ne représentant aucune valeur.

Aucune valeur constante op.

Traits : AlwaysSpeculatableImplTrait , ConstantLike

Interfaces : ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::UnitAttr attribut d'unité

Résultats:

Résultat Description
none_val aucun type

tfl.non_max_suppression_v4 (TFL :: NonMaxSuppressionV4Op)

Sélectionne goulûment un sous-ensemble de boîtes englobantes par ordre décroissant de score,

élaguer les cases qui ont un chevauchement élevé d'intersection sur union (IOU) avec les cases précédemment sélectionnées. Les cadres de délimitation dont le score est inférieur à score_threshold sont supprimés. Les boîtes englobantes sont fournies sous la forme [y1, x1, y2, x2], où (y1, x1) et (y2, x2) sont les coordonnées de toute paire diagonale de coins de boîte et les coordonnées peuvent être fournies sous forme normalisée (c'est-à-dire situées dans l'intervalle [0, 1]) ou absolu. Notez que cet algorithme est indépendant de l'endroit où se trouve l'origine dans le système de coordonnées et plus généralement est invariant aux transformations orthogonales et aux traductions du système de coordonnées ; ainsi, la traduction ou les réflexions du système de coordonnées entraînent la sélection des mêmes cases par l'algorithme. Le résultat de cette opération est un ensemble d’entiers indexés dans la collection d’entrée de cadres englobants représentant les cadres sélectionnés. Les coordonnées de la boîte englobante correspondant aux indices sélectionnés peuvent ensuite être obtenues à l'aide de l' tf.gather operation . Par exemple : selected_indices = tf.image.non_max_suppression_v2 (boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather (boxes, selected_indices)

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
boxes tenseur de valeurs flottantes 32 bits
scores tenseur de valeurs flottantes 32 bits
max_output_size tenseur de valeurs entières sans signe de 32 bits
iou_threshold tenseur de valeurs flottantes 32 bits
score_threshold tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
selected_indices tenseur de valeurs entières sans signe de 32 bits
valid_outputs tenseur de valeurs entières sans signe de 32 bits

tfl.non_max_suppression_v5 (TFL :: NonMaxSuppressionV5Op)

Sélectionne goulûment un sous-ensemble de boîtes englobantes par ordre décroissant de score,

élaguer les cases qui ont un chevauchement élevé d'intersection sur union (IOU) avec les cases précédemment sélectionnées. Les cadres de délimitation dont le score est inférieur à score_threshold sont supprimés. Les boîtes englobantes sont fournies sous la forme [y1, x1, y2, x2], où (y1, x1) et (y2, x2) sont les coordonnées de toute paire diagonale de coins de boîte et les coordonnées peuvent être fournies sous forme normalisée (c'est-à-dire situées dans l'intervalle [0, 1]) ou absolu. Notez que cet algorithme est indépendant de l'endroit où se trouve l'origine dans le système de coordonnées et plus généralement est invariant aux transformations orthogonales et aux traductions du système de coordonnées ; ainsi, la traduction ou les réflexions du système de coordonnées entraînent la sélection des mêmes cases par l'algorithme. Le résultat de cette opération est un ensemble d’entiers indexés dans la collection d’entrée de cadres englobants représentant les cadres sélectionnés. Les coordonnées de la boîte englobante correspondant aux indices sélectionnés peuvent ensuite être obtenues à l'aide de l' tf.gather operation . Par exemple : selected_indices = tf.image.non_max_suppression_v2( boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) Cette opération supporte également un mode Soft-NMS (avec pondération gaussienne) (cf Bodla et al , https://arxiv.org/abs/1704.04503 ) où les boîtes réduisent le score des autres boîtes qui se chevauchent au lieu de provoquer directement leur élagage. Pour activer ce mode Soft-NMS, définissez le paramètre soft_nms_sigma sur une valeur supérieure à 0.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
boxes tenseur de valeurs flottantes 32 bits
scores tenseur de valeurs flottantes 32 bits
max_output_size tenseur de valeurs entières sans signe de 32 bits
iou_threshold tenseur de valeurs flottantes 32 bits
score_threshold tenseur de valeurs flottantes 32 bits
soft_nms_sigma tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
selected_indices tenseur de valeurs entières sans signe de 32 bits
selected_scores tenseur de valeurs flottantes 32 bits
valid_outputs tenseur de valeurs entières sans signe de 32 bits

tfl.not_equal (TFL::NotEqualOp)

_Opérateur différent

Opération not_equal par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , Commutative , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8 ou de type chaîne TFLite
rhs tenseur d'un entier sans signe de 1 bit ou d'un flottant de 32 bits ou d'un entier sans signe de 32 bits ou d'un entier sans signe de 64 bits ou de type QUI8 ou de type QI8 ou de valeurs de type TFLite quint8 ou de type chaîne TFLite

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.NumericVerify (TFL::NumericVerifyOp)

Vérifie les numériques des deux opérandes

L'opération NumericVerify est une opération de débogage pour vérifier les chiffres des deux activations. Il s'agit d'une opération personnalisée dans TFLite. Si log_if_failed est vrai, l'opération NumericVerify calcule des statistiques sur les différences entre les activations flottantes et quantifiées, génère des journaux, définit les différences dans les tenseurs de sortie et renvoie une erreur si des erreurs supérieures à la tolérance existent. Si log_if_failed = false, alors il ne se soucie pas des erreurs.

Traits : QuantizableResult , SameOperandsShape

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
tolerance ::mlir::FloatAttr Attribut float 32 bits
log_if_failed ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de type QI8 ou de type QUI8 ou de type QI16 ou valeurs de type float 16 bits ou TFLite quint8
ref tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.one_hot (TFL::OneHotOp)

Opérateur OneHot

Renvoie un tenseur unique. Les emplacements représentés par des indices dans indices prennent la valeur on_value , tandis que tous les autres emplacements prennent la valeur off_value .

Si les indices d'entrée sont de rang N , la sortie aura le rang N+1 , Le nouvel axe est créé au niveau de axis de dimension (par défaut : le nouvel axe est ajouté à la fin).

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
indices tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits
depth tenseur de valeurs entières sans signe de 32 bits
on_value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits
off_value tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier sans signe de 1 bit ou d'entier sans signe de 8 bits ou de valeurs entières non signées de 8 bits

tfl.pack (TFL::PackOp)

Regroupe une liste de tenseurs le long d'une dimension en un seul tenseur

Regroupe une liste de tenseurs de rang R values_count dans un tenseur de rang (R+1) .

Emballe les tenseurs values_count dans values ​​dans un tenseur de rang supérieur de un à chaque tenseur In values ​​, en les regroupant le long de la dimension axis .

Étant donné une liste de tenseurs de forme (A, B, C) ;

si axis == 0 alors le tenseur output aura la forme (N, A, B, C) . si axis == 1 alors le tenseur output aura la forme (A, N, B, C) . Etc.

Par exemple:

# '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]]

C'est le contraire de unpack .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
values_count ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
values variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output tenseur de nombre flottant de 32 bits ou d'entier sans signe de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou d'entier non signé de 32 bits ou de type QI8 ou de type QUI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.pad (TFL::PadOp)

Opérateur de remplissage

Cette opération complète une input avec des zéros en fonction des paddings que vous spécifiez. paddings est un tenseur entier de forme [Dn, 2] , où n est le rang de input . Pour chaque dimension D de input , paddings[D, 0] indique le nombre de zéros à ajouter avant le contenu de input dans cette dimension, et paddings[D, 1] indique le nombre de zéros à ajouter après le contenu de input dans cette dimension.

La taille complétée de chaque dimension D de la sortie est :

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

Par exemple:

# '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]]

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
padding tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.padv2 (TFL :: PadV2Op)

Opérateur de remplissage v2

Cette opération remplit une input en fonction des paddings et constant_values ​​que vous spécifiez. paddings est un tenseur entier de forme [Dn, 2] , où n est le rang de input . Pour chaque dimension D de input , paddings[D, 0] indique le nombre de zéros à ajouter avant le contenu de input dans cette dimension, et paddings[D, 1] indique le nombre de zéros à ajouter après le contenu de input dans cette dimension. constant_values ​​est un tenseur scalaire du même type que input qui indique la valeur à utiliser pour le remplissage input .

La taille complétée de chaque dimension D de la sortie est :

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

Par exemple:

# '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]]

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8
padding tenseur de valeurs entières sans signe 32/64 bits
constant_values tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou d'entier non signé de 8 bits ou de valeurs de type QI8 ou de type QUI8 ou de type TFLite quint8

tfl.poly_call (TFL :: PolyCallOp)

Appel poly

Avoir plusieurs corps de fonctions pour le même calcul. Cela permet à un compilateur/interprète de programme de choisir l'une des options disponibles pour exécuter le programme en fonction de celle qui convient le mieux au backend cible.

input : Une liste de tenseurs d’entrée dont les types sont T. output : Une liste de tenseurs de sortie dont les types sont T.

appel : plusieurs régions, dont chacune encapsule le même calcul sémantique mais sous des formes différentes.

Caractéristiques : SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces : RegionBranchOpInterface

Opérandes :

Opérande Description
input variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.pow (TFL::PowOp)

Opérateur électrique

Fonctionnement électrique par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
rhs tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.prelu (TFL::PReluOp)

Opérateur Relu paramétré

Opérateur Relu paramétré x -> x >= 0 ? x : (alpha * x) où alpha est un tenseur entraînable. L'entrée et l'alpha doivent avoir la même taille que l'entrée ou être diffusables.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape , quant::AffineOpCoefficient<-1, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8
alpha tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8

Résultats:

Résultat Description
output tenseur de valeurs de type float 32 bits ou QI8 ou QUI8 ou TFLite quint8

tfl.pseudo_const (TFL::ConstOp)

Pseudo-op constant.

Représente une valeur constante dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon.

L'opération est autorisée à avoir le même type d'attributs que tf.Const (par exemple, les attributs TF opaques sont autorisés).

Traits : AlwaysSpeculatableImplTrait , ConstantLike , FirstAttrDerivedResultType , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.pseudo_qconst (TFL::QConstOp)

Pseudo-opération constante quantifiée

Représente une valeur constante quantifiée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon. Les paramètres de quantification sont stockés comme attribut de type dans cette constante.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface)

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur
value ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de type QUI8 ou type QI8 ou type QI16 ou type QUI16 ou valeurs de type TFLite quint8

tfl.pseudo_sparse_const (TFL :: SparseConstOp)

Pseudo-op constant et clairsemé.

Représente une valeur constante clairsemée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
value ::mlir::ElementsAttr attribut vecteur/tenseur constant
s_param ::mlir::TFL::SparsityParameterAttr Paramètre de parcimonie.
compressed_data ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.pseudo_sparse_qconst (TFL :: SparseQConstOp)

Pseudo-opération constante quantifiée clairsemée

Représente une valeur constante quantifiée clairsemée dans le dialecte TensorFlow Lite. Il ne s’agit pas d’une opération réelle et elle sera plutôt réduite à la mémoire tampon. Les paramètres de quantification sont stockés comme attribut de type dans cette constante.

Traits : AlwaysSpeculatableImplTrait , FirstAttrDerivedResultType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur
value ::mlir::ElementsAttr attribut vecteur/tenseur constant
s_param ::mlir::TFL::SparsityParameterAttr Paramètre de parcimonie.
compressed_data ::mlir::ElementsAttr attribut vecteur/tenseur constant

Résultats:

Résultat Description
output tenseur de type QUI8 ou type QI8 ou type QI16 ou type QUI16 ou valeurs de type TFLite quint8

tfl.quantize (TFL::QuantizeOp)

Opérateur de quantification

Convertit les tenseurs à virgule flottante en tenseurs entiers quantifiés selon les paramètres de quantification définis dans l'attribut type.

Traits : FirstAttrDerivedResultType , SameOperandsAndResultShape

Interfaces : NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
qtype ::mlir::TypeAttr Attribut de type tenseur

Opérandes :

Opérande Description
input Tensor de type flotteur 32 bits ou de type Qi4 ou de type Qi8 ou de type Qui8 ou de type Qi16 ou Tflite Quint8 Type

Résultats:

Résultat Description
output Tensor de type Qi4 ou de type Qi8 ou de type Qui8 ou de type Qi16 ou Tflite Quint8 Type

tfl.random_standard_normal (tfl :: randomstandardNormalop)

Sorte des valeurs aléatoires à partir d'une distribution normale.

Les valeurs générées auront la moyenne 0 et l'écart type 1.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs flottantes 32 bits

tfl.random_uniform (tfl :: randomuniform)

Sorte des valeurs aléatoires à partir d'une distribution uniforme.

Les valeurs générées suivent une distribution uniforme dans la plage [0, 1) . La limite inférieure 0 est incluse dans la plage, tandis que la limite supérieure 1 est exclue.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
seed ::mlir::IntegerAttr Attribut entier sans signe de 64 bits
seed2 ::mlir::IntegerAttr Attribut entier sans signe de 64 bits

Opérandes :

Opérande Description
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
out tenseur de valeurs flottantes 32 bits

tfl.range (Tfl :: Rangeop)

Opérateur de gamme

Renvoie un tenseur 1D défini par une séquence du start à limit avec un delta donné.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
start Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou de valeurs entières sans signe 64 bits
limit Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou de valeurs entières sans signe 64 bits
delta Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou de valeurs entières sans signe 64 bits

Résultats:

Résultat Description
result Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou de valeurs entières sans signe 64 bits

tfl.rank (Tfl :: Rankop)

Opérateur de classement.

Renvoie le rang de tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type entier

tfl.read_variable (tfl :: readvariableop)

Lit la valeur variable.

Lire les données variables identifiées par «Resource_ID».

Interfaces : TflRuntimeVerifyOpInterface

Opérandes :

Opérande Description
resource_id tenseur des valeurs des ressources

Résultats:

Résultat Description
result tenseur de 32 bits flottants ou 64 bits flottants ou entier sans signe 1 bit ou entier sans signe 8 bits ou entier sans signe 8 bits ou type QI8 ou type QUI8 ou entier sans signe 32 bits ou entier sans signe 64 bits ou type QI16 ou type complexe avec des éléments flottants de 32 bits ou type complexe avec des valeurs d'éléments flottants de 64 bits

tfl.real (tfl :: realop)

Renvoie la partie réelle d'un nombre complexe.

Compte tenu d'une input tenseur de nombres complexes, cette opération renvoie un tenseur de float de type qui est la partie réelle de chaque élément de input . Tous les éléments en input doivent être des nombres complexes de la forme \(a + bj\), où A est la partie réelle renvoyée par cette opération et B est la partie imaginaire.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de type complexe avec des éléments flottants de 32 bits ou de type complexe avec des valeurs d'éléments flottants de 64 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou 64 bits

tfl.reduce_all (tfl :: reduceallop)

Calcule le "logique et" des éléments à travers les dimensions d'un tenseur.

Réduit input le long des dimensions données dans axis . À moins que keep_dims ne soit vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans axis . Si keep_dims est vrai, les dimensions réduites sont conservées avec la longueur 1.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs entières sans signe de 1 bit
reduction_indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.reduce_any (tfl :: reduceanyop)

Calcule le "logique ou" des éléments à travers les dimensions d'un tenseur.

Réduit input le long des dimensions données dans axis . À moins que keep_dims ne soit vrai, le rang du tenseur est réduit de 1 pour chaque entrée dans axis . Si keep_dims est vrai, les dimensions réduites sont conservées avec la longueur 1.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs entières sans signe de 1 bit
reduction_indices tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 1 bit

tfl.reduce_max (tfl :: reduceMaxop)

Opérateur de réduction maximale

Calcule la réduction maximale le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.reduce_min (tfl :: reduceminop)

Opérateur de réduction min

Calcule la réduction min le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.reduce_prod (tfl :: réductionprodop)

Opérateur de réduction de la production

Calcule le produit le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.relu (tfl :: reluop)

Opérateur de relu

Opérateur de relu d'élément X -> Max (0, x)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x Tensor de type flotteur 32 bits ou de type QI8 de type ou de type qi16

Résultats:

Résultat Description
y Tensor de type flotteur 32 bits ou de type QI8 de type ou de type qi16

tfl.relu6 (tfl :: relu6op)

Opérateur RELU6

Opérateur de relu6 sur les éléments x -> max (0, min (6, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.relu_0_to_1 (tfl :: relu0to1op)

Opérateur RELU0TO1

Opérateur RELU0TO1 sur les éléments x -> Max (0, min (1, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.relu_n1_to_1 (tfl :: relu1op)

Opérateur RELU1

Opérateur Relu1 sur les éléments x -> max (-1, min (1, x))

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QUI8 32 bits ou de type QI8

tfl.reshape (Tfl :: Reshapeop)

Opérateur de remodelage

Produit un tenseur avec les mêmes valeurs mais une forme statique différente définie par le type de sortie.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces: ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de tout type de valeurs
shape tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.resize_bilinear (Tfl :: ResizeBilinearop)

Redimensibilinear op

Redimensionner images à size à l'aide d'une interpolation bilinéaire.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
align_corners ::mlir::BoolAttr attribut booléen
half_pixel_centers ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input Tensor de type flotteur 32 bits ou Tflite Quint8 Type ou Qui8 Type ou Qi8 Type ou Qi16 Type Valeurs
size tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output Tensor de type flotteur 32 bits ou Tflite Quint8 Type ou Qui8 Type ou Qi8 Type ou Qi16 Type Valeurs

tfl.resize_nearest_neighbor (tfl :: resizearistneighborop)

Resizenearestneighbor op

Redimensionner images à size en utilisant l'interpolation du voisin le plus proche.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
align_corners ::mlir::BoolAttr attribut booléen
half_pixel_centers ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input Tensor de type flotteur 32 bits ou Tflite Quint8 Type ou Qui8 Type ou Qi8 Type ou Qi16 Type Valeurs
size tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output Tensor de type flotteur 32 bits ou Tflite Quint8 Type ou Qui8 Type ou Qi8 Type ou Qi16 Type Valeurs

tfl.reverse_sequence (tfl :: reversesequenceop)

Inverse les tranches de longueur variable.

Cet OP frappe la première input le long de la dimension batch_dim , et pour chaque tranche i , inverse les premiers éléments seq_lengths[i] le long de la dimension seq_dim .

Les éléments de seq_lengths doivent obéir seq_lengths[i] <= input.dims[seq_dim] , et seq_lengths doit être un vecteur de longueur input.dims[batch_dim] .

La tranche de sortie i le long de la dimension batch_dim est ensuite donnée par la tranche d'entrée i , avec les premières tranches seq_lengths[i] le long de la dimension seq_dim inversée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
seq_dim ::mlir::IntegerAttr Attribut entier sans signe 32 bits dont la valeur n'est pas négative
batch_dim ::mlir::IntegerAttr Attribut entier sans signe 32 bits dont la valeur n'est pas négative

Opérandes :

Opérande Description
input Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou Type QI16 ou Type Qui8 ou Tflite Quint8 Type
seq_lengths tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou Type QI16 ou Type Qui8 ou Tflite Quint8 Type

tfl.reverse_v2 (tfl :: reversev2op)

Opérateur Reversev2

Inverse les dimensions spécifiques d'un tenseur.

Étant donné un tenseur, et un axe de tenseur Int32 / INT64 représentant l'ensemble des dimensions du tenseur à inverser. Cette opération inverse chaque dimension i pour laquelle il existe un axe st [j] == i.

Args: Tensor: un tenseur. Doit être l'un des types suivants: UInt8, int8, int16, int32, int64, float32, bool jusqu'à 8-d.

Axe: un tenseur. Doit être l'un des types suivants: INT32, INT64. avec seulement 1 élément qui est l'index de l'axe. TODO: Ajoutez une prise en charge de plusieurs éléments.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor d'un flotteur 32 bits ou d'un entier non signé 8 bits ou en entier sans signe sans signe 32 bits ou 32 bits entiers sans signe ou 64 bits de type ou de type QI16 ou de type QI8 de type ou de type Qi8 Quint8 ou 1 bits sans signe sans signe sans signe sans signe sans signe sans signe non signé 1 bits
axis tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output Tensor d'un flotteur 32 bits ou d'un entier non signé 8 bits ou en entier sans signe sans signe 32 bits ou 32 bits entiers sans signe ou 64 bits de type ou de type QI16 ou de type QI8 de type ou de type Qi8 Quint8 ou 1 bits sans signe sans signe sans signe sans signe sans signe sans signe non signé 1 bits

tfl.rfft2d (tfl :: rfft2dop)

Transformée de Fourier rapide à valeur réelle 2D.

Calcule la transformée de Fourier discrète en 2 dimensions d'un signal à valeur réelle sur les 2 dimensions de input les plus internes.

Étant donné que le DFT d'un véritable signal est l'hermitien symétrique, RFFT2D ne renvoie que les composants uniques fft_length / 2 + 1 de la FFT pour la dimension la plus interne de output : le terme zéro fréquence, suivi par le fft_length / 2 termes.

Le long de chaque axe, RFFT2D est calculé, si fft_length est plus petit que la dimension correspondante de input , la dimension est recadrée. S'il est plus grand, la dimension est rembourrée de zéros.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
fft_length tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de type complexe avec des valeurs d'éléments flottants 32 bits

tfl.right_shift (Tfl :: RightShiftop)

Opérateur de quart de droite

Elementwise calcule le décalage à droite de Bitwise de lhs par rhs .

TRAITS: AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits
rhs tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

Résultats:

Résultat Description
output tenseur d'entier sans signe de 8 bits ou d'entier non signé de 8 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 16 bits ou d'entier sans signe de 32 bits ou de valeurs entières non signées de 32 bits

tfl.round (Tfl :: Roundop)

Opérateur rond

Arrond les valeurs d'un tenseur à l'entier le plus proche, en termes d'élément.

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.rsqrt (tfl :: rsqrtop)

Réciproque de l'opérateur de racine carrée

Calcule la racine carrée inverse des éléments de l'entrée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

Résultats:

Résultat Description
y tenseur de valeurs de type float ou QI8 ou QI16 de 32 bits

tfl.scatter_nd (tfl :: Scatterndop)

_Scatter et opérateur

Diffuser updates dans un nouveau tenseur selon indices

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
indices tenseur de valeurs entières sans signe de 32 bits
updates Tensor d'un flotteur 32 bits ou d'un entier sans signe 8 bits ou d'un entier sans signe 64 bits ou entier non signé 32 bits ou en entier non signé 8 bits ou en entier sans signe 1 bits
shape Tenseur 1D de toute valeur de type

Résultats:

Résultat Description
output Tensor d'un flotteur 32 bits ou d'un entier sans signe 8 bits ou d'un entier sans signe 64 bits ou entier non signé 32 bits ou en entier non signé 8 bits ou en entier sans signe 1 bits

tfl.segment_sum (tfl :: segmentsumop)

Opérateur de segments

Calcule la somme le long des segments d'un tenseur.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.select (tfl :: SelectOp)

Sélectionner l'opérateur

Sélectionnez les valeurs de «x» si la valeur correspondante de «condition» est vraie ou la valeur de «y» si false. Il existe des tailles d'entrée de condition valide:

  1. Soit la même forme (auquel cas la sélection est élémentaire), soit
  2. L'état doit être le rang 1 et correspondre à la première dimension.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition tenseur de valeurs entières sans signe de 1 bit
x Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8
y Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8

Résultats:

Résultat Description
output Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.select_v2 (tfl :: selectv2op)

Opérateur SELECTV2

Sélectionnez les valeurs de «x» si la valeur correspondante de «condition» est vraie ou la valeur de «y» si false. Il existe des tailles d'entrée de condition valide:

  1. Soit la même forme (auquel cas la sélection est élémentaire), soit
  2. Formes diffusables entre «condition», «x» et «y».

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition tenseur de valeurs entières sans signe de 1 bit
x Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8
y Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8

Résultats:

Résultat Description
output Tensor d'un flotteur 32 bits ou d'un entier sans signe 1 bits ou d'un entier non signé à 8 bits ou d'un entier sans signe sans signe 16 bits ou d'un entier non signé 32 bits ou d'un type ou QI8 de type ou QI8 32 bits ou QI8 ou QI16 type ou valeurs de type TFLite quint8

tfl.shape (tfl :: shapeop)

Opérateur de forme

Renvoie la forme d'un tenseur.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
out_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de valeurs entières sans signe de 32 bits ou de valeurs entières sans signe de 64 bits

tfl.sign (tfl :: Signop)

Opération de signe

Renvoie nan si x est nan, 0 si x est 0, -1 si x <0 et 1 si x> 0.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultElementType , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de flotteur 32 bits ou de flotteur 64 bits ou de valeurs entières sans signe 32 bits

Résultats:

Résultat Description
output tenseur de flotteur 32 bits ou de flotteur 64 bits ou de valeurs entières sans signe 32 bits

tfl.sin (tfl :: sinop)

Opérateur sinusoïdal

Calcule le sinus élément de saisie

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.slice (tfl :: Sliceop)

Renvoyez une tranche de «entrée».

Le tenseur de sortie est un tenseur avec des dimensions décrites par la «taille» dont les valeurs sont extraites de «entrée» à partir des décalages dans «begin».

begin est basé sur zéro; size est une seule base. Si la taille [i] est -1, tous les éléments restants de dimension I sont inclus dans la tranche. En d'autres termes, cela équivaut à régler: size [i] = input.dim_size (i) - begin [i]

Exigences : 0 <= commencer [i] <= commencer [i] + taille [i] <= di pour i dans [0, n)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor de flotteur 32 bits ou entier signé 32 bits ou entier signé 64 bits ou entier non signé 8 bits ou entier non signé 8 bits ou entier de chaîne Tflite 32 bits TYPE QUI8 OU TFLITE TYPE QUINT8 OU TYPE QI16
begin tenseur de valeurs entières sans signe 32/64 bits
size tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou entier signé 32 bits ou entier signé 64 bits ou entier non signé 8 bits ou entier non signé 8 bits ou entier de chaîne Tflite 32 bits TYPE QUI8 OU TFLITE TYPE QUINT8 OU TYPE QI16

tfl.softmax (tfl :: softmaxop)

Opérateur softmax

Calcule les activations softmax élémentaires avec la formule suivante

exp (entrée) / tf.reduce_sum (exp (entrée * bêta), dim)

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
beta ::mlir::FloatAttr Attribut float 32 bits

Opérandes :

Opérande Description
input Tensor de type flotteur 32 bits ou de type Qi8 ou de type Qui8 ou de type Tflite Quint8 ou Type Qi16

Résultats:

Résultat Description
output Tensor de type flotteur 32 bits ou de type Qi8 ou de type Qui8 ou de type Tflite Quint8 ou Type Qi16

tfl.space_to_batch_nd (tfl :: SpaceToBatchNDOP)

Opérateur d'espacetobatchnd

Cette opération remodèle les dimensions de l'espace dans la dimension "lot" 0

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
block_shape tenseur de valeurs entières sans signe de 32 bits
paddings tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.space_to_depth (Tfl :: SpaceTodepthop)

Opérateur d'espacetodepth

Réorganise les blocs de données spatiales, en profondeur. Plus précisément, cet OP sort une copie du tenseur d'entrée où les valeurs de la height et des dimensions width sont déplacées vers la dimension depth . block_size indique la taille du bloc d'entrée.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
block_size ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
input Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type de type Qi8 ou Qui8 ou Tflite Quint8

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type de type Qi8 ou Qui8 ou Tflite Quint8

tfl.sparse_to_dense (tfl :: sparsetodensen)

Convertit une représentation clairsemée en tenseur dense.

Construit un tableau dense avec une forme de output_shape telle que

# 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]

Toutes les autres valeurs de dense sont définies sur default_value . Si sparse_values est un scalaire, tous les indices clairsemés sont définis sur cette valeur unique.

Les indices doivent être triés dans l'ordre lexicographique et les indices ne doivent contenir aucune répétition. Si validate_indices est vrai, ces propriétés sont vérifiées pendant l'exécution.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
sparse_indices tenseur de valeurs entières sans signe 32/64 bits
output_shape tenseur de valeurs entières sans signe 32/64 bits
sparse_values Tensor d'un entier sans signe 32 bits ou d'un entier sans signe 64 bits ou de type entier ou de type qi8 ou Qi8 ou 8 bits
default_value Tensor d'un entier sans signe 32 bits ou d'un entier sans signe 64 bits ou de type entier ou de type qi8 ou Qi8 ou 8 bits

Résultats:

Résultat Description
dense Tensor d'un entier sans signe 32 bits ou d'un entier sans signe 64 bits ou de type entier ou de type qi8 ou Qi8 ou 8 bits

tfl.split (Tfl :: Splitop)

Fruit un tenseur dans les tenseurs num_split le long d'une seule dimension.

Fruit le tenseur value le long split_dim en un certain nombre de sous-tenseurs avec la même forme que celui d'origine, à l'exception de split_dim . Identique à tf.split.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num_splits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
split_dim tenseur de valeurs entières sans signe de 32 bits
value Tensor de flotteur 32 bits ou entier sans signe 16 bits ou entier non signé 32 bits ou entier non signé 8 bits ou entier non signé 8 bits ou Type Qi8 ou type QI8 Type ou Qi16

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.split_v (Tfl :: SplitVop)

Fruit un tenseur dans les tenseurs num_split le long d'une seule dimension.

Fruit le tenseur value le long split_dim en un certain nombre de sous-tenseurs avec la même forme que celui d'origine, à l'exception de split_dim . Le regroupement des sous-tenseurs résultants est décidé par size-splits . Identique à tf.splitv.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num_splits ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive

Opérandes :

Opérande Description
value Tensor de flotteur 32 bits ou entier sans signe 16 bits ou entier non signé 32 bits ou entier non signé 64 bits ou entier non signé 8 bits ou valeurs de type Type ou Qi16 8 bits
size_splits Tensor 1D de valeurs entières sans signe 32 bits
split_dim Tensor 0d de valeurs entières sans signe 32 bits

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.sqrt (tfl :: sqrtop)

Opérateur de racine carrée

Calcule la racine carrée de l'entrée élémentaire

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.square (tfl :: carréop)

Opérateur carré

Calcule le carré d'entrée d'élément

Traits : AlwaysSpeculatableImplTrait , InferTensorType , TF::SameOperandsAndResultTypeResolveRef

Interfaces : ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
x tenseur de valeurs flottantes 32 bits

Résultats:

Résultat Description
y tenseur de valeurs flottantes 32 bits

tfl.squared_difference (tfl :: squaredDiFtifferenceOp)

Opérateur de différence au carré

Opération de différence carrée sur le plan des éléments.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
lhs Tensor de flotteur 32 bits ou de valeurs de type Sigless 32 bits ou de type Qi8
rhs Tensor de flotteur 32 bits ou de valeurs de type Sigless 32 bits ou de type Qi8

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou de valeurs de type Sigless 32 bits ou de type Qi8

tfl.squeeze (Tfl :: Squeepop)

Supprime les dimensions de la taille 1 de la forme d'un tenseur.

Compte tenu d'une input du tenseur, cette opération renvoie un tenseur du même type avec toutes les dimensions de taille 1 supprimé. Si vous ne souhaitez pas supprimer toutes les dimensions de la taille 1, vous pouvez supprimer des dimensions de taille 1 spécifique en spécifiant squeeze_dims .

Par exemple:

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

Ou, pour éliminer la taille spécifique 1 dimensions:

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

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
squeeze_dims ::mlir::ArrayAttr Attribut de tableau entier 64 bits dont la taille est au plus 8

Opérandes :

Opérande Description
input tenseur de tout type de valeurs

Résultats:

Résultat Description
output tenseur de tout type de valeurs

tfl.strided_slice (tfl :: stridedsliceop)

STRIDEDSLICE OP

Renvoyez une tranche frappée de input .

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
begin_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
end_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
ellipsis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
new_axis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
shrink_axis_mask ::mlir::IntegerAttr Attribut entier sans signe de 32 bits
offset ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier non signé 64 bits ou entier non signé 8 bits ou entier non signé 8 bits ou entier inédite ou signé 32 bits ou 16 -bit entier sans signe ou Type Qi16 ou Tflite Quint8 Type ou Tflite String Type Valeurs
begin tenseur de valeurs entières sans signe de 32 bits
end tenseur de valeurs entières sans signe de 32 bits
strides tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier non signé 64 bits ou entier non signé 8 bits ou entier non signé 8 bits ou entier inédite ou signé 32 bits ou 16 -bit entier sans signe ou Type Qi16 ou Tflite Quint8 Type ou Tflite String Type Valeurs

tfl.sub (tfl :: subop)

Opérateur de soustraction

Fonctionnement de soustraction par élément.

Traits : ::mlir::OpTrait::TFLRuntimeOpTrait , AlwaysSpeculatableImplTrait , QuantizableResult , ResultsBroadcastableShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
lhs Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type de type Qi8 ou de type QI16
rhs Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type de type Qi8 ou de type QI16

Résultats:

Résultat Description
output Tensor de flotteur 32 bits ou entier sans signe 32 bits ou entier sans signe 64 bits ou type de type Qi8 ou de type QI16

tfl.sum (tfl :: sumop)

Sommet de l'opérateur

Calcule la réduction de la somme le long des axes spécifiés

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
keep_dims ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16
axes tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entier sans signe de 32 bits ou d'entier sans signe de 64 bits ou de type QI8 ou de type QUI8 ou de type TFLite quint8 ou de valeurs de type QI16

tfl.svdf (tfl :: svdfop)

Opérateur de filtre à décomposition à valeur unique

Le SVDF OP est une décomposition d'un OP densément connecté dans des filtres à faible rang. Pour plus de détails: https://research.google.com/pubs/pub43813.html https://arxiv.org/abs/1812.02802

Traits: QuantizableResult , quant::AccumulatorUniformScale<3, 2, 4>

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
rank ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs de type float ou QI8 32 bits
feature_weights tenseur de valeurs de type float ou QI8 32 bits ou de type QUI8
time_weights tenseur de valeurs de type float ou QI16 32 bits
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
activation_state tenseur avec état

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits

tfl.tanh (tfl :: tanhop)

Opérateur tangent hyperbolique

Calcule la tangente hyperbolique des éléments d'entrée

Traits : AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , FixedOutputRangeInterface , NoMemoryEffect (MemoryEffectOpInterface) , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

Résultats:

Résultat Description
output tenseur de 32 bits float ou de type QI8 ou de type QUI8 ou de type QI16 ou de valeurs de type TFLite quint8

tfl.tile (tfl :: tileop)

Opérateur de carreaux.

Construit un tenseur en carrelant un tenseur donné.

Cette opération crée un nouveau tenseur en reproduisant les multiples de multiples multiples. La dimension I'th du tenseur de sortie a des éléments d'entrée.dims (i) * [i], et les valeurs d'entrée sont des multiples reproduits [i] fois le long de la dimension 'i'th. Par exemple, le carrelage [ABCD] par [2] produit [ABCDABCD].

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor d'un flotteur 32 bits ou d'un entier non signé 1 bits ou d'un entier non signé 32 bits ou d'un entier non signé 64 bits ou d'un entier non signé 8 bits ou de types de type Qi8 ou de type qui8 ou Tflite
multiples tenseur de valeurs entières sans signe 32/64 bits

Résultats:

Résultat Description
output Tensor d'un flotteur 32 bits ou d'un entier non signé 1 bits ou d'un entier non signé 32 bits ou d'un entier non signé 64 bits ou d'un entier non signé 8 bits ou de types de type Qi8 ou de type qui8 ou Tflite

tfl.topk_v2 (tfl :: topkv2op)

Opérateur de topk

Renvoie le k supérieur le plus grand élément le long de chaque dernière tranche d' input dimensionnelle et les indices des valeurs dans la dernière dimension du tenseur d'entrée.

Les résultats sont toujours triés dans l'ordre descendant.

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor d'un flotteur 32 bits ou d'un entier non signé à 8 bits ou en entier sans signaire 16 bits ou entier non signé 32 bits ou en entier non signé 64 bits ou en entier non signé 8 bits ou des valeurs de type Qi8 ou Qui8
k Tensor d'un entier sans signe 16 bits ou de valeurs entières sans signe 32 bits

Résultats:

Résultat Description
values Tensor d'un flotteur 32 bits ou d'un entier non signé à 8 bits ou en entier sans signaire 16 bits ou entier non signé 32 bits ou en entier non signé 64 bits ou en entier non signé 8 bits ou des valeurs de type Qi8 ou Qui8
indices Tensor d'un entier sans signe 16 bits ou de valeurs entières sans signe 32 bits

tfl.transpose (Tfl :: Transposeop)

Opérateur de transport

Renvoie la transposition de x

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou d'un entier non signé 8 bits ou d'un type entier non signé 8 bits ou de type Qi8 ou de type Qui8 ou Tflite Quint8 ou de valeurs de type 1 bits sans signe ou 64 bits entières sans signe ou QI16
perm tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output Tensor d'un entier sans signe 32 bits ou d'un flotteur 32 bits ou d'un entier non signé 8 bits ou d'un type entier non signé 8 bits ou de type Qi8 ou de type Qui8 ou Tflite Quint8 ou de valeurs de type 1 bits sans signe ou 64 bits entières sans signe ou QI16

tfl.transpose_conv (tfl :: transposeConvop)

Opérateur de convolution transféré

Effectue le fonctionnement de la convolution de transport sur l'entrée.

TRAITS: AlwaysSpeculatableImplTrait SPECULATableImpltrait, QuantizableResult , quant::AccumulatorUniformScale<3, 1, 2> , quant::AffineOpCoefficient<0, 1>

Interfaces : AffineQuantizedOpInterface , ConditionallySpeculatable , DynamicRangeQuantizedOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , TFL_SparseOp , TflArithmeticCountOpInterface , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
padding ::mlir::StringAttr attribut de chaîne dont la valeur est SAME ou VALID
stride_h ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
stride_w ::mlir::IntegerAttr Attribut entier sans signe de 32 bits dont la valeur est positive
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT

Opérandes :

Opérande Description
output_shape tenseur de valeurs entières sans signe de 32 bits
weights tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
input tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16
bias tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits ou de type QI8 ou de type QUI8 ou de type QI16

tfl.unidirectional_sequence_lstm (tfl :: UnidirectionalSencelStMop)

Opérateur LSTM de séquence unidirectionnelle

Un réseau neuronal récurrent spécifié par une cellule LSTM. Cet OP prend en charge le déroulement de l'entrée le long des dimensions de temps ou de lot, et implémente l'opération suivante pour chaque élément de la séquence S = 1 ... Sequence_length: Sorties [S] = State = Activation (LSTMOP (Entrées [S])))

Lorsque LSTMOP est LSTM TF Lite OP et «l'activation» est la fonction passé comme l'argument «Fused_Activation_Function» (sinon «Aucun»).

Traits : QuantizableResult

Interfaces: DynamicRangeQuantizedOpInterface , InferTypeOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
cell_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
proj_clip ::mlir::FloatAttr Attribut float 32 bits dont la valeur est non négative
time_major ::mlir::BoolAttr attribut booléen
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen
diagonal_recurrent_tensors ::mlir::BoolAttr attribut booléen
input_to_input_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_forget_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_cell_intermediate ::mlir::TypeAttr n'importe quel attribut de type
input_to_output_intermediate ::mlir::TypeAttr n'importe quel attribut de type
effective_hidden_scale_intermediate ::mlir::TypeAttr n'importe quel attribut de type

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
input_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
input_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
input_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
recurrent_to_forget_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_cell_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_output_weights tenseur de valeurs de type float ou QI8 32 bits
cell_to_input_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_forget_weights tenseur de n'importe quel type de valeurs ou aucun type
cell_to_output_weights tenseur de n'importe quel type de valeurs ou aucun type
input_gate_bias tenseur de n'importe quel type de valeurs ou aucun type
forget_gate_bias tenseur de valeurs flottantes 32 bits
cell_bias tenseur de valeurs flottantes 32 bits
output_gate_bias tenseur de valeurs flottantes 32 bits
projection_weights tenseur de n'importe quel type de valeurs ou aucun type
projection_bias tenseur de n'importe quel type de valeurs ou aucun type
input_activation_state tenseur avec état
input_cell_state tenseur avec état
input_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
forget_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
cell_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type
output_layer_norm_coefficients tenseur de n'importe quel type de valeurs ou aucun type

Résultats:

Résultat Description
output tenseur de valeurs de type float ou QI8 32 bits

tfl.unidirectional_sequence_rnn (tfl :: UnidirectionalSequencennop)

Opérateur RNN de séquence unidirectionnelle

Un réseau neuronal récurrent spécifié par une cellule RNN. Cet OP prend l'entrée dans un format {batch_size, seq_len, input_size} ou {seq_len, batch_size, input_size} si elle est majorée dans le temps.

Il implémente l'opération suivante pour chaque élément de la séquence s = 1 ... Sequence_Length: Sorties [S] = State = Activation (RNNOP (entrées [S]))

où rnnop est rnnop tf lite op et «l'activation» est la fonction transmise comme l'argument «fusiond_activation_function» (sinon «aucun»).

Traits : QuantizableResult

Interfaces : DynamicRangeQuantizedOpInterface , TFL_StatefulOp , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
time_major ::mlir::BoolAttr attribut booléen
fused_activation_function ::mlir::StringAttr attribut de chaîne dont la valeur est NONE, ou RELU, ou RELU_N1_TO_1, ou RELU6, ou TANH, ou SIGN_BIT
asymmetric_quantize_inputs ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input tenseur de valeurs flottantes 32 bits
input_to_input_weights tenseur de valeurs de type float ou QI8 32 bits
recurrent_to_input_weights tenseur de valeurs de type float ou QI8 32 bits
input_gate_bias tenseur de valeurs flottantes 32 bits
hidden_state tenseur avec état

Résultats:

Résultat Description
output tenseur de valeurs flottantes 32 bits

tfl.unique (Tfl :: UNIQUEOP)

OP unique.

Cette opération renvoie une output tensor contenant tous les éléments uniques d' input triés dans le même ordre qu'ils se produisent en input . Cette opération renvoie également un tenseur idx de la même taille que x qui contient l'index de chaque valeur d' input dans la output de sortie unique. Autrement dit:

Traits : AlwaysSpeculatableImplTrait , QuantizableResult

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
idx_out_type ::mlir::Attribut attribut dérivé

Opérandes :

Opérande Description
input Tensor d'un type entier sans signe ou d'un type Qi8 ou d'un type entier non signé 8 bits ou de type Qui8 ou de type entier / Qi16 sans signe 16 bits ou de valeurs entières sans signe 32 bits ou 64 bits sans signe ou 32 bits 32 bits

Résultats:

Résultat Description
output Tensor d'un type entier sans signe ou d'un type Qi8 ou d'un type entier non signé 8 bits ou de type Qui8 ou de type entier / Qi16 sans signe 16 bits ou de valeurs entières sans signe 32 bits ou 64 bits sans signe ou 32 bits 32 bits
idx tenseur de valeurs entières sans signe 32/64 bits

tfl.unpack (tfl :: débackop)

Déballage un tenseur le long d'une dimension dans plusieurs tenseurs

Déborque une dimension donnée d'un tenseur R dans les tenseurs de num (R-1) .

Déballage les tenseurs num de value en le réchauffant le long de la dimension axis . Par exemple, étant donné un tenseur de forme (A, B, C, D) ;

Si axis == 0 alors le tenseur I'th en output est la value[i, :, :, :] et chaque tenseur de output aura une forme (B, C, D) . (Notez que la dimension déballée le long du long a disparu, contrairement à split ).

Si axis == 1 alors le tenseur I'th en output est la value[:, i, :, :] et chaque tenseur de output aura une forme (A, C, D) . Etc.

C'est l'opposé de pack .

TRAITS: AlwaysSpeculatableImplTrait , QuantizableResult , SameOperandsAndResultElementType

Interfaces: ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface) , SameOperandsAndResultsScale , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Attributs :

Attribut Type MLIR Description
num ::mlir::IntegerAttr Attribut entier sans signe 32 bits dont la valeur n'est pas négative
axis ::mlir::IntegerAttr Attribut entier sans signe de 32 bits

Opérandes :

Opérande Description
input Tensor d'un flotteur 32 bits ou d'un entier non signé 1 bits ou d'un entier non signé 8 bits ou entier non signé 8 bits ou en entier sans signe 32 bits ou des valeurs de type Qi8 ou Qui8 ou 16 bits entiers sans signe ou Qi16

Résultats:

Résultat Description
outputs variadique de valeurs de tenseur de tout type

tfl.unsorted_segment_max (tfl :: unsedsegmentmaxop)

Opérateur UNSORTEDSEGLINGMAX

Calcule la valeur maximale le long des segments d'un tenseur tel que la sortie [i] = max (données [j ... Sorte la plus petite valeur possible pour le type numérique spécifique, sortie [i] = Numeric_limits :: plus bas (). Remarque Les valeurs de segment_ids sont toujours validées comme inférieures à Num_Segments et une erreur est lancée pour les indices hors limites.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_min (tfl :: unsedsegmentmingminop)

Opérateur UNSORDEDSEGLINGMIN

Calcule la valeur minimale le long des segments d'un tenseur tel que la sortie [i] = min (data [j ... Sorte la plus grande valeur possible pour le type numérique spécifique, sortie [i] = Numeric_limits :: max (). Remarque Les valeurs de segment_ids sont toujours validées comme inférieures à Num_Segments et une erreur est lancée pour les indices hors limites.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_prod (tfl :: unsedsegmentprodop)

Opérateur UNSORTEDSEGLINGPROD

Calcule le produit le long des segments d'un tenseur.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.unsorted_segment_sum (tfl :: unsedsegmentsumop)

Opérateur de saccadés

À partir d'une segmentation du tenseur, calcule la output résultant de la résumé des éléments ensemble mappés au même segment_id. IE output[i] est égal à la somme du tenseur de tous les éléments du tenseur d'entrée mappé à segment_id i . Si aucun tenseur n'est mappé à un segment inclus particulier, la sortie à cet indice sera un tenseur nul avec la forme appropriée. Remarque Les valeurs de segment_ids sont toujours validées comme inférieures à Num_Segments et une erreur est lancée pour les indices hors limites

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits
segment_ids tenseur de valeurs entières sans signe de 32 bits
num_segments tenseur de valeurs entières sans signe de 32 bits

Résultats:

Résultat Description
output tenseur de valeurs flottantes de 32 bits ou d'entiers sans signe de 32 bits

tfl.var_handle (tfl :: varhandleop)

Renvoie une poignée à une ressource variable à partir de son nom.

Renvoie une poignée pour une ressource variable à partir de son nom. conteneur: le conteneur de cette variable est placée. Shared_name: le nom par lequel cette variable est mentionnée.

Interfaces : TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
container ::mlir::StringAttr attribut de chaîne
shared_name ::mlir::StringAttr attribut de chaîne

Résultats:

Résultat Description
resource_handle tenseur des valeurs des ressources

tfl.where (tfl :: wheop)

Renvoie les emplacements des valeurs non nulles / vraies dans un tenseur.

Cette opération renvoie les coordonnées des vrais éléments en condition . Les coordonnées sont renvoyées dans un tenseur 2D où la première dimension (lignes) représente le nombre d'éléments réels, et la deuxième dimension (colonnes) représente les coordonnées des éléments vrais. Gardez à l'esprit que la forme du tenseur de sortie peut varier en fonction du nombre de vraies valeurs il y a en condition . Les indices sont sorties dans l'ordre des lignes de ligne.

Traits : AlwaysSpeculatableImplTrait

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
condition Tensor d'un entier sans signe 1 bits ou de flotteur 32 bits ou entier signé 32/64 bits ou entier non signé à 8 bits ou entier non signé 8 bits ou en entier non signé 32 bits

Résultats:

Résultat Description
index tenseur de valeurs entières sans signe de 64 bits

tfl.while (tfl :: whilep)

Pendant la boucle

sortie = entrée; while (cond (output)) {output = body (output)}

Tandis que la boucle où toutes les valeurs passent par des arguments avec une capture implicite.

Entrée: une liste des tenseurs d'entrée dont les types sont T. Sortie: une liste des tenseurs de sortie dont les types sont T. cond: une région qui prend «entrée» et renvoie un tenseur scalaire booléen. Corps: une région qui prend une liste de tenseurs et renvoie une autre liste de tenseurs. Les deux listes ont les mêmes types.

Caractéristiques : SingleBlockImplicitTerminator<YieldOp> , SingleBlock

Interfaces: LoopLikeOpInterface , TflRuntimeVerifyOpInterface

Attributs :

Attribut Type MLIR Description
is_stateless ::mlir::BoolAttr attribut booléen

Opérandes :

Opérande Description
input variadique de valeurs de tenseur de tout type

Résultats:

Résultat Description
output variadique de valeurs de tenseur de tout type

tfl.yield (tfl :: rendedop)

Opération de rendement

L'opération "rendement" représente une opération de retour dans le cadre de l'écoulement de contrôle conditionnel et du corps structuré (par exemple, WHOT), et un terminateur pour la norme de contrôle. L'opération prend un nombre variable d'opérands et ne produit aucun résultat. Le numéro d'opérande et les types doivent correspondre à la signature de la région qui contient l'opération.

TRAITS: AlwaysSpeculatableImplTrait , QuantizableResult , Terminator

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
"anonyme" variadique de tout type

tfl.zeros_like (tfl :: zeroslikeop)

Opérateur de type zéros

Renvoie un tenseur de zéros avec la même forme et le même type que le tenseur d'entrée.

Traits : AlwaysSpeculatableImplTrait , SameOperandsAndResultShape

Interfaces : ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface) , TflRuntimeVerifyOpInterface

Effets : MemoryEffects::Effect{}

Opérandes :

Opérande Description
input Tensor d'un entier sans signe 64 bits ou de valeurs flottantes sans signe 32 bits ou 32 bits

Résultats:

Résultat Description
output Tensor d'un entier sans signe 64 bits ou de valeurs flottantes sans signe 32 bits ou 32 bits

Attributs

DimensionMetadataattr

Métadonnées de dimension.

Syntaxe:

#tfl.dimension_metadata<
  ::mlir::TFL::DimensionTypeAttr,   # format
  int32_t,   # dense_size
  ::llvm::ArrayRef<int32_t>,   # segments
  ::llvm::ArrayRef<int32_t>   # indices
>

Paramètres :

Paramètre Type C ++ Description
format ::mlir::TFL::DimensionTypeAttr dimension_type
dense_size int32_t
segments ::llvm::ArrayRef<int32_t>
indices ::llvm::ArrayRef<int32_t>

SparsityParameterattr

Paramètre de rareté.

Syntaxe:

#tfl.sparsity_parameter<
  ::llvm::ArrayRef<int32_t>,   # traversal_order
  ::llvm::ArrayRef<int32_t>,   # block_map
  ::llvm::ArrayRef<DimensionMetadataAttr>   # dim_metadata
>

Paramètres :

Paramètre Type C ++ Description
Traversal_Order ::llvm::ArrayRef<int32_t>
block_map ::llvm::ArrayRef<int32_t>
dim_metadata ::llvm::ArrayRef<DimensionMetadataAttr>

Constbytesattr

Une représentation d'attribut de chaîne des octets compilés

Exemples de syntaxe:

#tfl<const_bytes : "0xDEADBEEF">

Paramètres :

Paramètre Type C ++ Description
valeur ::llvm::StringRef

DimensionTypeattr

dimension_type

Syntaxe:

#tfl.dimension_type_attr<
  ::mlir::TFL::DimensionType   # value
>

Cas en énumération:

  • Dense ( DENSE )
  • SPARSE_CSR ( SPARSE_CSR )

Paramètres :

Paramètre Type C ++ Description
valeur ::mlir::TFL::DimensionType une enum de type dimensionType

LstmkernelTypeattr

lstm_kernel_type

Syntaxe:

#tfl.lstm_kernel_type_attr<
  ::mlir::TFL::LSTMKernelType   # value
>

Cas en énumération:

  • Plein ( FULL )
  • Basique ( BASIC )

Paramètres :

Paramètre Type C ++ Description
valeur ::mlir::TFL::LSTMKernelType une enain de type lstmkerneltype

Mirrorpaddingypeattr

miroir_pad_enum

Syntaxe:

#tfl.mirror_pad_attr<
  ::mlir::TFL::MirrorPaddingType   # value
>

Cas en énumération:

  • Réfléchir ( REFLECT )
  • Symétrique ( SYMMETRIC )

Paramètres :

Paramètre Type C ++ Description
valeur ::mlir::TFL::MirrorPaddingType une enum de type mirrorpaddingype

Énumération

Dimension

dimension_type

Cas:

Symbole Valeur Chaîne
DENSE 0 DENSE
SPARSE_CSR 1 SPARSE_CSR

LSTMKERNELTYPE

lstm_kernel_type

Cas:

Symbole Valeur Chaîne
COMPLET 0 COMPLET
BASIQUE 1 BASIQUE

MirrorpaddingType

miroir_pad_enum

Cas:

Symbole Valeur Chaîne
REFLÉTER 0 REFLÉTER
SYMÉTRIQUE 1 SYMÉTRIQUE