提交 226ca797 编写于 作者: Q qiaolongfei

add plot cost in v2 api

上级 1bca3cfd
......@@ -29,11 +29,12 @@ import inference
import networks
import py_paddle.swig_paddle as api
import minibatch
import plot_curve
__all__ = [
'optimizer', 'layer', 'activation', 'parameters', 'init', 'trainer',
'event', 'data_type', 'attr', 'pooling', 'data_feeder', 'dataset', 'reader',
'topology', 'networks', 'infer'
'topology', 'networks', 'infer', 'plot_curve'
]
......
import matplotlib.pyplot as plt
from IPython import display
class PlotCost(object):
"""
append train and test cost in event_handle and then call plot.
"""
def __init__(self):
self.train_costs = ([], [])
self.test_costs = ([], [])
def plot(self):
plt.plot(*self.train_costs)
plt.plot(*self.test_costs)
title = []
if len(self.train_costs[0]) > 0:
title.append('Train Cost')
if len(self.test_costs[0]) > 0:
title.append('Test Cost')
plt.legend(title, loc='upper left')
display.clear_output(wait=True)
display.display(plt.gcf())
plt.gcf().clear()
def append_train_cost(self, step, cost):
self.train_costs[0].append(step)
self.train_costs[1].append(cost)
def append_test_cost(self, step, cost):
self.test_costs[0].append(step)
self.test_costs[1].append(cost)
def reset(self):
self.train_costs = ([], [])
self.test_costs = ([], [])
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册