From a183a80e2e41181272c72dd2afb6eb13aa9a31b7 Mon Sep 17 00:00:00 2001 From: zlx Date: Fri, 21 Jul 2017 16:14:36 +0800 Subject: [PATCH 1/4] add param_attr for img_conv_group(...) --- python/paddle/trainer_config_helpers/networks.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python/paddle/trainer_config_helpers/networks.py b/python/paddle/trainer_config_helpers/networks.py index 1bf59ed4840ae..789d4f170fe49 100755 --- a/python/paddle/trainer_config_helpers/networks.py +++ b/python/paddle/trainer_config_helpers/networks.py @@ -340,7 +340,8 @@ def img_conv_group(input, conv_with_batchnorm=False, conv_batchnorm_drop_rate=0, pool_stride=1, - pool_type=None): + pool_type=None, + param_attr=None): """ Image Convolution Group, Used for vgg net. @@ -357,6 +358,7 @@ def img_conv_group(input, :param conv_with_batchnorm: :param pool_stride: :param pool_type: + :param param_attr: :return: """ tmp = input @@ -397,6 +399,7 @@ def __extend_list__(obj): padding=conv_padding[i], filter_size=conv_filter_size[i], num_filters=conv_num_filter[i], + param_attr = param_attr, **extra_kwargs) # logger.debug("tmp.num_filters = %d" % tmp.num_filters) From 21a3c9d6f49c20a5ff1945f20c918326b10065a8 Mon Sep 17 00:00:00 2001 From: zlx Date: Fri, 21 Jul 2017 16:55:22 +0800 Subject: [PATCH 2/4] add the comments for img_conv_groups --- .../paddle/trainer_config_helpers/networks.py | 49 ++++++++++++------- 1 file changed, 31 insertions(+), 18 deletions(-) diff --git a/python/paddle/trainer_config_helpers/networks.py b/python/paddle/trainer_config_helpers/networks.py index 1032569b2bfa5..95f3a3f8f3c06 100755 --- a/python/paddle/trainer_config_helpers/networks.py +++ b/python/paddle/trainer_config_helpers/networks.py @@ -345,21 +345,34 @@ def img_conv_group(input, """ Image Convolution Group, Used for vgg net. - TODO(yuyang18): Complete docs - - :param conv_batchnorm_drop_rate: - :param input: - :param conv_num_filter: - :param pool_size: - :param num_channels: - :param conv_padding: - :param conv_filter_size: - :param conv_act: - :param conv_with_batchnorm: - :param pool_stride: - :param pool_type: - :param param_attr: - :return: + :param conv_batchnorm_drop_rate: if conv_with_batchnorm[i] is true, + conv_batchnorm_drop_rate[i] represents the drop rate of each batch norm. + :type conv_batchnorm_drop_rate: list + :param input: layer's input. + :type input: LayerOutput + :param conv_num_filter: output channels num. + :type conv_num_filter: int + :param pool_size: pooling filter size. + :type pool_size: int + :param num_channels: input channels num. + :type num_channels: int + :param conv_padding: convolution padding size. + :type conv_padding: int + :param conv_filter_size: convolution filter size. + :type conv_filter_size: int + :param conv_act: activation funciton after convolution. + :type conv_act: BaseActivation + :param conv_with_batchnorm: conv_with_batchnorm[i] represents + if there is a batch normalization after each convolution. + :type conv_with_batchnorm: list + :param pool_stride: pooling stride size. + :type pool_stride: int + :param pool_type: pooling type. + :type pool_type: BasePoolingType + :param param_attr: see img_conv_layer for details. + :type param_attr: ParameterAttribute + :return: Layer's output + :type: LayerOutput """ tmp = input @@ -399,7 +412,7 @@ def __extend_list__(obj): padding=conv_padding[i], filter_size=conv_filter_size[i], num_filters=conv_num_filter[i], - param_attr = param_attr, + param_attr=param_attr, **extra_kwargs) # logger.debug("tmp.num_filters = %d" % tmp.num_filters) @@ -1392,7 +1405,7 @@ def inputs(layers, *args): if len(args) != 0: layers.extend(args) - Inputs(*[l.name for l in layers]) + Inputs(* [l.name for l in layers]) def outputs(layers, *args): @@ -1442,7 +1455,7 @@ def __dfs_travel__(layer, assert len(layers) > 0 if HasInputsSet(): # input already set - Outputs(*[l.name for l in layers]) + Outputs(* [l.name for l in layers]) return # just return outputs. if len(layers) != 1: From 5f32cc10c2fa03c0c652ade733518434fe6de12a Mon Sep 17 00:00:00 2001 From: Zhaolong Xing Date: Fri, 21 Jul 2017 18:18:08 +0800 Subject: [PATCH 3/4] Update networks.py modify the format --- python/paddle/trainer_config_helpers/networks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/paddle/trainer_config_helpers/networks.py b/python/paddle/trainer_config_helpers/networks.py index 95f3a3f8f3c06..2272c052f87f7 100755 --- a/python/paddle/trainer_config_helpers/networks.py +++ b/python/paddle/trainer_config_helpers/networks.py @@ -1405,7 +1405,7 @@ def inputs(layers, *args): if len(args) != 0: layers.extend(args) - Inputs(* [l.name for l in layers]) + Inputs(*[l.name for l in layers]) def outputs(layers, *args): @@ -1455,7 +1455,7 @@ def __dfs_travel__(layer, assert len(layers) > 0 if HasInputsSet(): # input already set - Outputs(* [l.name for l in layers]) + Outputs(*[l.name for l in layers]) return # just return outputs. if len(layers) != 1: From 18f4d24d0d111851b890c7a90020c0ddb115b74c Mon Sep 17 00:00:00 2001 From: zlx Date: Mon, 24 Jul 2017 10:46:25 +0800 Subject: [PATCH 4/4] moidify comment of im_conv_group --- python/paddle/trainer_config_helpers/networks.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/python/paddle/trainer_config_helpers/networks.py b/python/paddle/trainer_config_helpers/networks.py index 95f3a3f8f3c06..28a71cf788f2b 100755 --- a/python/paddle/trainer_config_helpers/networks.py +++ b/python/paddle/trainer_config_helpers/networks.py @@ -369,7 +369,8 @@ def img_conv_group(input, :type pool_stride: int :param pool_type: pooling type. :type pool_type: BasePoolingType - :param param_attr: see img_conv_layer for details. + :param param_attr: Convolution param attribute. + None means default attribute. :type param_attr: ParameterAttribute :return: Layer's output :type: LayerOutput