Add_config_parser_for_Conv3D_DeConv3D

revert-3824-remove_grad_op_type
chengduoZH 8 years ago
parent d5768ebc89
commit f715c740bf

@ -489,6 +489,7 @@ message LayerConfig {
// to indicate rectangle image data
optional uint64 height = 50;
optional uint64 width = 51;
optional uint64 depth = 57 [ default = 1 ];
// blank label used in ctc loss
optional uint32 blank = 52 [ default = 0 ];

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1406,7 +1406,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):
@ -1456,7 +1456,7 @@ def outputs(layers, *args):
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:

@ -0,0 +1,98 @@
from paddle.trainer_config_helpers import *
settings(batch_size=1000, learning_rate=1e-5)
num_channels = 3
filter_size = 3
filter_size_y = 3
filter_size_z = 3
stride = 2
stride_y = 2
stride_z = 2
padding = 1
padding_y = 1
padding_z = 1
groups = 1
data = data_layer(
name='data1', size=12096 * num_channels, height=48, width=42, depth=6)
conv3d = img_conv3d_layer(
input=data,
name='conv3d_1',
num_filters=16,
num_channels=num_channels,
filter_size=filter_size,
filter_size_y=filter_size,
filter_size_z=filter_size,
stride=stride,
stride_y=stride_y,
stride_z=stride_z,
padding=padding,
padding_y=padding_y,
padding_z=padding_z,
groups=groups,
bias_attr=True,
shared_biases=True,
trans=False,
layer_type="conv3d",
act=LinearActivation())
deconv3d = img_conv3d_layer(
input=data,
name='deconv3d_1',
num_filters=16,
num_channels=num_channels,
filter_size=filter_size,
filter_size_y=filter_size,
filter_size_z=filter_size,
stride=stride,
stride_y=stride_y,
stride_z=stride_z,
padding=padding,
padding_y=padding_y,
padding_z=padding_z,
groups=groups,
bias_attr=True,
shared_biases=True,
trans=True,
layer_type="deconv3d",
act=LinearActivation())
data = data_layer(name="input", size=8 * 16 * 16)
conv1 = img_conv_layer(
input=data,
filter_size=1,
filter_size_y=1,
num_channels=8,
num_filters=16,
stride=1,
bias_attr=False,
act=ReluActivation(),
layer_type="exconv")
conv2 = img_conv_layer(
input=data,
filter_size=1,
filter_size_y=1,
num_channels=8,
num_filters=16,
stride=1,
bias_attr=False,
act=ReluActivation(),
layer_type="exconv")
concat = concat_layer(input=[conv1, conv2])
conv = img_conv_layer(
input=data,
filter_size=1,
filter_size_y=1,
num_channels=8,
num_filters=16,
stride=1,
bias_attr=True,
act=LinearActivation(),
groups=2,
layer_type="exconv")
outputs(concat, conv)

@ -16,4 +16,6 @@ from paddle.trainer.config_parser import parse_config_and_serialize
if __name__ == '__main__':
parse_config_and_serialize(
'trainer_config_helpers/tests/layers_test_config.py', '')
'trainer_config_helpers/tests/configs/conv3d_deconv3d_test_config.py',
'')
# layers_test_config.py

Loading…
Cancel
Save