mlx.nn.InstanceNorm#
- class InstanceNorm(dims: int, eps: float = 1e-05, affine: bool = False)#
对输入应用实例归一化 [1]。
计算公式:
\[y = \frac{x - \mathrm{E}[x]}{ \sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta,\]其中 \(\gamma\) 和 \(\beta\) 是按特征维度学习的参数,初始值分别为 1 和 0。如果
affine
为True
,则两者的尺寸都为dims
。- 形状
输入:\((..., C)\),其中 \(C\) 等于
dims
。输出:与输入形状相同。
示例
>>> import mlx.core as mx >>> import mlx.nn as nn >>> x = mx.random.normal((8, 4, 4, 16)) >>> inorm = nn.InstanceNorm(dims=16) >>> output = inorm(x)
参考
[1]:https://arxiv.org/abs/1607.08022
方法