Javascript 保存TensorFlowJS MobileNet+;KNN到TFLite

Javascript 保存TensorFlowJS MobileNet+;KNN到TFLite,javascript,tensorflow-lite,knn,tensorflow.js,mobilenet,Javascript,Tensorflow Lite,Knn,Tensorflow.js,Mobilenet,我使用TensorFlowJS在MobileNet logits结果的基础上训练了KNN 我想知道如何将MobileNet+KNN的结果导出到TFLite模型 constknn=knncclassifier.create() const net=wait mobilenet.load() 常量handleTrain=(imgEl,标签)=>{ const image=tf.browser.fromPixels(imgEl); 常量激活=净推断(图像,真); knn.加法器示例(激活、标签) }

我使用TensorFlowJS在MobileNet logits结果的基础上训练了KNN

我想知道如何将MobileNet+KNN的结果导出到TFLite模型

constknn=knncclassifier.create()
const net=wait mobilenet.load()
常量handleTrain=(imgEl,标签)=>{
const image=tf.browser.fromPixels(imgEl);
常量激活=净推断(图像,真);
knn.加法器示例(激活、标签)
}
1。保存模型 保存模型此示例将文件保存到本机文件系统,或者如果需要将其保存到其他位置,请选中

在此步骤之后,您应该有一个JSON文件和一个二进制权重文件

2.将TensorFlow.js图层模型转换为保存的模型格式
tfjs_model.json
是从上一步获得的
model.json
路径,而
saved_model
是要保存SavedModel格式的路径。
您可以从中阅读有关使用TensorflowJS转换器的更多信息

3.从SavedModel格式转换为TFLite格式 建议使用从SavedModel格式转换为TFLite的方法


嘿,ty,谢谢你的回答。有没有一种方法可以只在js中完成,或者python是唯一的方法?另一件事是当我们做
wait model.save时file:///path/to/my-model');。这是否也会保存KNN权重?而且不仅仅是MobileNet权重?据我所知,转换只在Python中。KNN的工作原理是查找查询与数据中所有示例之间的距离,选择最接近查询的指定数量示例(K),然后投票选择最频繁的标签,这样就不会因为没有权重而无法保存权重。
await model.save('file:///path/to/my-model');
tensorflowjs_converter --input_format=tfjs_layers_model --output_format=keras_saved_model tfjs_model.json saved_model
import tensorflow as tf

# Convert the model
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) # path to the SavedModel directory
tflite_model = converter.convert()

# Save the model.
with open('model.tflite', 'wb') as f:
  f.write(tflite_model)