UniformQuantizedConvolutionHybrid

classe finale publique UniformQuantizedConvolutionHybrid

Effectuez une convolution quantifiée hybride du Tensor flottant « lhs » et du Tenseur quantifié « rhs ».

Étant donné le float `lhs` et le `rhs` quantifié, effectue en interne une quantification sur `lhs`, puis effectue une convolution quantifiée sur `lhs` et `rhs` quantifiés.

La quantification interne sur `lhs` est une quantification à `Trhs`, plage dynamique, par lot (par axe le long de l'axe `dimension_numbers.input_batch_dimension`), asymétrique et non étroite (la plage est [Trhs_MIN, Trhs_MAX]) .

`lhs` et `rhs` doivent être des tenseurs du même rang et répondre aux conditions de forme suivantes. - lhs_feature % feature_group_count == 0 - lhs_feature % rhs_input_feature == 0 - lhs_feature / feature_group_count == rhs_input_feature - rhs_output_feature % feature_group_count == 0 - lhs_batch % batch_group_count == 0 - rhs_output_feature % batch_group_count == 0

`rhs` doit être quantifié Tensor, où sa valeur de données est quantifiée à l'aide de la formule : quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val).

Classes imbriquées

classe UniformQuantizedConvolutionHybrid.Options Attributs facultatifs pour UniformQuantizedConvolutionHybrid

Méthodes publiques

Sortie <V>
comme Sortie ()
Renvoie le handle symbolique d'un tenseur.
statique UniformQuantizedConvolutionHybrid.Options
batchGroupCount (Long batchGroupCount)
static <V étend le nombre, T étend le nombre, U> UniformQuantizedConvolutionHybrid <V>
créer ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedConvolutionHybrid.
statique UniformQuantizedConvolutionHybrid.Options
dimensionNumbers (chaîne dimensionNumbers)
statique UniformQuantizedConvolutionHybrid.Options
explicitPadding (List<Long> explicitPadding)
statique UniformQuantizedConvolutionHybrid.Options
featureGroupCount (Long featureGroupCount)
statique UniformQuantizedConvolutionHybrid.Options
lhsDilation (Liste<Long> lhsDilation)
Sortie <V>
sortir ()
Le Tenseur de sortie de `Tout`, même rang que `lhs` et `rhs`.
statique UniformQuantizedConvolutionHybrid.Options
rhsDilation (Liste<Long> rhsDilation)
statique UniformQuantizedConvolutionHybrid.Options
rhsQuantizationAxis (rhsQuantizationAxis long)
statique UniformQuantizedConvolutionHybrid.Options
windowStrides (Liste<Long> windowStrides)

Méthodes héritées

Méthodes publiques

sortie publique <V> 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 statique UniformQuantizedConvolutionHybrid.Options batchGroupCount (Long batchGroupCount)

Paramètres
batchGroupCount Le nombre de groupes de lots. Utilisé pour les filtres groupés. Doit être un diviseur de output_feature.

public static UniformQuantizedConvolutionHybrid <V> créer ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Options... options)

Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedConvolutionHybrid.

Paramètres
portée portée actuelle
lhs Doit être un Tensor non quantifié de `Tlhs`, rang >= 3.
rhs Doit être un Tensor quantifié de « Trhs », du même rang que « lhs ».
é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 ». Doit être un Tensor scalaire pour la quantification par tenseur, ou un Tensor 1D de taille `rhs.dim_size(kernel_output_feature_dimension)`, pour la quantification par canal.
rhsZéroPoints La ou les valeurs int32 utilisées comme point zéro lors de la quantification des données originales représentées par « rhs ». Même condition de forme que `rhs_scales`.
Tout Le type de Tensor de sortie.
rembourrage chaîne de : `"SAME"`, `"VALID"` ou `"EXPLICIT"`, indiquant le type d'algorithme de remplissage à utiliser.
rhsQuantizationMinVal La valeur minimale des données quantifiées stockées dans « rhs ». Par exemple, si « Trhs » est qint8, celui-ci doit être réglé sur -127 si quantifié à plage étroite ou -128 sinon.
rhsQuantizationMaxVal La valeur maximale des données quantifiées stockées dans `rhs`. Par exemple, si « Trhs » est qint8, celui-ci doit être défini sur 127.
choix porte des valeurs d'attributs facultatifs
Retour
  • une nouvelle instance de UniformQuantizedConvolutionHybrid

public static UniformQuantizedConvolutionHybrid.Options dimensionNumbers (String dimensionNumbers)

