speechbrain.nnet.linear 模块

实现线性变换的库。

作者
  • Mirco Ravanelli 2020

  • Davide Borra 2021

摘要

Linear

计算线性变换 y = wx + b。

参考

class speechbrain.nnet.linear.Linear(n_neurons, input_shape=None, input_size=None, bias=True, max_norm=None, combine_dims=False)[source]

基类: Module

计算线性变换 y = wx + b。

参数:
  • n_neurons (int) – 输出神经元的数量 (即,输出的维度)。

  • input_shape (tuple) – 输入张量的形状。

  • input_size (int) – 输入张量的大小。

  • bias (bool) – 如果为 True,则采用加性偏置 b。

  • max_norm (float) – 权重最大范数。

  • combine_dims (bool) – 如果为 True 且输入是 4D,则合并输入的第 3 和第 4 维度。

示例

>>> inputs = torch.rand(10, 50, 40)
>>> lin_t = Linear(input_shape=(10, 50, 40), n_neurons=100)
>>> output = lin_t(inputs)
>>> output.shape
torch.Size([10, 50, 100])
forward(x)[source]

返回输入张量的线性变换。

参数:

x (torch.Tensor) – 用于线性变换的输入。

返回:

wx – 线性变换后的输出。

返回类型:

torch.Tensor