Вот простая функция, которую я просто записал, какие чтения .hdf5 файл, сгенерированный save_weights, функционирует в крисе, и возвращает dict с именами слоя и весами:
def read_hdf5(path):
weights = {}
keys = []
with h5py.File(path, 'r') as f: # open file
f.visit(keys.append) # append all keys to list
for key in keys:
if ':' in key: # contains data if ':' in key
print(f[key].name)
weights[f[key].name] = f[key].value
return weights
https://gist.github.com/Attila94/fb917e03b04035f3737cc8860d9e9f9b.
не протестировали его полностью, но делает задание для меня.
from keras.models import load_model
h= load_model('FILE_NAME.h5')
Для чтения содержания .hdf5 файла как массив можно сделать что-то следующим образом
> import numpy as np
> myarray = np.fromfile('file.hdf5', dtype=float)
> print(myarray)