Paramètres
DimensionsNuméros Structure des informations de dimension pour l'opération de convolution. Doit être une chaîne vide (par défaut) ou une chaîne sérialisée du proto tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr. Si chaîne vide, la valeur par défaut est `("NCHW", "OIHW", "NCHW")` (pour une convolution 2D).

public static UniformQuantizedConvolutionHybrid.Options explicitPadding (List<Long> explicitPadding)

Paramètres
remplissage explicite Si `padding` Attr est `"EXPLICIT"`, doit être défini sous forme de liste indiquant les remplissages explicites au début et à la fin de chaque dimension spatiale gauche. Sinon, cet Attr doit être vide.

(Si utilisé,) Doit être une liste de taille 2 * (nombre de dimensions spatiales gauche), où (explicit_padding[2 * i], explicit_padding[2 * i + 1]) indique spatial_dimensions[i] (start_padding, end_padding).

public statique UniformQuantizedConvolutionHybrid.Options featureGroupCount (Long featureGroupCount)

Paramètres
featureGroupCount Le nombre de groupes de fonctionnalités. Utilisé pour les circonvolutions groupées. Doit être un diviseur à la fois de lhs_feature et de output_feature.

public static UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)

Paramètres
lhsDilatation Le facteur de dilatation à appliquer dans chaque dimension spatiale de « lhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales gauche). Si liste vide, la dilatation pour chaque dimension spatiale gauche est fixée à 1.

sortie publique <V> sortie ()

Le Tenseur de sortie de `Tout`, même rang que `lhs` et `rhs`. Les données de sortie sont les données de sortie non quantifiées.

public static UniformQuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)

Paramètres
rhsDilatation Le facteur de dilatation à appliquer dans chaque dimension spatiale de « rhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales droites). Si liste vide, la dilatation pour chaque dimension spatiale droite est fixée à 1.

public statique UniformQuantizedConvolutionHybrid.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, cet attribut 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.

public static UniformQuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)

Paramètres
fenêtreStrides La foulée de la fenêtre glissante pour chaque dimension spatiale de « lhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales). Si une liste vide est fournie, la foulée pour chaque dimension spatiale est définie sur 1.
,
classe finale publique UniformQuantizedConvolutionHybrid

Effectuez une convolution quantifiée hybride du Tensor flottant « lhs » et du Tenseur quantifié « rhs ».

Étant donné le float `lhs` et le `rhs` quantifié, effectue en interne une quantification sur `lhs`, puis effectue une convolution quantifiée sur `lhs` et `rhs` quantifiés.

