Rearrange event.

avx_docs
Yu Yang 8 years ago
parent 059a162be5
commit c8067ed586

@ -36,7 +36,7 @@ def main():
learning_rate=0.01, learning_method=AdamOptimizer())
def event_handler(event):
if isinstance(event, paddle.trainer.EndIteration):
if isinstance(event, paddle.event.EndIteration):
para = parameters['___fc_layer_2__.w0']
print "Pass %d, Batch %d, Cost %f, Weight Mean Of Fc 2 is %f" % (
event.pass_id, event.batch_id, event.cost, para.mean())
@ -44,7 +44,7 @@ def main():
else:
pass
trainer = paddle.trainer.SGDTrainer(update_equation=adam_optimizer)
trainer = paddle.trainer.SGD(update_equation=adam_optimizer)
trainer.train(train_data_reader=train_reader,
topology=model_config,

@ -15,8 +15,9 @@ import optimizer
import parameters
import py_paddle.swig_paddle as api
import trainer
import event
__all__ = ['optimizer', 'parameters', 'init', 'trainer']
__all__ = ['optimizer', 'parameters', 'init', 'trainer', 'event']
def init(**kwargs):

@ -0,0 +1,12 @@
__all__ = ['EndIteration']
class EndIteration(object):
"""
Event On One Batch Training Complete.
"""
def __init__(self, pass_id, batch_id, cost):
self.pass_id = pass_id
self.batch_id = batch_id
self.cost = cost

@ -6,19 +6,9 @@ from py_paddle import DataProviderConverter
from paddle.proto.ModelConfig_pb2 import ModelConfig
from . import optimizer as v2_optimizer
from . import parameters as v2_parameters
from . import event as v2_event
__all__ = ['ITrainer', 'SGDTrainer', 'EndIteration']
class EndIteration(object):
"""
Event On One Batch Training Complete.
"""
def __init__(self, pass_id, batch_id, cost):
self.pass_id = pass_id
self.batch_id = batch_id
self.cost = cost
__all__ = ['ITrainer', 'SGD']
def default_event_handler(event):
@ -35,7 +25,7 @@ class ITrainer(object):
raise NotImplementedError()
class SGDTrainer(ITrainer):
class SGD(ITrainer):
def __init__(self, update_equation):
"""
Simple SGD Trainer.
@ -110,7 +100,7 @@ class SGDTrainer(ITrainer):
cost = cost_vec.sum() / len(data_batch)
updater.finishBatch(cost)
event_handler(
EndIteration(
v2_event.EndIteration(
pass_id=pass_id, batch_id=batch_id, cost=cost))
updater.finishPass()

Loading…
Cancel
Save