Condividi tramite


struttura DML_ACTIVATION_CELU_OPERATOR_DESC (directml.h)

Esegue la funzione di attivazione CELU (ContinuousLy Differenziaable Linear Unit) su ogni elemento in InputTensor, inserendo il risultato nell'elemento corrispondente di OutputTensor.

f(x) = max(0, x) + min(0, Alpha * (exp(x / Alpha) - 1));

Dove:

  • exp(x) è la funzione di esponente naturale
  • max(a,b) restituisce il valore maggiore dei due valori a,b
  • min(a,b) restituisce il più piccolo dei due valori a,b

Questo operatore supporta l'esecuzione sul posto, vale a dire che il tensore di output è autorizzato ad alias InputTensor durante l'associazione.

Sintassi

struct DML_ACTIVATION_CELU_OPERATOR_DESC {
  const DML_TENSOR_DESC *InputTensor;
  const DML_TENSOR_DESC *OutputTensor;
  FLOAT                 Alpha;
};

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.

Alpha

Tipo: FLOAT

Coefficiente alfa. Un valore predefinito tipico per questo valore è 1,0.

Disponibilità

Questo operatore è stato introdotto in DML_FEATURE_LEVEL_3_0.

Vincoli tensor

InputTensor e OutputTensor devono avere gli stessi Valori DataType, DimensionCount e Size.

Supporto di Tensor

Tensore Tipo Conteggi delle dimensioni supportati Tipi di dati supportati
InputTensor Input da 1 a 8 FLOAT32, FLOAT16
OutputTensor Output da 1 a 8 FLOAT32, FLOAT16

Requisiti

   
Client minimo supportato Windows 10 Build 20348
Server minimo supportato Windows 10 Build 20348
Intestazione directml.h