我的朋友已经训练1模型hdf5,我想加载该模型在Android工作室与chaquopy但失败,尽管尝试了很多方法.我的代码一样,包括pickle和keras:
import numpy as np
import pickle
from os.path import dirname, join
from keras.models import load_model
def predict(src):
filename = join(dirname(__file__),"best_model.hdf5")
pickle_in=open(filename,"rb")
#model = pickle.load(pickle_in) load with pickle
model = load_model(filename) #load with keras
samples, sample_rate = librosa.load(src, sr = 8000)
#classes = ['app', 'gmail', 'image', 'mess', 'phone']
#prob=model.predict(samples.reshape(1,8000,1))
#index=np.argmax(prob[0])
return len(samples)
使用pickle时,会出现错误“加载键'H'无效”。使用keras的load_model时,会出现错误“ValueError:未知层:我尝试更改keras和tensorflow的版本,但错误仍然存在。我使用Python 3.9,当我安装tensorflow 2.6.0时,它得到错误“error:找不到满足要求tensorflow==2.6.0的版本(来自版本:2.1.0)".我应该如何加载这个模型。
1条答案
按热度按时间w8f9ii691#
Chaquopy当前仅提供TensorFlow版本2.1.0,因此使用较新版本创建的模型可能不兼容。请尝试使用匹配版本的TensorFlow重新生成模型。
要在Chaquopy更新其TensorFlow版本时收到通知,您可以订阅this issue。