我正在使用TensorFlow.js,我感兴趣的是获取嵌入,而不是像MobileNet的https://github.com/tensorflow/tfjs-models/tree/master/mobilenet (“获取嵌入”)中描述的预训练模型的逻辑。
使用经典的MobileNet模型加载const model = await mobilenet.load(),例如,你可以使用model.infer(image, 'conv_preds'),它工作得很好,你可以进行迁移学习。
但是,对于我使用loadLayersModel()加载的离线模型,推断方法不可用。在查看了一下(for example)之后,我尝试用get_layer访问该层的输出,但没有成功。
我是否需要创建并导出一个新模型,该模型输出我感兴趣的层,然后将其作为新的layersModel加载并使用?没有别的办法了吗?
如有任何建议,不胜感激。
发布于 2020-09-22 23:14:52
尝尝这个
async function loadMobilenet() {
const mobilenet = await tf.loadLayersModel('https://storage.googleapis.com/tfjs-models/tfjs/mobilenet_v1_0.25_224/model.json');
const layer = mobilenet.getLayer('conv_pw_13_relu');
return tf.model({inputs: mobilenet.inputs, outputs: layer.output}); }要获取嵌入,请执行以下操作:
const activation = mobilenet.predict(img);https://stackoverflow.com/questions/63988992
复制相似问题