• 文档 >
  • 量化 >
  • 量化 API 参考 >
  • 线性
快捷键

线性 ¶

class torch.ao.nn.quantized.Linear(in_features, out_features, bias_=True, dtype=torch.qint8)[source][source]

一个量化线性模块,输入和输出为量化张量。我们采用与 torch.nn.Linear 相同的接口,请参阅 https://pytorch.org/docs/stable/nn.html#torch.nn.Linear 以获取文档。

类似于 Linear ,属性将在模块创建时随机初始化,之后将被覆盖

变量:
  • weight(张量)- 模块的非可学习量化权重,形状为 (out_features,in_features)(\text{out\_features}, \text{in\_features})

  • bias (Tensor) – 模块的非可学习偏差,形状为 (out_features)(\text{out\_features}) 。如果 biasTrue ,则值初始化为零。

  • scale – 输出量化张量的尺度参数,类型:double

  • 零点 – 零点参数用于输出量化张量,类型:长整型

示例:

>>> m = nn.quantized.Linear(20, 30)
>>> input = torch.randn(128, 20)
>>> input = torch.quantize_per_tensor(input, 1.0, 0, torch.quint8)
>>> output = m(input)
>>> print(output.size())
torch.Size([128, 30])
classmethod from_float(mod, use_precomputed_fake_quant=False)[source][source]

从观察到的浮点模块创建量化模块

参数:
  • mod (模块) – 一个浮点模块,可以是 torch.ao.quantization 工具生成的,也可以是由用户提供的。

  • use_precomputed_fake_quant(布尔值)– 如果为 True,模块将重用预计算的伪量化模块中的最小/最大值。

classmethod from_reference(ref_qlinear, output_scale, output_zero_point)[source][source]

从参考量化模块创建一个(fbgemm/qnnpack)量化模块

参数:
  • ref_qlinear(模块)- 一个参考量化线性模块,可以是 torch.ao.quantization 工具生成的,也可以是由用户提供的

  • output_scale(浮点数)- 输出 Tensor 的缩放比例

  • output_zero_point(整数)- 输出 Tensor 的零点


© 版权所有 PyTorch 贡献者。

使用 Sphinx 构建,主题由 Read the Docs 提供。

文档

查看 PyTorch 的全面开发者文档

查看文档

教程

深入了解初学者和高级开发者的教程

查看教程

资源

查找开发资源并获得您的疑问解答

查看资源