La quantification interne sur `lhs` est une quantification à `Trhs`, plage dynamique, par lot (par axe le long de l'axe `dimension_numbers.input_batch_dimension`), asymétrique et non étroite (la plage est [Trhs_MIN, Trhs_MAX]) .

`lhs` et `rhs` doivent être des tenseurs du même rang et répondre aux conditions de forme suivantes. - lhs_feature % feature_group_count == 0 - lhs_feature % rhs_input_feature == 0 - lhs_feature / feature_group_count == rhs_input_feature - rhs_output_feature % feature_group_count == 0 - lhs_batch % batch_group_count == 0 - rhs_output_feature % batch_group_count == 0

`rhs` doit être quantifié Tensor, où sa valeur de données est quantifiée à l'aide de la formule : quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val).

Classes imbriquées

classe UniformQuantizedConvolutionHybrid.Options Attributs facultatifs pour UniformQuantizedConvolutionHybrid

Méthodes publiques

Sortie <V>
comme Sortie ()
Renvoie le handle symbolique d'un tenseur.
statique UniformQuantizedConvolutionHybrid.Options
batchGroupCount (Long batchGroupCount)
static <V étend le nombre, T étend le nombre, U> UniformQuantizedConvolutionHybrid <V>
créer ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedConvolutionHybrid.
statique UniformQuantizedConvolutionHybrid.Options
dimensionNumbers (chaîne dimensionNumbers)
statique UniformQuantizedConvolutionHybrid.Options
explicitPadding (List<Long> explicitPadding)
statique UniformQuantizedConvolutionHybrid.Options
featureGroupCount (Long featureGroupCount)
statique UniformQuantizedConvolutionHybrid.Options
lhsDilation (Liste<Long> lhsDilation)
Sortie <V>
sortir ()
Le Tenseur de sortie de `Tout`, même rang que `lhs` et `rhs`.
statique UniformQuantizedConvolutionHybrid.Options
rhsDilation (Liste<Long> rhsDilation)
statique UniformQuantizedConvolutionHybrid.Options
rhsQuantizationAxis (rhsQuantizationAxis long)
statique UniformQuantizedConvolutionHybrid.Options
windowStrides (Liste<Long> windowStrides)

Méthodes héritées

Méthodes publiques

sortie publique <V> 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 statique UniformQuantizedConvolutionHybrid.Options batchGroupCount (Long batchGroupCount)

Paramètres
batchGroupCount Le nombre de groupes de lots. Utilisé pour les filtres groupés. Doit être un diviseur de output_feature.

public static UniformQuantizedConvolutionHybrid <V> créer ( Scope scope, Operand <T> lhs, Operand <U> rhs, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Class<V> Tout, String padding, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Options... options)

Méthode d'usine pour créer une classe encapsulant une nouvelle opération UniformQuantizedConvolutionHybrid.

Paramètres
portée portée actuelle
lhs Doit être un Tensor non quantifié de `Tlhs`, rang >= 3.
rhs Doit être un Tensor quantifié de « Trhs », du même rang que « lhs ».
é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 ». Doit être un Tensor scalaire pour la quantification par tenseur, ou un Tensor 1D de taille `rhs.dim_size(kernel_output_feature_dimension)`, pour la quantification par canal.
rhsZéroPoints La ou les valeurs int32 utilisées comme point zéro lors de la quantification des données originales représentées par « rhs ». Même condition de forme que `rhs_scales`.
Tout Le type de Tensor de sortie.
rembourrage chaîne de : `"SAME"`, `"VALID"` ou `"EXPLICIT"`, indiquant le type d'algorithme de remplissage à utiliser.
rhsQuantizationMinVal La valeur minimale des données quantifiées stockées dans « rhs ». Par exemple, si « Trhs » est qint8, celui-ci doit être réglé sur -127 si quantifié à plage étroite ou -128 sinon.
rhsQuantizationMaxVal La valeur maximale des données quantifiées stockées dans `rhs`. Par exemple, si « Trhs » est qint8, celui-ci doit être défini sur 127.
choix porte des valeurs d'attributs facultatifs
Retour
  • une nouvelle instance de UniformQuantizedConvolutionHybrid

public static UniformQuantizedConvolutionHybrid.Options dimensionNumbers (String dimensionNumbers)

Paramètres
DimensionsNuméros Structure des informations de dimension pour l'opération de convolution. Doit être une chaîne vide (par défaut) ou une chaîne sérialisée du proto tensorflow.UniformQuantizedConvolutionDimensionNumbersAttr. Si chaîne vide, la valeur par défaut est `("NCHW", "OIHW", "NCHW")` (pour une convolution 2D).

public static UniformQuantizedConvolutionHybrid.Options explicitPadding (List<Long> explicitPadding)

Paramètres
remplissage explicite Si `padding` Attr est `"EXPLICIT"`, doit être défini sous forme de liste indiquant les remplissages explicites au début et à la fin de chaque dimension spatiale gauche. Sinon, cet Attr doit être vide.

(Si utilisé,) Doit être une liste de taille 2 * (nombre de dimensions spatiales gauche), où (explicit_padding[2 * i], explicit_padding[2 * i + 1]) indique spatial_dimensions[i] (start_padding, end_padding).

public statique UniformQuantizedConvolutionHybrid.Options featureGroupCount (Long featureGroupCount)

Paramètres
featureGroupCount Le nombre de groupes de fonctionnalités. Utilisé pour les circonvolutions groupées. Doit être un diviseur à la fois de lhs_feature et de output_feature.

public static UniformQuantizedConvolutionHybrid.Options lhsDilation (List<Long> lhsDilation)

Paramètres
lhsDilatation Le facteur de dilatation à appliquer dans chaque dimension spatiale de « lhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales gauche). Si liste vide, la dilatation pour chaque dimension spatiale gauche est fixée à 1.

sortie publique <V> sortie ()

Le Tenseur de sortie de `Tout`, même rang que `lhs` et `rhs`. Les données de sortie sont les données de sortie non quantifiées.

public static UniformQuantizedConvolutionHybrid.Options rhsDilation (List<Long> rhsDilation)

Paramètres
rhsDilatation Le facteur de dilatation à appliquer dans chaque dimension spatiale de « rhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales droites). Si liste vide, la dilatation pour chaque dimension spatiale droite est fixée à 1.

public statique UniformQuantizedConvolutionHybrid.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, cet attribut 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.

public static UniformQuantizedConvolutionHybrid.Options windowStrides (List<Long> windowStrides)

Paramètres
fenêtreStrides La foulée de la fenêtre glissante pour chaque dimension spatiale de « lhs ». Doit être une liste vide (par défaut) ou une liste de taille (nombre de dimensions spatiales). Si une liste vide est fournie, la foulée pour chaque dimension spatiale est définie sur 1.