Effectuez l'ajout quantifié du Tensor quantifié « lhs » et du Tensor quantifié « rhs » pour obtenir une « sortie » quantifiée.
Étant donné « lhs » quantifié et « rhs » quantifiés, effectue un ajout quantifié sur « lhs » et « rhs » pour obtenir une « sortie » quantifiée.
`UniformQuantizedAdd` suit les règles de diffusion Numpy. Les deux formes de tableau d'entrée sont comparées élément par élément. En commençant par les dimensions finales, les deux dimensions doivent être égales ou l'une d'elles doit être égale à 1.
`lhs` et `rhs` doivent être quantifiés Tensor, où la valeur des données est quantifiée à l'aide de la formule :
quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
La « sortie » est également quantifiée, en utilisant la même formule.Si « lhs » et « output » sont tous deux quantifiés par axe, l'axe de quantification doit correspondre. De plus, si « rhs » et « output » sont tous deux quantifiés par axe, l'axe de quantification doit correspondre. Match signifie que l'axe doit correspondre lors de l'ajout, en ce qui concerne la diffusion. c'est-à-dire pour les deux opérandes `lhs` et `rhs`, si `operand.quantization_axis` >= 0 et `output.quantization_axis` >= 0, `operand.dims` - `operand.quantization_axis` doit être égal à `output.dims ` - `output.quantization_axis`.
Classes imbriquées
classe | UniformQuantizedAdd.Options | Attributs facultatifs pour UniformQuantizedAdd |
Méthodes publiques
Sortie <T> | comme Sortie () Renvoie le handle symbolique d'un tenseur. |
statique <T> UniformQuantizedAdd <T> | créer ( Scope scope, Opérande <T> lhs, Opérande <T> rhs, Opérande <Float> lhsScales, Opérande <Integer> lhsZeroPoints, Opérande <Float> rhsScales, Opérande <Integer> rhsZeroPoints, Opérande <Float> outputScales, Opérande <Integer > outputZeroPoints, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long outputQuantizationMinVal, Long outputQuantizationMaxVal, Options... options) Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedAdd. |
statique UniformQuantizedAdd.Options | lhsQuantizationAxis (Long lhsQuantizationAxis) |
Sortie <T> | sortir () Le tenseur quantifié de sortie. |
statique UniformQuantizedAdd.Options | outputQuantizationAxis (sortieQuantizationAxis longue) |
statique UniformQuantizedAdd.Options | rhsQuantizationAxis (rhsQuantizationAxis long) |
Méthodes héritées
Méthodes publiques
sortie publique <T> asOutput ()
Renvoie le handle symbolique d'un tenseur.
Les entrées des opérations TensorFlow sont les sorties d'une autre opération TensorFlow. Cette méthode est utilisée pour obtenir un handle symbolique qui représente le calcul de l’entrée.
public static UniformQuantizedAdd <T> créer ( Scope scope, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Operand <Float > OutputScales, Opérande <Integer> OutputZeroPoints, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Long OutputQuantizationMinVal, Long OutputQuantizationMaxVal, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedAdd.
Paramètres
portée | portée actuelle |
---|---|
lhs | Doit être un tenseur quantifié. |
rhs | Doit être un tenseur quantifié. |
lhsÉchelles | La ou les valeurs flottantes utilisées comme facteurs d'échelle lors de la quantification des données originales représentées par « lhs ». |
lhsZéroPoints | La ou les valeurs int32 utilisées comme points zéro lors de la quantification des données originales représentées par « lhs ». Doit avoir la même forme avec `lhs_scales`. |
échelles rhs | La ou les valeurs flottantes utilisées comme facteurs d'échelle lors de la quantification des données d'origine représentées par « rhs ». |
rhsZéroPoints | La ou les valeurs int32 utilisées comme points zéro lors de la quantification des données originales représentées par « rhs ». Doit avoir la même forme que `rhs_scales`. |
échelles de sortie | La ou les valeurs flottantes à utiliser comme facteurs d'échelle lors de la quantification des données originales représentées par « sortie ». |
sortieZéroPoints | La ou les valeurs int32 utilisées comme points zéro lors de la quantification des données originales représentées par la sortie. Doit avoir la même forme avec `output_scales`. |
lhsQuantizationMinVal | La valeur minimale des données quantifiées stockées dans `lhs`. Par exemple, si « Tin » est « qint8 », cela doit être réglé sur -127 si la plage étroite est quantifiée ou sur -128 sinon. |
lhsQuantizationMaxVal | La valeur maximale des données quantifiées stockées dans `lhs`. Par exemple, si « Tin » est « qint8 », cela doit être défini sur 127. |
rhsQuantizationMinVal | La valeur minimale des données quantifiées stockées dans « rhs ». Par exemple, si « Tin » est « qint8 », cela doit être réglé sur -127 si la plage étroite est quantifiée ou sur -128 sinon. |
rhsQuantizationMaxVal | La valeur maximale des données quantifiées stockées dans `rhs`. Par exemple, si « Tin » est « qint8 », cela doit être défini sur 127. |
sortieQuantizationMinVal | La valeur minimale des données quantifiées stockées dans « sortie ». Par exemple, si « Tout » est « qint8 », cela doit être réglé sur -127 si la plage étroite est quantifiée ou sur -128 sinon. |
sortieQuantizationMaxVal | La valeur maximale des données quantifiées stockées dans « sortie ». Par exemple, si « Tout » est « qint8 », cela doit être défini sur 127. |
choix | porte des valeurs d'attributs facultatifs |
Retours
- une nouvelle instance de UniformQuantizedAdd
public statique UniformQuantizedAdd.Options lhsQuantizationAxis (Long lhsQuantizationAxis)
Paramètres
lhsQuantizationAxis | Indique l'indice de dimension du tenseur où la quantification par axe est appliquée pour les tranches le long de cette dimension. S'il est défini sur -1 (par défaut), cela indique une quantification par tenseur. Pour le « lhs », seule la quantification par tenseur est prise en charge. Il doit donc être réglé sur -1. D'autres valeurs généreront une erreur lors de la construction d'OpKernel. |
---|
public statique UniformQuantizedAdd.Options outputQuantizationAxis (Long outputQuantizationAxis)
Paramètres
sortieQuantizationAxis | Indique l'indice de dimension du tenseur où la quantification par axe est appliquée pour les tranches le long de cette dimension. S'il est défini sur -1 (par défaut), cela indique une quantification par tenseur. Pour la « sortie », seule la quantification par tenseur ou par canal le long de « output_feature_dimension » est prise en charge. Ainsi, cela doit être défini sur -1 ou `dimension_numbers.output_feature_dimension`. D'autres valeurs généreront une erreur lors de la construction d'OpKernel. |
---|
public statique UniformQuantizedAdd.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
Paramètres
rhsQuantizationAxis | Indique l'indice de dimension du tenseur où la quantification par axe est appliquée pour les tranches le long de cette dimension. S'il est défini sur -1 (par défaut), cela indique une quantification par tenseur. Pour le `rhs`, seule la quantification par tenseur ou par canal le long de `kernel_output_feature_dimension` est prise en charge. Ainsi, cela doit être défini sur -1 ou `dimension_numbers.kernel_output_feature_dimension`. D'autres valeurs généreront une erreur lors de la construction d'OpKernel. |
---|