fluxo tensor:: ops:: QuantizeDownAndShrinkRange

#include <math_ops.h>

Converta o tensor de 'entrada' quantizado em uma 'saída' de menor precisão, usando o.

Resumo

distribuição real dos valores para maximizar o uso da profundidade de bits inferior e ajustar os intervalos mínimo e máximo de saída de acordo.

[input_min, input_max] são valores flutuantes escalares que especificam o intervalo para a interpretação flutuante dos dados de 'entrada'. Por exemplo, se input_min for -1,0f e input_max for 1,0f, e estivermos lidando com dados quantizados quint16, então um valor 0 nos dados de 16 bits deve ser interpretado como -1,0f, e 65535 significa 1,0f.

Este operador tenta extrair o máximo de precisão possível em uma saída com menor profundidade de bits, calculando os valores mínimo e máximo reais encontrados nos dados. Por exemplo, talvez a entrada quint16 não tenha valores inferiores a 16.384 e nenhum superior a 49.152. Isso significa que apenas metade do intervalo é realmente necessário, todas as interpretações de float estão entre -0,5f e 0,5f, portanto, se quisermos compactar os dados em uma saída quint8, podemos usar esse intervalo em vez do teórico -1,0f a 1,0 f que é sugerido pela entrada min e max.

Na prática, isso é mais útil para obter resultados de operações como QuantizedMatMul , que podem produzir saídas com maior profundidade de bits do que suas entradas e podem ter grandes faixas de saída potencial, mas na prática têm uma distribuição de valores de entrada que usa apenas uma pequena fração do intervalo possível. Ao alimentar esse operador com essa saída, podemos reduzi-la de 32 bits para 8 com perda mínima de precisão.

Argumentos:

  • escopo: um objeto Escopo
  • input_min: O valor flutuante que o valor mínimo de entrada quantizado representa.
  • input_max: O valor flutuante que o valor de entrada quantizado máximo representa.
  • out_type: o tipo de saída. Deve ter uma profundidade de bits menor que Tinput.

Retorna:

  • Saída Output
  • Output output_min: O valor flutuante que o valor mínimo de saída quantizada representa.
  • Output output_max: o valor flutuante que o valor de saída quantizado máximo representa.

Construtores e Destruidores

QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type)

Atributos públicos

operation
output
output_max
output_min

Atributos públicos

Operação

Operation operation

saída

::tensorflow::Output output

saída_max

::tensorflow::Output output_max

saída_min

::tensorflow::Output output_min

Funções públicas

QuantizeDownAndShrinkRange

 QuantizeDownAndShrinkRange(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input input_min,
  ::tensorflow::Input input_max,
  DataType out_type
)