我正在使用神经网络,并且在代码中保存了以下文件:
ModelCheckpoint
:.hdf5 file
.h5 file
.csv file
.csv file
在过去的几周中,此代码一直运行良好,并且所有文件都已保存,没有任何问题。但是今天,我收到以下错误消息:
以下是代码和相应的错误:
丢失历史记录
df_hist.to_csv(out_filename + "_loss" + ext,index=False)
FileNotFoundError: [Errno 2] No such file or directory: '<my string file path>'
out_filename
=我为文件名生成的字符串,并且
ext
=扩展名(在这种情况下为.csv
。)
模型检查点
weights_filepath = "{}_weights.hdf5".format(out_filename)
check_point = ModelCheckpoint(filepath= weights_filepath,
verbose=1,
save_best_only=True)
OSError: Unable to create file (unable to open file: name = '<my string file path>', errno = 2, error message = 'No such file or directory', flags = 13, o_flags = 302)
尽管如此,模型文件(.h5
)仍保存在同一路径而没有任何问题!
我不了解预测文件,因为脚本在此之前退出。
我尝试过的事情
ModelCheckpoint
降级为keras
版本来解决2.2.4
错误。我也这样做了,但是没有解决。我目前在keras==2.3.1
和tensorflow==2.0.0
上。Path()
的字符串文件名从pathlib
转换为ModelCheckpoint
,但问题仍然存在。请让我知道是否需要更多代码。
编辑:
对于丢失历史记录,我将pandas数据框更改为一个numpy数组,并使用savetxt()
,如下所示:
df_hist_np = df_hist.values
np.savetxt(out_filename + ext, df_hist_np, delimiter=",")
这解决了问题,但是ModelCheckpoint
仍需要修复。