UniformQuantizedAdd

publiczna klasa końcowa UniformQuantizedAdd

Wykonaj skwantowane dodanie skwantowanego Tensora „lhs” i skwantowanego Tensora „rhs”, aby uzyskać skwantowany „wyjście”.

Biorąc pod uwagę skwantowane „lhs” i skwantowane „rhs”, wykonuje skwantowane dodanie „lhs” i „rhs”, aby uzyskać skwantowany „wyjście”.

„UniformQuantizedAdd” podlega regułom nadawania Numpy. Dwa kształty tablicy wejściowej są porównywane elementarnie. Zaczynając od wymiarów końcowych, oba wymiary muszą być równe lub jeden z nich musi wynosić 1.

„lhs” i „rhs” muszą być skwantowane Tensor, gdzie wartość danych jest kwantyzowana przy użyciu wzoru:

quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
 
„wyjście” jest również kwantowane przy użyciu tego samego wzoru.

Jeśli zarówno „lhs”, jak i „wyjście” są kwantowane per-osiowo, oś kwantyzacji musi być zgodna. Ponadto, jeśli zarówno „rhs”, jak i „wyjście” są kwantowane per-osiowo, oś kwantyzacji musi być zgodna. Dopasowanie oznacza, że ​​oś musi pasować podczas dodawania w odniesieniu do transmisji. tj. dla obu operandów `lhs` i `rhs`, jeśli `operand.quantization_axis` >= 0 i `output.quantization_axis` >= 0, `operand.dims` - `operand.quantization_axis` musi być równe `output.dims ` - `oś_kwantyzacji_wyjściowej`.

Klasy zagnieżdżone

klasa Opcje UniformQuantizedAdd Opcjonalne atrybuty dla UniformQuantizedAdd

Metody publiczne

Wyjście <T>
jako wyjście ()
Zwraca symboliczny uchwyt tensora.
statyczny <T> UniformQuantizedAdd <T>
utwórz ( Zakres zasięgu, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Operand <Float> OutputScales, Operand <Integer > wyjścieZeroPoints, Long lhsKwantyzacjaMinVal, Long lhsKwantyzacjaMaxVal, Długie rhsKwantyzacjaMinVal, Długie rhsKwantyzacjaMaxVal, Długie wyjścieKwantyzacjaMinVal, Długie wyjścieKwantyzacjaMaxVal, Opcje... opcje)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację UniformQuantizedAdd.
statyczne opcje UniformQuantizedAdd
lewa oś kwantyzacji (długa oś kwantyzacji lhs)
Wyjście <T>
wyjście ()
Kwantowany tensor wyjściowy.
statyczne opcje UniformQuantizedAdd
wyjścieQuantizationAxis (Długie wyjścieQuantizationAxis)
statyczne opcje UniformQuantizedAdd
rhsQuantizationAxis (długa rhsQuantizationAxis)

Metody dziedziczone

Metody publiczne

publiczne wyjście <T> asOutput ()

Zwraca symboliczny uchwyt tensora.

Dane wejściowe operacji TensorFlow są wynikami innej operacji TensorFlow. Ta metoda służy do uzyskania symbolicznego uchwytu reprezentującego obliczenia danych wejściowych.

public static UniformQuantizedAdd <T> create ( Zakres zakresu, Operand <T> lhs, Operand <T> rhs, Operand <Float> lhsScales, Operand <Integer> lhsZeroPoints, Operand <Float> rhsScales, Operand <Integer> rhsZeroPoints, Argument <Float > wyjścieSkale, Argument <Integer> wyjścieZeroPoints, Long lhsQuantizationMinVal, Long lhsQuantizationMaxVal, Long rhsQuantizationMinVal, Long rhsQuantizationMaxVal, Długie wyjścieQuantizationMinVal, Długie wyjścieQuantizationMaxVal, Opcje... opcje)

Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację UniformQuantizedAdd.

