我当前使用此脚本将我的H5模型转换为TFLite:
# CONVERTING TO TFLITE FORMAT
g.save(os.path.join(save_dir, 'full_generator_{}_{}.h5'.format(epoch_number, current_loss)), include_optimizer=False)
model = tf.keras.models.load_model(
os.path.join(save_dir, 'full_generator_{}_{}.h5'.format(epoch_number, current_loss)), custom_objects={'ReflectionPadding2D': ReflectionPadding2D})
converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
open(os.path.join(save_dir, 'full_generator_{}_{}.tflite'.format(epoch_number, current_loss)),
"wb").write(tflite_model)
# /CONVERTING TO TFLITE FORMAT
我的问题是H5模型的输入形状尺寸为256x256x3。我想要的是转换后的TFLite模型的输入形状尺寸为800x800x3。
我知道冻结图TF函数是可能的。
但是load_model
有可能吗?
答案 0 :(得分:0)
您可以使用新的输入签名将模型包装在tf.function中,并改为转换function getParentPaths(pathList) {
const splitPaths = pathList.map(path => {
return path.split("/")[1];
});
const parentPaths = splitPaths.filter((item, index) => {
return splitPaths.indexOf(item) === index;
});
console.log(parentPaths);
}
。
from_concrete_functions
如果您的模型不支持更改尺寸,您还可以创建一个tf。函数,以调整输入大小以匹配模型所需的形状。