tensorflow :: ops :: QuantizeDownAndShrinkRange
#include <math_ops.h>
Converta o tensor quantizado de 'entrada' em uma 'saída' de precisão inferior, usando o.
Resumo
distribuição real dos valores para maximizar o uso da profundidade de bits inferior e ajustar as faixas de saída mín. e máx. de acordo.
[input_min, input_max] são 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 estamos 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 espremer o máximo de precisão possível em uma saída com uma profundidade de bits menor, calculando os valores mínimo e máximo reais encontrados nos dados. Por exemplo, talvez essa 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 flutuantes estão entre -0,5f e 0,5f, então 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 mín e máx.
Na prática, isso é mais útil para obter a saída de operações como QuantizedMatMul, que podem produzir saídas de profundidade de bits maiores do que suas entradas e podem ter grandes intervalos 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 alcance possível. Ao alimentar essa saída neste operador, podemos reduzi-la de 32 bits para 8 com perda mínima de precisão.
Argumentos:
- escopo: um objeto Scope
- input_min: o valor flutuante que o valor mínimo de entrada quantizado representa.
- input_max: O valor flutuante que o valor máximo de entrada quantizado representa.
- out_type: o tipo de saída. Deve ter uma profundidade de bits menor do que Tinput.
Retorna:
-
Output
saída -
Output
output_min: O valor flutuante que o valor mínimo de saída quantizado representa. -
Output
output_max: O valor flutuante que o valor máximo de saída quantizado 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
resultado
::tensorflow::Output output
output_max
::tensorflow::Output output_max
output_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 )