speechbrain.nnet.quaternion_networks.q_normalization 模块

实现四元数值归一化的库。

作者
  • Titouan Parcollet 2020

  • Drew Wagner 2024

摘要

QBatchNorm

这个类实现了最简单的四元数批归一化形式,如文献 "Quaternion Convolutional Neural Network for Color Image Classification and Forensics", Qilin Y. 等人所述。

参考

class speechbrain.nnet.quaternion_networks.q_normalization.QBatchNorm(input_size, dim=-1, gamma_init=1.0, beta_param=True, momentum=0.1, eps=0.0001, track_running_stats=True)[source]

基础:Module

这个类实现了最简单的四元数批归一化形式,如文献 “Quaternion Convolutional Neural Network for Color Image Classification and Forensics”, Qilin Y. 等人所述。

参数:
  • input_size (int) – 待归一化维度的预期大小。

  • dim (int, optional) – 定义应归一化的轴。通常对应于通道维度 (默认 -1)。

  • gamma_init (float, optional) – 要使用的 gamma 的第一个值 (均值) (默认 1.0)。

  • beta_param (bool, optional) – 当设置为 True 时,应用 BN 的 beta 参数 (默认 True)。

  • momentum (float, optional) – 定义动量,与实数值批归一化相同 (默认 0.1)。

  • eps (float, optional) – 用于稳定操作的项 (默认 1e-4)。

  • track_running_stats (bool, optional) – 等同于实数值批归一化参数。当为 True 时,跟踪统计数据。当为 False 时,仅使用在批次上计算的统计数据 (默认 True)。

示例

>>> inp_tensor = torch.rand([10, 40])
>>> QBN = QBatchNorm(input_size=40)
>>> out_tensor = QBN(inp_tensor)
>>> out_tensor.shape
torch.Size([10, 40])
forward(input)[source]

返回归一化的输入张量。

参数:

input (torch.Tensor (batch, time, [channels])) – 待归一化的输入。可以是 2d, 3d, 4d。

返回类型:

归一化的输入。