Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Tensorflow JS第一预测延迟_Javascript_Tensorflow_Tensorflow.js - Fatal编程技术网

Javascript Tensorflow JS第一预测延迟

Javascript Tensorflow JS第一预测延迟,javascript,tensorflow,tensorflow.js,Javascript,Tensorflow,Tensorflow.js,一旦我成功加载TensorflowJS模型,第一个预测总是有1-2秒的延迟。这仅在第一次全局预测时发生。假设我有两个模型,我使用model 1进行预测,然后使用model 2,我将使用model 1获得第一次预测的延迟,但不使用model 2的第一次预测 const prediction = model.predict(X[m][i]).dataSync()[0] 我在预测之前创建了所有的输入张量,所以延迟必须完全来自预测组件。我假设正在进行某种初始化。如何在第一次预测之前删除延迟/初始化?第

一旦我成功加载TensorflowJS模型,第一个预测总是有1-2秒的延迟。这仅在第一次全局预测时发生。假设我有两个模型,我使用
model 1
进行预测,然后使用
model 2
,我将使用
model 1
获得第一次预测的延迟,但不使用
model 2
的第一次预测

const prediction = model.predict(X[m][i]).dataSync()[0]

我在预测之前创建了所有的输入张量,所以延迟必须完全来自预测组件。我假设正在进行某种初始化。如何在第一次预测之前删除延迟/初始化?

第一次预测必须在后端初始化权重。通常建议对模型进行预热,以防止首次预测期间出现延迟。热身只是一个带有虚拟数据的预测,比如
tf.ones
tf.random
。这种预测的结果并不重要。但是做出这样的预测会使所有的重量张量都被初始化,使模型更快地为下一个预测做好准备

const model=wait tf.loadLayersModel(modelUrl);
//在使用真实数据之前对模型进行预热。
常数warmupResult=model.predict(tf.zeros(inputShape));
warmupResult.dataSync();//我们不在乎结果
热处理;
//现在,我们可以使用该模型进行实际预测
//第二个predict()将快得多
const result=model.predict(用户数据);

该死,我希望有一个更优雅的解决方案,也许是“初始化”方法或其他什么。但这确实很管用,谢谢!