UniformRequantize

classe finale pubblica UniformRequantize

Dato l'"input" del tensore quantizzato, riquantizzalo con nuovi parametri di quantizzazione.

Dato il tensore quantizzato "input", che è stato quantizzato utilizzando {input_scales, input_zero_points, input_quantization_axis, input_quantization_min_val, input_quantization_max_val}, riquantizzarlo in un tensore, che viene quantizzato utilizzando {output_scales, output_zero_points, output_quantization_axis, output_quantization_min_val, output_quantization_max_val}. La riquantizzazione viene eseguita utilizzando la formula: output_quantized_data = clip( (input_quantized_data - input_zero_point) * (input_scale / output_scale) + output_zero_point, output_quantization_min_val, output_quantization_max_val)

I casi supportati dalla quantizzazione per tensore e per asse sono i seguenti:

  • per-tensore -> per-tensore
  • per-tensore -> per-asse
  • per asse -> per asse dove input_quantization_axis è uguale a output_quantization_axis. Cioè almeno uno tra input_quantization_axis e output_quantization_axis deve essere -1, oppure due devono essere uguali.

Classi nidificate

classe UniformRequantize.Options Attributi facoltativi per UniformRequantize

Metodi pubblici

Uscita <U>
comeuscita ()
Restituisce la maniglia simbolica di un tensore.
statico <U, T> UniformRequantize <U>
create ( Ambito di applicazione , Operando <T> input, Operando <Float> inputScales, Operando <Integer> inputZeroPoints, Operando <Float> outputScales, Operando <Integer> outputZeroPoints, Classe<U> Tout, Long inputQuantizationMinVal, Long inputQuantizationMaxVal, Long outputQuantizationMinVal, Output lungoQuantizationMaxVal, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione UniformRequantize.
static UniformRequantize.Options
inputQuantizationAxis (InputQuantizationAxis lungo)
Uscita <U>
produzione ()
L'output quantizzato Tensore di Tout, la cui forma è la stessa dell'input.
static UniformRequantize.Options
outputQuantizationAxis (outputQuantizationAxis lungo)

Metodi ereditati

Metodi pubblici

Uscita pubblica <U> asOutput ()

Restituisce la maniglia simbolica di un tensore.

Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.

public static UniformRequantize <U> create ( Scope scope, Operando <T> input, Operando <Float> inputScales, Operando <Integer> inputZeroPoints, Operando <Float> outputScales, Operando <Integer> outputZeroPoints, Class<U> Tout, Long inputQuantizationMinVal, Input lungoQuantizationMaxVal, output lungoQuantizationMinVal, output lungoQuantizationMaxVal, Opzioni... opzioni)

Metodo factory per creare una classe che racchiude una nuova operazione UniformRequantize.

Parametri
scopo ambito attuale
ingresso Deve essere un tensore di stagno.
inputScales I valori float utilizzati come scale durante la quantizzazione dei dati originali rappresentati da "input". Deve essere un tensore scalare se quantization_axis è -1 (quantizzazione per tensore), altrimenti tensore 1D di dimensione (input.dim_size(quantization_axis),) (quantizzazione per asse).
inputZeroPoints I valori int32 utilizzati come punto_zero durante la quantizzazione dei dati originali rappresentati da "input". Stessa condizione di forma delle squame.
outputScales I valori float da utilizzare come nuove scale per quantizzare i dati originali rappresentati da "input". Deve essere un tensore scalare se quantization_axis è -1 (quantizzazione per tensore), altrimenti tensore 1D di dimensione (input.dim_size(quantization_axis),) (quantizzazione per asse).
outputZeroPoints I valori int32 da utilizzare come nuovi punti_zero per quantizzare i dati originali rappresentati da "input". Stessa condizione di forma delle squame.
Tutto Il tipo di tensore di uscita. Un tf.DType da: tf.qint8, tf.qint32
inputQuantizzazioneMinVal Il valore minimo di quantizzazione utilizzato durante la quantizzazione dei dati originali rappresentati da "input". Lo scopo di questo attributo è tipicamente (ma non limitato a) indicare un intervallo ristretto, dove è impostato su: "(Tin minimo) + 1" se intervallo ristretto e "(Tin minimo)" altrimenti. Ad esempio, se Tin è qint8, questo viene impostato su -127 se quantizzato in intervallo ristretto o -128 in caso contrario.
inputQuantizzazioneMaxVal Il valore massimo di quantizzazione utilizzato durante la quantizzazione dei dati originali rappresentati da "input". Lo scopo di questo attributo è tipicamente (ma non limitato a) indicare un intervallo ristretto, dove è impostato su: "(Tout max)" sia per l'intervallo ristretto che per l'intervallo non ristretto. Ad esempio, se Tin è qint8, questo verrà impostato su 127.
outputQuantizzazioneMinVal Il nuovo valore minimo di quantizzazione per quantizzare i dati originali rappresentati da "input".
outputQuantizzazioneMaxVal Il nuovo valore massimo di quantizzazione per quantizzare i dati originali rappresentati da "input".
opzioni trasporta valori di attributi opzionali
ritorna
  • una nuova istanza di UniformRequantize

public static UniformRequantize.Options inputQuantizationAxis (Long inputQuantizationAxis)

Parametri
inputQuantizationAxis L'asse di quantizzazione utilizzato durante la quantizzazione dei dati originali rappresentati da "input". Indica l'indice della dimensione del tensore in cui viene applicata la quantizzazione per asse per le fette lungo quella dimensione. Se impostato su -1 (impostazione predefinita), indica la quantizzazione per tensore. Altrimenti, deve essere impostato nell'intervallo [0, input.dims()).

Uscita pubblica <U> uscita ()

L'output quantizzato Tensore di Tout, la cui forma è la stessa dell'input.

public static UniformRequantize.Options outputQuantizationAxis (Long outputQuantizationAxis)

Parametri
outputQuantizationAxis Il nuovo asse di quantizzazione da utilizzare per quantizzare i dati originali rappresentati da "input".