Trainer API¶
Parameters¶
- 
paddle.v2.parameters.create(layers)¶
- Create parameter pool by topology. - Parameters: - layers – - Returns: 
- 
class paddle.v2.parameters.Parameters¶
- Parameters is a dictionary contains Paddle’s parameter. The key of Parameters is the name of parameter. The value of Parameters is a plain - numpy.ndarry.- Basically usage is - data = paddle.layers.data(...) ... out = paddle.layers.fc(...) parameters = paddle.parameters.create(out) parameter_names = parameters.names() fc_mat = parameters.get('fc') print fc_mat - 
keys()¶
- keys are the names of each parameter. - Returns: - list of parameter name - Return type: - list 
 - 
names()¶
- names of each parameter. - Returns: - list of parameter name - Return type: - list 
 - 
has_key(key)¶
- has_key return true if there are such parameter name == key - Parameters: - key (basestring) – Parameter name - Returns: - True if contains such key 
 - 
get_shape(key)¶
- get shape of the parameter. - Parameters: - key (basestring) – parameter name - Returns: - parameter’s shape - Return type: - tuple 
 - 
get(parameter_name)¶
- Get parameter by parameter name. - Note: - It will always copy the parameter from C++ side. - Parameters: - parameter_name (basestring) – parameter name - Returns: - The parameter matrix. - Return type: - np.ndarray 
 - 
set(parameter_name, value)¶
- Set parameter by parameter name & matrix. - Parameters: - parameter_name (basestring) – parameter name
- value (np.ndarray) – parameter matrix
 - Returns: - Nothing. 
 - 
append_gradient_machine(gradient_machine)¶
- append gradient machine to parameters. This method is used internally in Trainer.train. - Parameters: - gradient_machine (api.GradientMachine) – Paddle C++ GradientMachine object. - Returns: 
 - 
serialize(name, f)¶
- Parameters: - name –
- f (file) –
 - Returns: 
 - 
deserialize(name, f)¶
- Parameters: - name –
- f (file) –
 - Returns: 
 
- 
Trainer¶
- 
class paddle.v2.trainer.SGD(cost, parameters, update_equation)¶
- Simple SGD Trainer. TODO(yuyang18): Complete comments - Parameters: - update_equation (paddle.v2.optimizer.Optimizer) – The optimizer object.
- cost (paddle.v2.config_base.Layer) – Target cost that neural network should be optimized.
- parameters (paddle.v2.parameters.Parameters) – The parameters dictionary.
 - 
train(reader, num_passes=1, event_handler=None, feeding=None)¶
- Training method. Will train num_passes of input data. - Parameters: - reader –
- num_passes – The total train passes.
- event_handler ((BaseEvent) => None) – Event handler. A method will be invoked when event occurred.
- feeding (dict) – Feeding is a map of neural network input name and array index that reader returns.
 - Returns: 
 
Event¶
All training events.
There are:
- BeginIteration
- EndIteration
- BeginPass
- EndPass
TODO(yuyang18): Complete it!
- 
class paddle.v2.event.TestResult(evaluator, cost)¶
- Result that trainer.test return. 
- 
class paddle.v2.event.BeginPass(pass_id)¶
- Event On One Pass Training Start. 
- 
class paddle.v2.event.EndPass(pass_id, evaluator)¶
- Event On One Pass Training Complete. 
- 
class paddle.v2.event.BeginIteration(pass_id, batch_id)¶
- Event On One Batch Training Start. 
- 
class paddle.v2.event.EndIteration(pass_id, batch_id, cost, evaluator)¶
- Event On One Batch Training Complete. 
Inference¶
- 
paddle.v2.infer(output_layer, parameters, input, feeding=None, field='value')¶
- Infer a neural network by given neural network output and parameters. The user should pass either a batch of input data or reader method. - Example usages: - result = paddle.infer(prediction, parameters, input=SomeData, batch_size=32) print result - Parameters: - output_layer (paddle.v2.config_base.Layer) – output of the neural network that would be inferred
- parameters (paddle.v2.parameters.Parameters) – parameters of the neural network.
- input (collections.Iterable) – input data batch. Should be a python iterable object, and each element is the data batch.
- feeding – Reader dictionary. Default could generate from input value.
- field (str) – The prediction field. It should in [value, ids]. value means return the prediction probabilities, ids means return the prediction labels. Default is value
 - Returns: - a numpy array - Return type: - numpy.ndarray 
