@@ -10,28 +10,36 @@ public class gen_nn_ops
1010 {
1111 public static OpDefLibrary _op_def_lib = new OpDefLibrary ( ) ;
1212
13- public static Tensor conv2d ( object parameters )
13+ /// <summary>
14+ /// Computes a 2-D convolution given 4-D `input` and `filter` tensors.
15+ ///
16+ /// Given an input tensor of shape `[batch, in_height, in_width, in_channels]`
17+ /// and a filter / kernel tensor of shape
18+ /// `[filter_height, filter_width, in_channels, out_channels]`, this op
19+ /// performs the following:
20+ ///
21+ /// 1. Flattens the filter to a 2-D matrix with shape
22+ /// `[filter_height * filter_width * in_channels, output_channels]`.
23+ /// 2. Extracts image patches from the input tensor to form a *virtual*
24+ /// tensor of shape `[batch, out_height, out_width,
25+ /// filter_height * filter_width * in_channels]`.
26+ /// 3. For each patch, right-multiplies the filter matrix and the image patch
27+ /// vector.
28+ /// </summary>
29+ /// <param name="parameters"></param>
30+ /// <returns></returns>
31+ public static Tensor conv2d ( Conv2dParams parameters )
1432 {
15- var args = Python . ConvertToDict ( parameters ) ;
16-
17- var input = args [ "input" ] ;
18- var filter = args [ "filter" ] ;
19- var strides = args [ "strides" ] ;
20- var padding = args [ "padding" ] ;
21- var name = args [ "name" ] ;
22- var data_format = args . ContainsKey ( "data_format" ) ? args [ "data_format" ] : "NHWC" ;
23- var use_cudnn_on_gpu = args . ContainsKey ( "use_cudnn_on_gpu" ) ? args [ "use_cudnn_on_gpu" ] : true ;
24- var dilations = args . ContainsKey ( "dilations" ) ? args [ "dilations" ] : new int [ ] { 1 , 1 , 1 , 1 } ;
25-
26- var _op = _op_def_lib . _apply_op_helper ( "Conv2D" , name : name ? . ToString ( ) , args : new
33+ var _op = _op_def_lib . _apply_op_helper ( "Conv2D" , name : parameters . Name , args : new
2734 {
28- input ,
29- filter ,
30- strides ,
31- padding ,
32- use_cudnn_on_gpu ,
33- data_format ,
34- dilations
35+ input = parameters . Input ,
36+ filter = parameters . Filter ,
37+ strides = parameters . Strides ,
38+ padding = parameters . Padding ,
39+ use_cudnn_on_gpu = parameters . UseCudnnOnGpu ,
40+ explicit_paddings = parameters . ExplicitPaddings ,
41+ data_format = parameters . DataFormat ,
42+ dilations = parameters . Dilations
3543 } ) ;
3644
3745 return _op . outputs [ 0 ] ;
0 commit comments