使用 QSUB 和 bash 文件打印 Keras 的训练进度
Printing training progress with Keras using QSUB and a bash file
我能够 运行 一个 python 脚本,该脚本使用 Keras/Tensorflow 和以下 bash 脚本来训练模型:
#!/bin/bash
#PBS -N Tarea_UNET
#PBS -l nodes=1:ppn=4:gpus=1
cd $PBS_O_WORKDIR
source $ANACONDA3/activate inictel_uni
python U-NET.py
在 "U-NET.py" 中,训练函数是这样的:
history=model.fit(train_B,train_A, epochs = 200, batch_size = 20, validation_split=0.052631578, shuffle=True)
问题是我无法可视化帮助我监控指标或查看估计训练时间的训练进度,我必须等到整个过程完成。 "qstat" 只给我 运行 编码的时间,所以没用。你有什么想法?
一种简单的方法是为 Keras 提供回调以在正确的时间调用。您可以在此回调中执行任何您想要的日志记录、进度报告。
这是高级文档和一些预制回调:https://keras.io/callbacks/
用法非常简单。您只需将回调列表传递给 fit
model.fit(x_train, y_train, ... callbacks=[<your_callbacks>])
查看文档末尾的示例。
您可以在此处查看所有可以覆盖的方法:https://github.com/keras-team/keras/blob/adc321b4d7a4e22f6bdb00b404dfe5e23d4887aa/keras/callbacks.py#L146
我能够 运行 一个 python 脚本,该脚本使用 Keras/Tensorflow 和以下 bash 脚本来训练模型:
#!/bin/bash
#PBS -N Tarea_UNET
#PBS -l nodes=1:ppn=4:gpus=1
cd $PBS_O_WORKDIR
source $ANACONDA3/activate inictel_uni
python U-NET.py
在 "U-NET.py" 中,训练函数是这样的:
history=model.fit(train_B,train_A, epochs = 200, batch_size = 20, validation_split=0.052631578, shuffle=True)
问题是我无法可视化帮助我监控指标或查看估计训练时间的训练进度,我必须等到整个过程完成。 "qstat" 只给我 运行 编码的时间,所以没用。你有什么想法?
一种简单的方法是为 Keras 提供回调以在正确的时间调用。您可以在此回调中执行任何您想要的日志记录、进度报告。
这是高级文档和一些预制回调:https://keras.io/callbacks/
用法非常简单。您只需将回调列表传递给 fit
model.fit(x_train, y_train, ... callbacks=[<your_callbacks>])
查看文档末尾的示例。
您可以在此处查看所有可以覆盖的方法:https://github.com/keras-team/keras/blob/adc321b4d7a4e22f6bdb00b404dfe5e23d4887aa/keras/callbacks.py#L146