Description: Performs backpropagation of the binary logic loss function. reduction specifies the compute method of the loss function. It can be set to none, mean, or sum. none indicates that no reduction will be applied; mean indicates that the sum of the output will be divided by the number of elements in the output; sum indicates that the output will be summed.
Each operator has calls. First, aclnnSoftMarginLossBackwardGetWorkspaceSize is called to obtain the workspace size required for computation and the executor that contains the operator computation process. Then, aclnnSoftMarginLossBackward is called to perform computation.
[object Object][object Object]
Parameters:
- gradOutput (aclTensor*, compute input): aclTensor on the device. Its shape and the shapes of self and target must meet the . are supported. The can be ND.
- [object Object]Atlas training series products[object Object]: The data type can be FLOAT16 or FLOAT.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training series products/Atlas A3 inference series products[object Object]: The data type can be FLOAT16, FLOAT, or BFLOAT16.
- self (aclTensor*, compute input): aclTensor on the device. Its shape and the shapes of gradOutput and target must meet the . are supported. The can be ND.
- [object Object]Atlas training series products[object Object]: The data type can be FLOAT16 or FLOAT.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training series products/Atlas A3 inference series products[object Object]: The data type can be FLOAT16, FLOAT, or BFLOAT16.
- target (aclTensor*, compute input): aclTensor on the device. Its shape and the shapes of gradOutput and self must meet the . are supported. The can be ND.
- [object Object]Atlas training series products[object Object]: The data type can be FLOAT16 or FLOAT.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training series products/Atlas A3 inference series products[object Object]: The data type can be FLOAT16, FLOAT, or BFLOAT16.
- reduction (int64_t, compute input): integer on the host. It specifies the reduction to be applied to the output. Value options: 0 ('none') | 1 ('mean') | 2 ('sum'). none indicates that no reduction will be applied; mean indicates that the sum of the output will be divided by the number of elements in the output; sum indicates that the output will be summed.
- out (aclTensor*, compute output): aclTensor on the device. Its shape must be the shape of target, self, or gradOutput after broadcasting. For details, see . are supported. The can be ND.
- [object Object]Atlas training series products[object Object]: The data type can be FLOAT16 or FLOAT.
- [object Object]Atlas A2 training products/Atlas A2 inference products[object Object] and [object Object]Atlas A3 training series products/Atlas A3 inference series products[object Object]: The data type can be FLOAT16, FLOAT, or BFLOAT16.
- workspaceSize (uint64_t*, output): size of the workspace required to be allocated on the device.
- executor (aclOpExecutor**, output): operator executor, containing the operator computation process.
- gradOutput (aclTensor*, compute input): aclTensor on the device. Its shape and the shapes of self and target must meet the . are supported. The can be ND.
Returns:
[object Object]
Parameters:
- workspace (void*, input): address of the workspace to be allocated on the device.
- workspaceSize (uint64_t, input): size of the workspace to be allocated on the device, which is obtained by the first-phase API aclnnSoftMarginLossBackwardGetWorkspaceSize.
- executor (aclOpExecutor*, input): operator executor, containing the operator computation process.
- stream (aclrtStream, input): stream for executing the task.
Returns:
- Deterministic compute:
- aclnnSoftMarginLossBackward defaults to a deterministic implementation.
The following example is for reference only. For details, see .
[object Object]