Compartilhar via


estrutura DML_ACTIVATION_CELU_OPERATOR_DESC (directml.h)

Executa a função de ativação CELU (unidade linear exponencial) continuamente diferencial em cada elemento em InputTensor, colocando o resultado no elemento correspondente de OutputTensor.

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

Em que:

  • exp(x) é a função de exponenciação natural
  • max(a,b) retorna o maior dos dois valores a,b
  • min(a,b) retorna o menor dos dois valores a,b

Esse operador dá suporte à execução in-loco, o que significa que o tensor de saída tem permissão para alias InputTensor durante a associação.

Sintaxe

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

Membros

InputTensor

Tipo: const DML_TENSOR_DESC*

O tensor de entrada do qual ler.

OutputTensor

Tipo: const DML_TENSOR_DESC*

O tensor de saída para o qual gravar os resultados.

Alpha

Tipo: FLOAT

O coeficiente alfa. Um padrão típico para esse valor é 1,0.

Disponibilidade

Esse operador foi introduzido em DML_FEATURE_LEVEL_3_0.

Restrições do Tensor

InputTensor e OutputTensor devem ter os mesmos DataType, DimensionCount e Sizes.

Suporte ao Tensor

Tensor Tipo Contagens de dimensões com suporte Tipos de dados com suporte
InputTensor Entrada 1 a 8 FLOAT32, FLOAT16
OutputTensor Saída 1 a 8 FLOAT32, FLOAT16

Requisitos

   
Cliente mínimo com suporte Windows 10 Build 20348
Servidor mínimo com suporte Windows 10 Build 20348
Cabeçalho directml.h