杰敢敢 2021-11-07 14:35 采纳率: 0%
浏览 2176
已结题

h5py文件报错OSError: Unable to open file (file signature not found)

训练部分代码如下:

model training 模型训练

autoencoder.fit(x=x_train, y=x_train, batch_size=32, epochs=100,verbose = 1, validation_split=0.1)

model save 模型保存

save encoder

modelsave1 = './Modelsave/encoder.h5'
encoder.save(modelsave1)

save decoder

modelsave2 = './Modelsave/decoder.h5'
decoder.save(modelsave2)

model test 模型测试

y_test = autoencoder.predict(x_test, batch_size=32)
print('The NMSE is ' + np.str(NMSE(x_test, y_test)))

环境是 3060本 双显卡 python3.7 windows环境下 tensorflow-gou==2.0 numpy==1.18.1(说明里指定) h5py==2.10.0(说明里指定) Sklearn==0.23.2(说明里指定) cuda==10.0 cudnn与cuda对应

数据选用的是mat文件,之前是32w×1024的,电脑跑不动,我用matlab2020a打开并改小了,改成了1024×1024的了,文件名与格式与修改之前一模一样,名称:“Hdata” 文件类型:“MATLAB Data (.mat)”

然后运行就报错
File "h5py_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "h5py\h5f.pyx", line 88, in h5py.h5f.open
OSError: Unable to open file (file signature not found)

去网上搜过好多种改正方法 都试过了 不奏效
试过 将h5py版本改成最新的 也改成过2.8.0(说明上写的是用2.10.0)没有用
还有说 要重新训练的 我这个就是一开始的训练 已经报错了 不能重新训练
然后 Modelsave里面一开始就有一个 decoder.h5文件和一个 encoder.h5文件,我也试过将它们都删了,结果与删之前报错一致
网上说还一种方法 调用scipy库我也使用了 打了一行这个代码
import scipy.io
matr = scipy.io.loadmat(matFile)
print(matr.keys())
结果还是没用

恳请帮忙解答一下 刚开始入门深度学习 跑的是导师给的代码

  • 写回答

2条回答 默认 最新

  • 杰敢敢 2021-11-07 15:24
    关注

    感谢大家 已经找到解决方法了

    评论

报告相同问题?

问题事件

  • 系统已结题 11月15日
  • 创建了问题 11月7日

悬赏问题

  • ¥15 arduino控制ps2手柄一直报错
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥85 maple软件,solve求反函数,出现rootof怎么办?
  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥50 基于极化码的电力线通信系统仿真