diff --git a/python/paddle/fluid/dygraph/container.py b/python/paddle/fluid/dygraph/container.py index dc43062aa9f1797f78532680ab3675da84c15c86..bfcb43f5f677ce3065d2fcfa064b694776d2cc4a 100644 --- a/python/paddle/fluid/dygraph/container.py +++ b/python/paddle/fluid/dygraph/container.py @@ -98,15 +98,15 @@ class ParameterList(Layer): Examples: .. code-block:: python - import paddle.fluid as fluid + import paddle import numpy as np - class MyLayer(fluid.Layer): + class MyLayer(paddle.nn.Layer): def __init__(self, num_stacked_param): super(MyLayer, self).__init__() # create ParameterList with iterable Parameters - self.params = fluid.dygraph.ParameterList( - [fluid.layers.create_parameter( + self.params = paddle.nn.ParameterList( + [paddle.create_parameter( shape=[2, 2], dtype='float32')] * num_stacked_param) def forward(self, x): @@ -118,27 +118,26 @@ class ParameterList(Layer): "Y": p}, outputs={"Out": tmp}, attrs={"x_num_col_dims": 1, - "y_num_col_dims": 1}) + "y_num_col_dims": 1}) x = tmp return x data_np = np.random.uniform(-1, 1, [5, 2]).astype('float32') - with fluid.dygraph.guard(): - x = fluid.dygraph.to_variable(data_np) - num_stacked_param = 4 - model = MyLayer(num_stacked_param) - print(len(model.params)) # 4 - res = model(x) - print(res.shape) # [5, 2] - - replaced_param = fluid.layers.create_parameter(shape=[2, 3], dtype='float32') - model.params[num_stacked_param - 1] = replaced_param # replace last param - res = model(x) - print(res.shape) # [5, 3] - model.params.append(fluid.layers.create_parameter(shape=[3, 4], dtype='float32')) # append param - print(len(model.params)) # 5 - res = model(x) - print(res.shape) # [5, 4] + x = paddle.to_tensor(data_np) + num_stacked_param = 4 + model = MyLayer(num_stacked_param) + print(len(model.params)) # 4 + res = model(x) + print(res.shape) # [5, 2] + + replaced_param = paddle.create_parameter(shape=[2, 3], dtype='float32') + model.params[num_stacked_param - 1] = replaced_param # replace last param + res = model(x) + print(res.shape) # [5, 3] + model.params.append(paddle.create_parameter(shape=[3, 4], dtype='float32')) # append param + print(len(model.params)) # 5 + res = model(x) + print(res.shape) # [5, 4] """ def __init__(self, parameters=None): @@ -182,14 +181,15 @@ class LayerList(Layer): Examples: .. code-block:: python - import paddle.fluid as fluid + + import paddle import numpy as np - class MyLayer(fluid.Layer): + class MyLayer(paddle.nn.Layer): def __init__(self): super(MyLayer, self).__init__() - self.linears = fluid.dygraph.LayerList( - [fluid.dygraph.Linear(10, 10) for i in range(10)]) + self.linears = paddle.nn.LayerList( + [paddle.nn.Linear(10, 10) for i in range(10)]) def forward(self, x): # LayerList can act as an iterable, or be indexed using ints @@ -238,13 +238,13 @@ class LayerList(Layer): Examples: .. code-block:: python - import paddle.fluid as fluid - with fluid.dygraph.guard(): - linears = fluid.dygraph.LayerList([fluid.dygraph.Linear(10, 10) for i in range(10)]) - another = fluid.dygraph.Linear(10, 10) - linears.append(another) - print(len(linears)) # 11 + import paddle + + linears = paddle.nn.LayerList([paddle.nn.Linear(10, 10) for i in range(10)]) + another = paddle.nn.Linear(10, 10) + linears.append(another) + print(len(linears)) # 11 """ self.add_sublayer(str(len(self)), sublayer) return self @@ -259,13 +259,13 @@ class LayerList(Layer): Examples: .. code-block:: python - import paddle.fluid as fluid - with fluid.dygraph.guard(): - linears = fluid.dygraph.LayerList([fluid.dygraph.Linear(10, 10) for i in range(10)]) - another = fluid.dygraph.Linear(10, 10) - linears.insert(3, another) - print(linears[3] is another) # True + import paddle + + linears = paddle.nn.LayerList([paddle.nn.Linear(10, 10) for i in range(10)]) + another = paddle.nn.Linear(10, 10) + linears.insert(3, another) + print(linears[3] is another) # True """ assert isinstance(index, int) and \ 0 <= index < len(self._sub_layers), \ @@ -283,14 +283,14 @@ class LayerList(Layer): Examples: .. code-block:: python - import paddle.fluid as fluid - - with fluid.dygraph.guard(): - linears = fluid.dygraph.LayerList([fluid.dygraph.Linear(10, 10) for i in range(10)]) - another_list = fluid.dygraph.LayerList([fluid.dygraph.Linear(10, 10) for i in range(5)]) - linears.extend(another_list) - print(len(linears)) # 15 - print(another_list[0] is linears[10]) # True + + import paddle + + linears = paddle.nn.LayerList([paddle.nn.Linear(10, 10) for i in range(10)]) + another_list = paddle.nn.LayerList([paddle.nn.Linear(10, 10) for i in range(5)]) + linears.extend(another_list) + print(len(linears)) # 15 + print(another_list[0] is linears[10]) # True """ offset = len(self) for i, sublayer in enumerate(sublayers):