Fonction torch.quantized_batch_norm de PyTorch


Pytorch torch 参考手册Manuel de référence Pytorch torch

torch.quantized_batch_normEst une fonction dans PyTorch utilisée pour effectuer une normalisation par lots sur des tenseurs quantifiés. Cette fonction est très utile lors de l'inférence d'un modèle quantifié, permettant des opérations de normalisation par lots tout en conservant les avantages de la quantification.

Définition de fonction

torch.quantized_batch_norm(input, weight, bias, mean, var, eps, output_scale, output_zero_point)

Description du paramètre

  • input: tenseur quantifié d'entrée
  • weight: paramètre d'échelle de normalisation par lots
  • bias: paramètre de biais de normalisation par lots
  • mean: moyenne de normalisation par lots
  • var: variance de normalisation par lots
  • eps: petite constante pour éviter la division par zéro
  • output_scale: échelle de quantification du tenseur de sortie
  • output_zero_point: point zéro de quantification du tenseur de sortie

Exemple d'utilisation

Exemple

import torch

# Créer un tenseur d'entrée quantifié
input = torch.quantize_per_tensor(torch.randn(1, 3, 4, 4), scale=0.1, zero_point=0, dtype=torch.quint8)

# Paramètres de normalisation par lots
weight = torch.ones(3)
bias = torch.zeros(3)
mean = torch.ones(3) * 0.5
var = torch.ones(3) * 0.2

# Effectuer une normalisation par lots quantifiée
output = torch.quantized_batch_norm(
    input, weight, bias, mean, var,
    eps=1e-5, output_scale=0.1, output_zero_point=0
)

print("Forme de sortie :", output.shape)
print("Type de sortie :", output.dtype)

Le résultat de sortie est:

输出形状: torch.Size([1, 3, 4, 4])
输出类型: torch.quint8

Pytorch torch 参考手册Manuel de référence Pytorch torch

Autres extensions