struttura DML_ELEMENT_WISE_CLIP_OPERATOR_DESC (directml.h)
Esegue l'operazione seguente per ogni elemento di InputTensor, inserendo il risultato nell'elemento corrispondente di OutputTensor. Questo operatore blocca (o limita) ogni elemento nell'input entro l'intervallo chiuso [Min, Max].
f(x) = max(Min, min(x, Max))
Dove max(a,b) restituisce il valore maggiore dei due valori e min(a,b) restituisce il più piccolo dei due valori a,b.
Questo operatore supporta l'esecuzione sul posto, ovvero OutputTensor è autorizzato ad alias InputTensor durante l'associazione .
Sintassi
struct DML_ELEMENT_WISE_CLIP_OPERATOR_DESC {
const DML_TENSOR_DESC *InputTensor;
const DML_TENSOR_DESC *OutputTensor;
const DML_SCALE_BIAS *ScaleBias;
FLOAT Min;
FLOAT Max;
};
Members
InputTensor
Tipo: const DML_TENSOR_DESC*
Tensore di input da cui leggere.
OutputTensor
Tipo: const DML_TENSOR_DESC*
Tensore di output in cui scrivere i risultati.
ScaleBias
Tipo: _Maybenull_ const DML_SCALE_BIAS*
Scala facoltativa e distorsione da applicare all'input. Se presente, questo ha l'effetto di applicare la funzione g(x) = x * scale + bias
a ogni elemento di input prima di calcolare questo operatore.
Min
Tipo: FLOAT
Valore minimo, al di sotto del quale l'operatore sostituisce il valore con Min.
Max
Tipo: FLOAT
Valore massimo, al di sopra del quale l'operatore sostituisce il valore con Max.
Commenti
Se il tipo di dati tensor non è float, viene eseguito il cast di Min e Max al tipo di dati tensor prima di applicare l'operazione di ritaglio (che per i numeri interi significa troncare verso zero e per i valori a virgola mobile arrotondamento al valore pari più vicino).
Disponibilità
Questo operatore è stato introdotto in DML_FEATURE_LEVEL_1_0
.
Vincoli tensor
InputTensor e OutputTensor devono avere gli stessi Valori DataType, DimensionCount e Size.
Supporto di Tensor
DML_FEATURE_LEVEL_5_0 e versioni successive
Tensore | Tipo | Conteggi delle dimensioni supportati | Tipi di dati supportati |
---|---|---|---|
InputTensor | Input | da 1 a 8 | FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
OutputTensor | Output | da 1 a 8 | FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_3_0 e versioni successive
Tensore | Tipo | Conteggi delle dimensioni supportati | Tipi di dati supportati |
---|---|---|---|
InputTensor | Input | da 1 a 8 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
OutputTensor | Output | da 1 a 8 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_2_1 e versioni successive
Tensore | Tipo | Conteggi delle dimensioni supportati | Tipi di dati supportati |
---|---|---|---|
InputTensor | Input | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
OutputTensor | Output | 4 | FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8 |
DML_FEATURE_LEVEL_1_0 e versioni successive
Tensore | Tipo | Conteggi delle dimensioni supportati | Tipi di dati supportati |
---|---|---|---|
InputTensor | Input | 4 | FLOAT32, FLOAT16 |
OutputTensor | Output | 4 | FLOAT32, FLOAT16 |
Requisiti
Requisito | Valore |
---|---|
Intestazione | directml.h |