#python #tensorflow #tensorflow.js
#python #tensorflow #tensorflow.js
Вопрос:
Я пытаюсь экспортировать модель между python и tensorflow.js, в python у меня есть следующая ячейка с их выводами
Загрузить массив Img
img = np.array(img)
Сохраните массив в текстовом файле, чтобы использовать его позже внутри tensorflow.js модель
img = np.expand_dims(img, axis=0) with open('data.txt', 'w') as outfile: json.dump(np.array(img).tolist(), outfile)
Спрогнозируйте изображение с помощью модели
model.predict(np.array(img)).shape
(1, 512)
После этого я экспортирую модель со следующим кодом
tfjs.converters.save_keras_model(model, './model')
Чтобы загрузить модель на html-страницу, я использую следующий код:
lt;!DOCTYPE htmlgt; lt;htmlgt; lt;headgt; lt;meta charset="utf-8"gt; lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"gt; lt;meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes"gt; lt;script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@3.4.0/dist/tf.min.js"gt;lt;/scriptgt; lt;scriptgt; const face = [[[[[[251,....... const MODEL_URL = './model/model.json'; const modelLayer = tf.loadLayersModel(MODEL_URL); modelLayer.then(model =gt; console.log(model.predict(tf.ones(face)))) lt;/scriptgt; lt;/headgt; lt;bodygt; lt;div id='display'gt;lt;/divgt; lt;/bodygt; lt;/htmlgt;
Как вы можете видеть, face-это массив с предыдущим img, сохраненным с помощью кода python.
Проблема в том, что при выполнении этого кода я получил следующую ошибку:
Ошибка: Новая форма (251,252,247,250,251,246,249,250,245,249,250,245,248,249,244,248,249,244,
Вопрос в том, как я могу установить переменную face внутри model.predict
, чтобы получить прогноз, подобный коду python?
Я пытался с
modelLayer.then(model =gt; console.log(model.predict(tf.tensor(face))))
but I got the following error:
expected input_6 to have 4 dimension(s), but got array with shape [1,1,1,112,112,3]
Thanks