/usr/local/lib64/python3.6/site-packages/caffe2/python/helpers/__pycache__
NameSizeModeActions
algebra.cpython-36.pyc15030644editdlrm
arg_scope.cpython-36.pyc9720644editdlrm
array_helpers.cpython-36.pyc6860644editdlrm
control_ops.cpython-36.pyc6490644editdlrm
conv.cpython-36.pyc57860644editdlrm
db_input.cpython-36.pyc4510644editdlrm
dropout.cpython-36.pyc4860644editdlrm
elementwise_linear.cpython-36.pyc11090644editdlrm
fc.cpython-36.pyc34920644editdlrm
nonlinearity.cpython-36.pyc10820644editdlrm
normalization.cpython-36.pyc59780644editdlrm
pooling.cpython-36.pyc9030644editdlrm
quantization.cpython-36.pyc3570644editdlrm
tools.cpython-36.pyc8180644editdlrm
train.cpython-36.pyc19650644editdlrm
__init__.cpython-36.pyc1570644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/caffe2/python/helpers/__pycache__/conv.cpython-36.pyc (5786B)
3 Eg( @sdddlmZddlmZddlmZddd Zdd d Zdd d ZdddZ dddZ dddZ dS))core) initializers) ParameterTagsNFNCHWcKsdg}|r t|ts|g}qN|}n.t|trDt|dks>td|}n |gd}|jd}|dk r| rv|dkrvtdn| r|dkrtd| rd|d<||d<|r||d<d |kr|d rd nd }|p|jj}|g}|d kr|jt || |j |n|j ||jt || t j | |d if} t j | |dif} |j sXt j} t j} |j|d|| tjd}|r|j|d|g| tjd}|r|||g}n||g}| dk r| ||||rd |d<d |kr|d =| dkr| |d<|r|jj||f||d|St|trD|jj||f|d|d|d|S|jj||f||d|SdS)NzConv support only a 2D kernel.engineCUDNNz?When use_cudnn=True, the only engine you can specify is "CUDNN"z;When use_cudnn=False, the only engine you can specify is ""exhaustive_searchws_nbytes_limitno_biasFTr XavierFill ConstantFill_w) param_nameshape initializertags_bfloat16_computergroup)kernelsorderr)Zkernel_hZkernel_wr)kernelr) isinstancelistlenAssertionErrorget ValueErrornetNextNameappendintextendrZupdate_initializer init_paramsZExternalInitializerZ create_paramrWEIGHTBIASConv)modelZis_ndblob_inblob_outdim_indim_outr weight_init bias_initWeightInitializerBiasInitializerrtransform_inputs use_cudnnrcudnn_exhaustive_searchr rkwargsrZrequested_engineuse_bias weight_shapeweightbiasinputsr;F/usr/local/lib64/python3.6/site-packages/caffe2/python/helpers/conv.py _ConvBase s                r=c Ks<| dkstdt|d||||||||| | | f d| i| S)zBN-dimensional convolution for inputs with NCHW storage order. rz'ConvNd only supported for NCHW storage.Tr)rr=)r)r*r+r,r-rr.r/r0r1rr2rr5r;r;r<conv_ndsr>c Ks$t|d||||||||| | | f | S)z2-dimensional convolution. F)r=) r)r*r+r,r-rr.r/r0r1rr2r5r;r;r<convsr?c Ks2|r|ndif}|r|ndif}|p,|jj}| dkrB||||gn ||||g} |jr|jj|dg|dfd| i|d}|jj|dg|dfd|gi|d}n$tj|d|j}tj|d|j}|j|tj |j|tj |rd | d <| | d <| r| | d <|jj |||g|f|| d | S)zConvTranspose. r rrrrrrrr rr r )rr) r r!r%param_init_net __getattr__rScopedBlobReference AddParameterrr&r'Z ConvTranspose)r)r*r+r,r-rr.r/r3rr4r r5r7r8r9r;r;r<conv_transposes@    rDc Ks"t||||||f|||d| S)zGroup Convolution. This is essentially the same as Conv with a group argument passed in. We specialize this for backward interface compatibility. )r.r/r)r?) r)r*r+r,r-rr.r/rr5r;r;r< group_convsrEc  sN|r|ndif}|r|ndif}d| kr4| dr4dnd}| rhd| d<| | d<| rh| | d <rhtd |rxtd |jj|fd d tDfdd tD| d}| dkr|||gn|||g}dd |D}g}x0tD]"}|jr||jj|dgd|fd|i|d}|r|jj|dgd|fdt|gi|d}n2tj d||j}|rtj d||j}|j |t j |r|j |t j |r||g}n|g}d| kr| d=|j||j|d|f|| d| qW|jj|ddg| d\}}|S)zGroupConvolution's deprecated interface. This is used to simulate a group convolution via split and concat. You should always use the new group convolution in your new code. r rr FTr rr r z$dim_in should be divisible by group.z%dim_out should be divisible by group.cs g|]}ddt|qS)_Z _gconv_split_)str).0i)r+r;r< 0sz)group_conv_deprecated..csg|]}tqSr;)r#)rHrI)r,rr;r<rJ1s)Z dimensionsrrcSsg|] }t|qSr;)r#)rHvr;r;r<rJ;srz _gconv_%d_wrrz _gconv_%d_bz _gconv_%d)rrrFZ _concat_dims)r)rr Z DepthSplitranger%r@rAr#rrBrCrr&r'r"r(ZConcat)r)r*r+r,r-rr.r/rr3rr4r r5r6Zsplitted_blobsr7Z conv_blobsrIr8r9r:concatZ concat_dimsr;)r+r,rr<group_conv_deprecated sx      rN) NNNNrNFrFNF)NNNNrNr)NNNNrN)NNFrFN)NNr)NNrFrFN) Z caffe2.pythonrZcaffe2.python.modelingrZ%caffe2.python.modeling.parameter_inforr=r>r?rDrErNr;r;r;r<sT    x   5