Esegui l'aggiunta quantizzata del tensore quantizzato "lhs" e del tensore quantizzato "rhs" per ottenere un "output" quantizzato.
Dato "lhs" quantizzato e "rhs" quantizzato, esegue l'addizione quantizzata su "lhs" e "rhs" per creare un "output" quantizzato.
"UniformQuantizedAdd" segue le regole di trasmissione Numpy. Le due forme dell'array di input vengono confrontate in base agli elementi. A partire dalle dimensioni finali, le due dimensioni devono essere uguali oppure una di esse deve essere 1.
`lhs` e `rhs` devono essere quantizzati Tensore, dove il valore dei dati viene quantizzato utilizzando la formula:
quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
Anche l'"output" viene quantizzato, utilizzando la stessa formula.Se "lhs" e "output" sono entrambi quantizzati per asse, l'asse di quantizzazione deve corrispondere. Inoltre, se "rhs" e "output" sono entrambi quantizzati per asse, l'asse di quantizzazione deve corrispondere. Corrispondenza significa che l'asse deve corrispondere durante l'aggiunta, per quanto riguarda la trasmissione. Cioè per entrambi gli operandi `lhs` e `rhs`, se `operand.quantization_axis` >= 0 e `output.quantization_axis` >= 0, `operand.dims` - `operand.quantization_axis` deve essere uguale a `output.dims ` - `output.asse_quantizzazione`.
Classi nidificate
classe | UniformQuantizedAdd.Options | Attributi facoltativi per UniformQuantizedAdd |
Metodi pubblici
Uscita <T> | comeuscita () Restituisce la maniglia simbolica di un tensore. |
static <T> UniformQuantizedAdd <T> | create ( Scope scope, Operando <T> lhs, Operando <T> rhs, Operando <Float> lhsScales, Operando <Integer> lhsZeroPoints, Operando <Float> rhsScales, Operando <Integer> rhsZeroPoints, Operando <Float> outputScales, Operando <Integer > outputZeroPoints, Lungo lhsQuantizationMinVal, Lungo lhsQuantizationMaxVal, Lungo rhsQuantizationMinVal, Lungo rhsQuantizationMaxVal, Lungo outputQuantizationMinVal, Lungo outputQuantizationMaxVal, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione UniformQuantizedAdd. |
static UniformQuantizedAdd.Options | lhsQuantizationAxis (LhsQuantizationAxis lungo) |
Uscita <T> | produzione () Il tensore quantizzato in uscita. |
static UniformQuantizedAdd.Options | outputQuantizationAxis (outputQuantizationAxis lungo) |
static UniformQuantizedAdd.Options | rhsQuantizationAxis (rhsQuantizationAxis lungo) |
Metodi ereditati
Metodi pubblici
Uscita pubblica <T> 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 UniformQuantizedAdd <T> create ( Scope scope, Operando <T> lhs, Operando <T> rhs, Operando <Float> lhsScales, Operando <Integer> lhsZeroPoints, Operando <Float> rhsScales, Operando <Integer> rhsZeroPoints, Operando <Float > outputScales, Operando <Integer> outputZeroPoints, Lungo lhsQuantizationMinVal, Lungo lhsQuantizationMaxVal, Lungo rhsQuantizationMinVal, Lungo rhsQuantizationMaxVal, Lungo outputQuantizationMinVal, Lungo outputQuantizationMaxVal, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione UniformQuantizedAdd.
Parametri
portata | ambito attuale |
---|---|
sinistra | Deve essere un tensore quantizzato. |
ds | Deve essere un tensore quantizzato. |
lhsScales | I valori float utilizzati come fattori di scala durante la quantizzazione dei dati originali rappresentati da "lhs". |
lhsZeroPoints | I valori int32 utilizzati come punti zero durante la quantizzazione dei dati originali rappresentati da "lhs". Deve avere la stessa forma di "lhs_scales". |
rhsScales | I valori float utilizzati come fattori di scala durante la quantizzazione dei dati originali rappresentati da "rhs". |
rhsZeroPoints | I valori int32 utilizzati come punti zero durante la quantizzazione dei dati originali rappresentati da "rhs". Deve avere la stessa forma di "rhs_scales". |
outputScales | I valori float da utilizzare come fattori di scala quando si quantizzano i dati originali rappresentati da "output". |
outputZeroPoints | I valori int32 utilizzati come punti zero durante la quantizzazione dei dati originali rappresentati dall'output. Deve avere la stessa forma di "output_scales". |
lhsQuantizzazioneMinVal | Il valore minimo dei dati quantizzati memorizzati in "lhs". Ad esempio, se "Tin" è "qint8", deve essere impostato su -127 se quantizzato in intervallo ristretto o su -128 in caso contrario. |
lhsQuantizzazioneMaxVal | Il valore massimo dei dati quantizzati memorizzati in "lhs". Ad esempio, se "Tin" è "qint8", questo deve essere impostato su 127. |
rhsQuantizzazioneMinVal | Il valore minimo dei dati quantizzati memorizzati in "rhs". Ad esempio, se "Tin" è "qint8", deve essere impostato su -127 se quantizzato in intervallo ristretto o su -128 in caso contrario. |
rhsQuantizzazioneMaxVal | Il valore massimo dei dati quantizzati memorizzati in "rhs". Ad esempio, se "Tin" è "qint8", questo deve essere impostato su 127. |
outputQuantizzazioneMinVal | Il valore minimo dei dati quantizzati memorizzati in "output". Ad esempio, se "Tout" è "qint8", questo deve essere impostato su -127 se quantizzato in intervallo ristretto o -128 in caso contrario. |
outputQuantizzazioneMaxVal | Il valore massimo dei dati quantizzati memorizzati in "output". Ad esempio, se "Tout" è "qint8", questo deve essere impostato su 127. |
opzioni | trasporta valori di attributi opzionali |
Ritorni
- una nuova istanza di UniformQuantizedAdd
pubblico statico UniformQuantizedAdd.Options lhsQuantizationAxis (Long lhsQuantizationAxis)
Parametri
lhsQuantizationAxis | 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. Per "lhs" è supportata solo la quantizzazione per tensore. Pertanto, questo deve essere impostato su -1. Altri valori genereranno errori durante la costruzione di OpKernel. |
---|
public static UniformQuantizedAdd.Options outputQuantizationAxis (Long outputQuantizationAxis)
Parametri
outputQuantizationAxis | 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. Per l'"output", è supportata solo la quantizzazione per tensore o la quantizzazione per canale lungo "output_feature_dimension". Pertanto, deve essere impostato su -1 o "dimension_numbers.output_feature_dimension". Altri valori genereranno errori durante la costruzione di OpKernel. |
---|
public static UniformQuantizedAdd.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
Parametri
rhsQuantizationAxis | 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. Per "rhs", è supportata solo la quantizzazione per tensore o la quantizzazione per canale lungo "kernel_output_feature_dimension". Pertanto, questo deve essere impostato su -1 o `dimension_numbers.kernel_output_feature_dimension`. Altri valori genereranno errori durante la costruzione di OpKernel. |
---|