Skip to content

Latest commit

 

History

History
42 lines (30 loc) · 1.16 KB

File metadata and controls

42 lines (30 loc) · 1.16 KB

nn.functional.silu

Sigmoid Linear Unit (SiLU) 激活函数。实现位于 InfiniCore/python/infinicore/nn/functional.py

函数签名

def silu(
    input: Tensor,
    inplace: bool = False,
    *,
    out: Optional[Tensor] = None,
) -> Tensor
  • input:待激活张量。
  • inplace:是否原地写回到 input
  • out:可选输出张量,若提供需与 input 形状、dtypedevice 一致。

行为说明

  • inplace=True 时,直接调用 _infinicore.silu_ 写回 input 并返回。
  • 当未提供 outinfinicore.use_ntops=True 且设备类型为 "cuda""musa" 时,会委托 ntops.torch.silu 以复用优化实现。
  • 其他情况下调用 _infinicore.silu_infinicore.silu_ 完成计算。

示例

import infinicore as ic
from infinicore.nn import functional as F

device = ic.device("cuda:0")
x = ic.ones((4, 8), dtype=ic.float16, device=device)

y = F.silu(x)                 # 返回新张量
F.silu(x, inplace=True)       # 原地更新

相关链接