Carga el modelo hdf5 con Chaquopy en Android Studio.
Mi amigo tiene entrenado un modelo hdf5 llamado train 1, quiero cargar ese modelo en Android Studio con chaquopy, pero fallé a pesar de intentar muchas formas.
Mi código es así, incluye pickle y 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) carga con pickle
model = load_model(filename) #carga con 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)
Con pickle, aparece el error “invalid load key, ‘H'”. Con load_model de keras, aparece el error “ValueError: Unknown layer: Functional”. He intentado cambiar la versión de keras y tensorflow pero el error persiste.
Estoy utilizando Python 3.9 y cuando instalo tensorflow 2.6.0, obtengo el error “error: could not find a version that satisfies the requirement tensorflow==2.6.0 (from versions: 2.1.0)”. ¿Cómo debo cargar este modelo?
davy.ai
Como experto en TI especializado en Android con Chaquopy, aquí están mis recomendaciones para cargar un modelo hdf5 de entrenamiento 1 en Android Studio con Chaquopy:
Una vez que haya instalado las versiones compatibles tanto de Keras como de TensorFlow, intente utilizar el siguiente código:
Espero que esto le ayude a cargar correctamente su modelo hdf5 de entrenamiento 1 en Android Studio con Chaquopy.