| asInputTensor(const ITensor &t) | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | inlineprotectedstatic |
| asOutputTensor(ITensor &t) | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | inlineprotectedstatic |
| backward(const Tensor< int, MR > &input, const Tensor< float, MR > &output, const Tensor< float, MR > &output_gradient, const std::vector< std::shared_ptr< ITensor > > ¶meters, std::vector< std::shared_ptr< Tensor< float, MR > > > ¶meter_gradients, Tensor< int, MR > &input_gradient, const std::vector< std::shared_ptr< Tensor< float, MR > > > &output_state) const | Mila::Dnn::Compute::CpuCrossEntropyOp | inline |
| Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float >::backward(const ITensor &input, const ITensor &output_grad, ITensor &input_grad) const=0 | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | pure virtual |
| backward_impl(float *dlogits, const float *dlosses, const float *probs, const Tensor< int, CpuMemoryResource > &targets, int B, int T, int V, int Vp) const | Mila::Dnn::Compute::CpuCrossEntropyOp | inline |
| build(const BuildContext &build_context) | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| clearGradients() noexcept | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| config_ | Mila::Dnn::Compute::CpuCrossEntropyOp | private |
| CpuCrossEntropyOp(const CrossEntropyConfig &config) | Mila::Dnn::Compute::CpuCrossEntropyOp | inline |
| data_type | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | static |
| DataTypeTraits typedef | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | |
| device_type | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | static |
| forward(const Tensor< int, MR > &input, const std::vector< std::shared_ptr< ITensor > > ¶meters, Tensor< float, MR > &output, std::vector< std::shared_ptr< Tensor< float, MR > > > &output_state) const override | Mila::Dnn::Compute::CpuCrossEntropyOp | inline |
| Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float >::forward(const ITensor &input, ITensor &output) const=0 | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | pure virtual |
| getDataType() const | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| getDeviceType() const | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| getName() const override | Mila::Dnn::Compute::CpuCrossEntropyOp | inlinevirtual |
| getOperationType() const=0 | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | pure virtual |
| getStateMemorySize() const | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| is_built_ | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | protected |
| isBuilt() const | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| isEvalMode() const | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| MR typedef | Mila::Dnn::Compute::CpuCrossEntropyOp | |
| OperationBase typedef | Mila::Dnn::Compute::CpuCrossEntropyOp | |
| setGradients(ITensor *weight_grad, ITensor *bias_grad) | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| setParameters(ITensor *weight, ITensor *bias) | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| setTrainingMode(TrainingMode training_mode) | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | inlinevirtual |
| TensorInputType typedef | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | |
| TensorOutputType typedef | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | |
| training_mode_ | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | protected |
| ~Operation()=default | Mila::Dnn::Compute::Operation< TDeviceType, TPrecision > | virtual |
| ~UnaryOperation()=default | Mila::Dnn::Compute::UnaryOperation< DeviceType::Cpu, int, float > | virtual |