pub fn multilabel_soft_margin_loss_forward<T: Triton, const BLOCK_SIZE: i32>(
input_ptr: T::Pointer<f32>,
target_ptr: T::Pointer<f32>,
out_ptr: T::Pointer<f32>,
n_elements: i32,
)where
T::I32Tensor: Tensor<i32, 1> + Comparison<i32, BoolTensor = T::BoolTensor>,
T::Pointer<f32>: AddOffsets<i32, 1, T::I32Tensor, Output = T::Tensor<T::Pointer<f32>>>,Expand description
Multi-label soft-margin loss forward (element-wise).
Identical to BCEWithLogitsLoss per element:
out = max(x, 0) - x*y + log(1 + exp(-|x|))Grid: [ceil(n / BLOCK_SIZE), 1, 1], block [128, 1, 1].