昇腾社区首页
中文
注册
开发者
下载

aclnnBinaryCrossEntropyWithLogits

产品支持情况

[object Object]undefined

功能说明

  • 接口功能:计算输入logits与标签target之间的BCELoss损失。

  • 计算公式:

    • 单标签场景:

      (self,target)=L={l1,...,ln}T\ell(self, target) = L = \{l_{1},..., l_{n}\}^{T} n=weightn[targetnlog(σ(selfn))+(1targetn)log(1σ(selfn))]\ell_{n} = -weight_{n}[target_{n} \cdot log(\sigma(self_{n})) + (1 - target_{n}) \cdot log(1 - \sigma(self_{n}))] (self,target)={L,if reduction=nonemean(L),if reduction=meansum(L),if reduction=sum\ell(self, target) = \begin{cases} L, & if\ reduction = none\\ mean(L), & if\ reduction = mean\\ sum(L), & if\ reduction = sum\\ \end{cases}
    • 多标签场景:

      c(self,target)=Lc={l1,c,...,ln,c}T\ell_c(self, target) = L_c = \{l_{1,c},..., l_{n,c}\}^{T} n,c=weightn,c[pos_weightn,ctargetn,clog(σ(selfn,c))+(1targetn,c)log(1σ(selfn,c))]\ell_{n,c} = -weight_{n,c}[pos\_weight_{n,c} \cdot target_{n,c} \cdot log(\sigma(self_{n,c})) + (1 - target_{n,c}) \cdot log(1 - \sigma(self_{n,c}))]

函数原型

每个算子分为,必须先调用“aclnnBinaryCrossEntropyWithLogitsGetWorkspaceSize”接口获取入参并根据流程计算所需workspace大小,再调用“aclnnBinaryCrossEntropyWithLogits”接口执行计算。

[object Object]
[object Object]

aclnnBinaryCrossEntropyWithLogitsGetWorkspaceSize

  • 参数说明:

    [object Object]
    • [object Object]Atlas 推理系列产品[object Object]、[object Object]Atlas 训练系列产品[object Object]:数据类型不支持BFLOAT16。
  • 返回值:

    aclnnStatus: 返回状态码,具体参见

    第一段接口完成入参校验,出现以下场景时报错:

    [object Object]

aclnnBinaryCrossEntropyWithLogits

  • 参数说明:

    [object Object]
  • 返回值:

    aclnnStatus: 返回状态码,具体参见

约束说明

  • 确定性计算:
    • aclnnBinaryCrossEntropyWithLogits默认确定性实现。

调用示例

示例代码如下,仅供参考,具体编译和执行过程请参考

[object Object]