首页 > 解决方案 > 如何修复“model.predict 不是函数”(tensorflow.js)?

问题描述

我想测试下面没有错误代码:

'use strict'

const tf = require('@tensorflow/tfjs');
require('@tensorflow/tfjs-node');
const { createCanvas, createImageData } = require('canvas');

const canvas = createCanvas(800, 600);

async function load_model() {
    let m = await tf.loadLayersModel('path/to/model.json')
    return m;
}

let model = load_model();

model.then(function (res) {
    const example = tf.browser.fromPixels(canvas);
    const prediction = model.predict(example);
    console.log(prediction);
}, function (err) {
    console.log(err);
});

但我有一个)它告诉我们TypeError: model.predict is not a function。为什么会这样?我使用这个链接作为教程。

标签: javascripttensorflow.js

解决方案


predict是在那时返回的承诺上

model.then(function (res) {
    const example = tf.browser.fromPixels(canvas);
    const prediction = res.predict(example);
    console.log(prediction);
}, function (err) {
    console.log(err);
});

推荐阅读