GeophyAI

Python与地球物理数据处理

0%

Tensorboard记录Loss变化

利用Tensorboard记录Loss值

1
2
3
运行环境:
tensorflow==1.14.0
keras==2.2.5

构建模型

1
2
CNN = build_cnn()
# type(CNN) = keras.engine.training.Model

log记录函数

1
2
3
4
5
6
7
8
def write_log(callback, names, logs, batch_no):
for name, value in zip(names, logs):
summary = tf.Summary()
summary_value = summary.value.add()
summary_value.simple_value = value
summary_value.tag = name
callback.writer.add_summary(summary, batch_no)
callback.writer.flush()

创建Tensorboard记录

1
2
3
# log_path = './logs'
callback = TensorBoard(log_path)
callback.set_model(CNN)

在训练过程中记录Loss

1
2
3
4
5
6
7
8
9
datasize = X.shape[0]
batches = datasize//batch_size
for epoch in range(epochs):
for batch in range(batches):
loss = CNN.train_on_batch(x, y)
write_log(callback,
CNN.metrics_names,
loss,
epoch * batches + batch)