Skip to content

Commit 4ae7ea0

Browse files
authored
cherry pick, fix dygraph api doc, test=release/1.5
BackwardStrategy dygraph.nn dygraph.checkpoint
1 parent 3cd78f6 commit 4ae7ea0

File tree

4 files changed

+146
-146
lines changed

4 files changed

+146
-146
lines changed

paddle/fluid/API.spec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -731,8 +731,8 @@ paddle.fluid.dygraph.Tracer.train_mode (ArgSpec(args=['self'], varargs=None, key
731731
paddle.fluid.dygraph.start_gperf_profiler (ArgSpec(args=[], varargs=None, keywords=None, defaults=None), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))
732732
paddle.fluid.dygraph.stop_gperf_profiler (ArgSpec(args=[], varargs=None, keywords=None, defaults=None), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))
733733
paddle.fluid.dygraph.prepare_context (ArgSpec(args=['strategy'], varargs=None, keywords=None, defaults=(None,)), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))
734-
paddle.fluid.dygraph.save_persistables (ArgSpec(args=['model_dict', 'dirname', 'optimizers'], varargs=None, keywords=None, defaults=('save_dir', None)), ('document', 'bdeefe733228f5f2d4a8f8c61a5956cf'))
735-
paddle.fluid.dygraph.load_persistables (ArgSpec(args=['dirname'], varargs=None, keywords=None, defaults=('save_dir',)), ('document', 'fb79b050b5eb52fa9c5fdccefe521aa1'))
734+
paddle.fluid.dygraph.save_persistables (ArgSpec(args=['model_dict', 'dirname', 'optimizers'], varargs=None, keywords=None, defaults=('save_dir', None)), ('document', '7f526f879139a14cda8e0b5a9171f264'))
735+
paddle.fluid.dygraph.load_persistables (ArgSpec(args=['dirname'], varargs=None, keywords=None, defaults=('save_dir',)), ('document', '2574d50a7a9f89fb0d74ddf73d8128f0'))
736736
paddle.fluid.dygraph.NoamDecay.__init__ (ArgSpec(args=['self', 'd_model', 'warmup_steps', 'begin', 'step', 'dtype'], varargs=None, keywords=None, defaults=(1, 1, 'float32')), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))
737737
paddle.fluid.dygraph.NoamDecay.create_lr_var (ArgSpec(args=['self', 'lr'], varargs=None, keywords=None, defaults=None), ('document', '013bc233558149d0757b3df57845b866'))
738738
paddle.fluid.dygraph.NoamDecay.step (ArgSpec(args=['self'], varargs=None, keywords=None, defaults=None), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))

