/usr/local/lib64/python3.6/site-packages/torch/nn/quantized/modules/__pycache__
Edit: /usr/local/lib64/python3.6/site-packages/torch/nn/quantized/modules/__pycache__/conv.cpython-36.pyc (30151B)
3
EgA @ sL d Z ddlmZmZmZ ddlZddljZddljj Z
ddljjZ
ddljjjZddlmZ ddlmZ ddlmZmZmZ ddlmZ ddlmZ d d
hZee ee ddd
ZG dd dej Z!G dd de!Z"G dd de!Z#G dd de!Z$edej%j&j!dZ'G dd de!Z(G dd de(Z)G dd de(Z*G dd de(Z+dS ) zQuantized convolution modules. )OptionalListTypeVarN)ops) _size_1_t)_single_pair_triple)_quantize_weight)fuse_conv_bn_weightszerosreflect)paddingreturnc C sJ g }t | }x8t|D ],}x&tdD ]}|j| || d q$W qW |S )N )lenrangeappend)r _reversed_padding_repeated_twiceNidx_ r K/usr/local/lib64/python3.6/site-packages/torch/nn/quantized/modules/conv.py_reverse_repeat_padding s r c s e Zd Zd#ddZd$dd fd d
Zdd Zd
d Zdd Zdd Z fddZ e
jjdd Z
fddZe
jjdd Zdd Zdd Zed%dd Zed!d" Z ZS )&_ConvNdr r Tr Nc C s t d S )N)NotImplementedError)selfin_channelsout_channelskernel_sizestrider dilationgroupsbiaspadding_modedevicedtyper r r __init__! s z_ConvNd.__init__)r c s4 ||
d}t t| j || dkr,td|| dkr@td|| _|| _|| _|| _|| _|| _ || _
|| _| | _|t
krtdj||| _| j
r||| j g}n||| j g}tj|t| fddtjddd |j D }|
rtj|fd
tjidd |j D nd }| j|| d| _d| _d S )
N)r' r( r z'in_channels must be divisible by groupsz(out_channels must be divisible by groupsz;'padding_mode' {} is not supported by quantized convolutionr )scale
zero_pointr( c S s i | ]\}}|d kr||qS )r( r ).0kvr r r
I s z!_ConvNd._init..r( c S s i | ]\}}|d kr||qS )r( r )r, r- r. r r r r/ L s g ?)superr r)
ValueErrorr r r! r" r r#
transposedoutput_paddingr$ _SUPPORTED_PADDINGformatr&