speechbrain.nnet.quaternion_networks.q_pooling 模块

实现四元数值最大和平均池化层的库。

Authors
  • 德鲁·瓦格纳 2024

摘要

类:

QPooling2d

该类实现了四元数平均池化和按幅度的最大池化,如以下文献所述:"计算机视觉的感知组织的几何方法",Altamirano G.

参考

class speechbrain.nnet.quaternion_networks.q_pooling.QPooling2d(pool_type, kernel_size, pool_axis=(1, 2), ceil_mode=False, padding=0, dilation=1, stride=None)[source]

基础类: Pooling2d

该类实现了四元数平均池化和按幅度的最大池化,如“计算机视觉的感知组织几何方法”中所述,作者为Altamirano G。

Parameters:
  • pool_type (str) – 这是要使用的池化函数的类型('avg','max')。

  • kernel_size (int) – 这是定义池化维度的内核大小。 例如,kernel size=3,3 使用 3x3 内核执行 2D 池化。

  • pool_axis (tuple) – 这是一个包含在池化过程中将被考虑的轴的列表。

  • ceil_mode (bool) – 当为True时,将使用ceil而不是floor来计算输出形状。

  • padding (int) – 这是要应用的填充元素的数量。

  • dilation (int) – 控制池化的扩张因子。

  • stride (int) – 这是步幅大小。

Example

>>> pool = QPooling2d('max',(5,3))
>>> inputs = torch.rand(10, 15, 12)
>>> output=pool(inputs)
>>> output.shape
torch.Size([10, 3, 4])
forward(x)[source]

对输入张量执行2d池化。

Parameters:

x (torch.Tensor) – 它表示一个小批量的张量。

Return type:

池化后的张量。