Freigeben über


DML_ELEMENT_WISE_CLIP_OPERATOR_DESC-Struktur (directml.h)

Führt den folgenden Vorgang für jedes Element von InputTensor aus, und platziert das Ergebnis im entsprechenden Element von OutputTensor. Dieser Operator klemmt (oder begrenzt) jedes Element in der Eingabe innerhalb des geschlossenen Intervalls [Min, Max].

f(x) = max(Min, min(x, Max))

Wobei max(a,b) den größeren der beiden Werte zurückgibt, und min(a,b) gibt den kleineren der beiden Werte a,b zurück.

Dieser Operator unterstützt die direkte Ausführung, was bedeutet, dass OutputTensor während der Bindung den Alias InputTensor verwenden darf.

Syntax

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;
};

Member

InputTensor

Typ: const DML_TENSOR_DESC*

Der Eingabe tensor, aus dem gelesen werden soll.

OutputTensor

Typ: const DML_TENSOR_DESC*

Der Ausgabe tensor, in den die Ergebnisse geschrieben werden sollen.

ScaleBias

Typ: _Maybenull_ const DML_SCALE_BIAS*

Eine optionale Skalierung und Verzerrung, die auf die Eingabe angewendet werden sollen. Falls vorhanden, hat dies den Effekt, dass die Funktion g(x) = x * scale + bias auf jedes Eingabeelement angewendet wird, bevor dieser Operator erstellt wird.

Min

Typ: FLOAT

Der Mindestwert, unter dem der Operator den Wert durch Min ersetzt.

Max

Typ: FLOAT

Der Maximalwert, ab dem der Operator den Wert durch Max ersetzt.

Hinweise

Wenn der Tensordatentyp nicht float ist, werden Min und Max in den Tensor-Datentyp umgewandelt, bevor der Abschneidevorgang angewendet wird (was für ganze Zahlen bedeutet, dass auf Null abgeschnitten wird, und für Gleitkommawerte, die auf die nächstgelegene gerade Gerundet werden).

Verfügbarkeit

Dieser Operator wurde in DML_FEATURE_LEVEL_1_0eingeführt.

Tensoreinschränkungen

InputTensor und OutputTensor müssen denselben DataType, DimensionCount und Sizes aufweisen.

Tensorunterstützung

DML_FEATURE_LEVEL_5_0 und höher

Tensor Variante Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 1 bis 8 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8
OutputTensor Ausgabe 1 bis 8 FLOAT32, FLOAT16, INT64, INT32, INT16, INT8, UINT64, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_3_0 und höher

Tensor Variante Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 1 bis 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 1 bis 8 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_2_1 und höher

Tensor Variante Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8
OutputTensor Ausgabe 4 FLOAT32, FLOAT16, INT32, INT16, INT8, UINT32, UINT16, UINT8

DML_FEATURE_LEVEL_1_0 und höher

Tensor Variante Unterstützte Dimensionsanzahl Unterstützte Datentypen
InputTensor Eingabe 4 FLOAT32, FLOAT16
OutputTensor Ausgabe 4 FLOAT32, FLOAT16

Anforderungen

Anforderung Wert
Header directml.h