paddle/fluid/pybind/imperative.cc

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -162,22 +162,23 @@ void BindImperative(pybind11::module *m_ptr) {
162162
1. :code:`sort_sum_gradient`, which will sum the gradient by the reverse order of trace.
163163
164164
Examples:
165-
.. code-block:: python
166-
167-
import numpy as np
168-
import paddle.fluid as fluid
169-
from paddle.fluid import FC
170-
171-
x = np.ones([2, 2], np.float32)
172-
with fluid.dygraph.guard():
173-
inputs2 = []
174-
for _ in range(10):
175-
inputs2.append(fluid.dygraph.base.to_variable(x))
176-
ret2 = fluid.layers.sums(inputs2)
177-
loss2 = fluid.layers.reduce_sum(ret2)
178-
backward_strategy = fluid.dygraph.BackwardStrategy()
179-
backward_strategy.sort_sum_gradient = True
180-
loss2.backward(backward_strategy)
165+
166+
.. code-block:: python
167+
168+
import numpy as np
169+
import paddle.fluid as fluid
170+
from paddle.fluid import FC
171+
172+
x = np.ones([2, 2], np.float32)
173+
with fluid.dygraph.guard():
174+
inputs2 = []
175+
for _ in range(10):
176+
inputs2.append(fluid.dygraph.base.to_variable(x))
177+
ret2 = fluid.layers.sums(inputs2)
178+
loss2 = fluid.layers.reduce_sum(ret2)
179+
backward_strategy = fluid.dygraph.BackwardStrategy()
180+
backward_strategy.sort_sum_gradient = True
181+
loss2.backward(backward_strategy)
181182
)DOC");
182183
backward_strategy.def(py::init())
183184
.def_property("sort_sum_gradient",

python/paddle/fluid/dygraph/checkpoint.py

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -43,35 +43,38 @@ def save_persistables(model_dict, dirname='save_dir', optimizers=None):
4343
optimizers(fluid.Optimizer|list(fluid.Optimizer)|None): The optimizers to be saved
4444
4545
Returns:
46+
None
4647
4748
Examples:
49+
4850
.. code-block:: python
49-
ptb_model = PtbModel(
51+
52+
ptb_model = PtbModel(
5053
hidden_size=hidden_size,
5154
vocab_size=vocab_size,
5255
num_layers=num_layers,
5356
num_steps=num_steps,
5457
init_scale=init_scale)
55-
sgd = fluid.optimizer.SGD(learning_rate=0.01)
56-
x_data = np.arange(12).reshape(4, 3).astype('int64')
57-
y_data = np.arange(1, 13).reshape(4, 3).astype('int64')
58-
x_data = x_data.reshape((-1, num_steps, 1))
59-
y_data = y_data.reshape((-1, 1))
60-
init_hidden_data = np.zeros(
58+
sgd = fluid.optimizer.SGD(learning_rate=0.01)
59+
x_data = np.arange(12).reshape(4, 3).astype('int64')
60+
y_data = np.arange(1, 13).reshape(4, 3).astype('int64')
61+
x_data = x_data.reshape((-1, num_steps, 1))
62+
y_data = y_data.reshape((-1, 1))
63+
init_hidden_data = np.zeros(
6164
(num_layers, batch_size, hidden_size), dtype='float32')
62-
init_cell_data = np.zeros(
65+
init_cell_data = np.zeros(
6366
(num_layers, batch_size, hidden_size), dtype='float32')
64-
x = to_variable(x_data)
65-
y = to_variable(y_data)
66-
init_hidden = to_variable(init_hidden_data)
67-
init_cell = to_variable(init_cell_data)
68-
dy_loss, last_hidden, last_cell = ptb_model(x, y, init_hidden,
67+
x = to_variable(x_data)
68+
y = to_variable(y_data)
69+
init_hidden = to_variable(init_hidden_data)
70+
init_cell = to_variable(init_cell_data)
71+
dy_loss, last_hidden, last_cell = ptb_model(x, y, init_hidden,
6972
init_cell)
70-
dy_loss.backward()
71-
sgd.minimize(dy_loss)
72-
ptb_model.clear_gradient()
73-
param_path = "./my_paddle_model"
74-
fluid.dygraph.save_persistables(ptb_model.state_dict(), dirname=param_path, sgd)
73+
dy_loss.backward()
74+
sgd.minimize(dy_loss)
75+
ptb_model.clear_gradient()
76+
param_path = "./my_paddle_model"
77+
fluid.dygraph.save_persistables(ptb_model.state_dict(), dirname=param_path, sgd)
7578
"""
7679
if isinstance(model_dict, collections.OrderedDict):
7780
_save_var_to_file(model_dict, optimizers, dirname, None)
@@ -95,13 +98,15 @@ def load_persistables(dirname='save_dir'):
9598
optimizer dict: The optimizer
9699
97100
Examples:
98-
.. code-block:: python
99-
my_layer = layer(fluid.Layer)
100-
param_path = "./my_paddle_model"
101-
sgd = SGDOptimizer(learning_rate=1e-3)
102-
param_dict, optimizer_dict = fluid.dygraph.load_persistables(my_layer.parameters(), param_path)
103-
param_1 = param_dict['PtbModel_0.w_1']
104-
sgd.load(optimizer_dict)
101+
102+
.. code-block:: python
103+
104+
my_layer = layer(fluid.Layer)
105+
param_path = "./my_paddle_model"
106+
sgd = SGDOptimizer(learning_rate=1e-3)
107+
param_dict, optimizer_dict = fluid.dygraph.load_persistables(my_layer.parameters(), param_path)
108+
param_1 = param_dict['PtbModel_0.w_1']
109+
sgd.load(optimizer_dict)
105110
106111
"""
107112
return _load_var_from_file(dirname)

0 commit comments

Comments
 (0)