当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch conv2d用法及代码示例


本文简要介绍python语言中 torch.nn.quantized.functional.conv2d 的用法。

用法:

torch.nn.quantized.functional.conv2d(input, weight, bias, stride=1, padding=0, dilation=1, groups=1, padding_mode='zeros', scale=1.0, zero_point=0, dtype=torch.quint8)

参数

  • input-形状的量化输入张量

  • weight-形状量化滤波器(\text{out\_channels} , \frac{\text{in\_channels}}{\text{groups}} , kH , kW)

  • bias-非量化形状的偏置张量(\text{out\_channels}) .张量类型必须是torch.float.

  • stride-卷积核的步幅。可以是单个数字或元组 (sH, sW) 。默认值:1

  • padding-输入两侧的隐式填充。可以是单个数字或元组 (padH, padW) 。默认值:0

  • dilation-内核元素之间的间距。可以是单个数字或元组 (dH, dW) 。默认值:1

  • groups-将输入分成组, 应该可以被组数整除。默认值:1

  • padding_mode-要使用的填充模式。目前仅支持“zeros” 量化卷积。默认值:“zeros”

  • scale-输出的量化比例。默认值:1.0

  • zero_point-量化 zero_point 用于输出。默认值:0

  • dtype-要使用的量化数据类型。默认值:torch.quint8

在由多个输入平面组成的量化 2D 输入上应用 2D 卷积。

有关详细信息和输出形状,请参阅Conv2d

例子:

>>> from torch.nn.quantized import functional as qF
>>> filters = torch.randn(8, 4, 3, 3, dtype=torch.float)
>>> inputs = torch.randn(1, 4, 5, 5, dtype=torch.float)
>>> bias = torch.randn(8, dtype=torch.float)
>>>
>>> scale, zero_point = 1.0, 0
>>> dtype_inputs = torch.quint8
>>> dtype_filters = torch.qint8
>>>
>>> q_filters = torch.quantize_per_tensor(filters, scale, zero_point, dtype_filters)
>>> q_inputs = torch.quantize_per_tensor(inputs, scale, zero_point, dtype_inputs)
>>> qF.conv2d(q_inputs, q_filters, bias, padding=1, scale=scale, zero_point=zero_point)

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.nn.quantized.functional.conv2d。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。