Parametry
zakres aktualny zakres
lewy Musi to być skwantowany tensor.
prawa strona Musi to być skwantowany tensor.
lhsSkale Wartości zmiennoprzecinkowe używane jako współczynniki skali podczas kwantyzacji oryginalnych danych reprezentowanych przez „lhs”.
lhsZeroPunktów Wartości int32 używane jako punkty zerowe podczas kwantyzacji oryginalnych danych reprezentowanych przez „lhs”. Musi mieć ten sam kształt z `lhs_scales`.
rhsSkale Wartości zmiennoprzecinkowe używane jako współczynniki skali podczas kwantyzacji oryginalnych danych reprezentowanych przez „rhs”.
rhsZeroPunktów Wartości int32 używane jako punkty zerowe podczas kwantyzacji oryginalnych danych reprezentowanych przez „rhs”. Musi mieć ten sam kształt z `rhs_scales`.
Skale wyjściowe Wartości zmiennoprzecinkowe używane jako współczynniki skali podczas kwantyzacji oryginalnych danych reprezentowanych przez „wyjście”.
wyjścieZeroPoints Wartości int32 używane jako punkty zerowe podczas kwantyzacji oryginalnych danych reprezentowanych przez dane wyjściowe. Musi mieć ten sam kształt z `output_scales`.
lhsKwantyzacjaMinVal Minimalna wartość skwantowanych danych przechowywanych w „lhs”. Na przykład, jeśli `Tin` to `qint8`, należy to ustawić na -127, jeśli kwantyzowany jest wąski zakres, lub -128, jeśli nie.
lhsKwantyzacjaMaxVal Maksymalna wartość skwantowanych danych przechowywanych w „lhs”. Na przykład, jeśli `Tin` to `qint8`, należy to ustawić na 127.
rhsKwantyzacjaMinVal Minimalna wartość skwantowanych danych przechowywanych w „rhs”. Na przykład, jeśli `Tin` to `qint8`, należy to ustawić na -127, jeśli kwantyzowany jest wąski zakres, lub -128, jeśli nie.
rhsKwantyzacjaMaxVal Maksymalna wartość skwantowanych danych przechowywanych w „rhs”. Na przykład, jeśli `Tin` to `qint8`, należy to ustawić na 127.
wyjścieKwantyzacjaMinVal Minimalna wartość skwantowanych danych przechowywanych w „wyjściu”. Na przykład, jeśli `Tout` to `qint8`, należy to ustawić na -127, jeśli kwantyzowany jest wąski zakres, lub -128, jeśli nie.
wyjścieKwantyzacjaMaxVal Maksymalna wartość skwantowanych danych przechowywanych w „wyjściu”. Na przykład, jeśli `Tout` to `qint8`, należy to ustawić na 127.
opcje przenosi opcjonalne wartości atrybutów
Zwroty
  • nowa instancja UniformQuantizedAdd

public static UniformQuantizedAdd.Options lhsQuantizationAxis (długa lhsQuantizationAxis)

Parametry
lhsOś kwantyzacji Wskazuje indeks wymiaru tensora, w przypadku którego stosowana jest kwantyzacja per-osiowa dla wycinków wzdłuż tego wymiaru. Jeśli ustawione na -1 (domyślnie), oznacza to kwantyzację na tensor. W przypadku „lhs” obsługiwana jest tylko kwantyzacja na tensor. Dlatego należy to ustawić na -1. Inne wartości spowodują błąd w konstrukcji OpKernel.

publiczne wyjście <T> wyjście ()

Kwantowany tensor wyjściowy.

public static UniformQuantizedAdd.Options wyjścieQuantizationAxis (Długie wyjścieQuantizationAxis)

Parametry
wyjścieQuantizationAxis Wskazuje indeks wymiaru tensora, w przypadku którego stosowana jest kwantyzacja per-osiowa dla wycinków wzdłuż tego wymiaru. Jeśli ustawione na -1 (domyślnie), oznacza to kwantyzację na tensor. W przypadku „wyjścia” obsługiwana jest tylko kwantyzacja na tensor lub na kanał wzdłuż „wymiaru_cechy_wyjściowej”. Zatem musi to być ustawione na -1 lub `dimension_numbers.output_feature_dimension`. Inne wartości spowodują błąd w konstrukcji OpKernel.

public static UniformQuantizedAdd.Options rhsQuantizationAxis (długi rhsQuantizationAxis)

Parametry
rhsOś kwantyzacji Wskazuje indeks wymiaru tensora, w przypadku którego stosowana jest kwantyzacja per-osiowa dla wycinków wzdłuż tego wymiaru. Jeśli ustawione na -1 (domyślnie), oznacza to kwantyzację na tensor. W przypadku „rhs” obsługiwana jest tylko kwantyzacja na tensor lub na kanał wzdłuż „kernel_output_feature_dimension”. Zatem musi to być ustawione na -1 lub `dimension_numbers.kernel_output_feature_dimension`. Inne wartości spowodują błąd w konstrukcji OpKernel.