Tensorflow.js是Google开发的开源工具包,用于在浏览器或节点平台上执行机器学习模型和深度学习神经网络。它还使开发人员能够在 JavaScript 中创建机器学习模型,并直接在浏览器中或通过 Node.js 使用它们。
函数 tf.loadLayersModel() 用于加载由 Layer 对象组成的模型,包括其拓扑和可选的权重。
用法:
tf.loadLayersModel(pathOrIOHandler, options?)
参数:
- pathOrIOHandler:可以使用以下两种形式之一:
- ModelAndWeightsConfig JSON 文件的字符串路径,以 TensorFlow.js 格式说明模型。对于 file://(tfjs-node-only)、http://和 https://架构,路径可以是绝对路径或相对路径。
- 一个 tf.io.IOHandler 对象,使用 load 方法加载模型工件。
- options (Object):可选的模型加载配置参数,包括:
- requestInit:RequestInit(选项)用于 HTTP 请求。
- onProgress:进度回调。
- fetchFunc:窗口的覆盖函数。
- strict (boolean):严格的加载模型:是否缺少或无关的重量都会导致错误。默认值是true。
- weightPathPrefix (string):权重文件路径前缀,默认源自模型 JSON 文件的路径。
- fromTFHub (boolean):是否应从 TF Hub 加载模块或模型。默认值为 false。
- weightUrlConverter:将权重文件的名称转换为其 URL 的异步方法。权重文件的名称记录在 model.json 的 weightsManifest.paths 字段中。默认情况下,权重文件假定为co-located,并带有model.json 文件。
返回值:Promise<tf.LayersModel>
示例 1:
Javascript
import * as tf from "@tensorflow/tfjs";
const model = await tf.loadLayersModel(
'https://storage.googleapis.com/tfjs-models/tfjs/mnist_transfer_cnn_v1/model.json');
model.summary();
输出:
示例 2:
Javascript
import * as tf from "@tensorflow/tfjs";
const input = tf.input({ shape: [4, 4, 4] });
const conv2DLayer = tf.layers.conv2d({ filters: 2, kernelSize: 2});
const output = conv2DLayer.apply(input);
const model = tf.model({ inputs: input, outputs: output });
console.log("Original Model's prediction:");
model.predict(tf.ones([1, 4, 4, 4])).print();
const path='file://./model'
const saveResults = await model.save(path);
const loadedModel = await tf.loadLayersModel(path);
console.log("Loaded Model's Prediction:");
model.predict(tf.ones([1, 4, 4, 4])).print();
输出:
Original Model's prediction: Tensor [[[[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]], [[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]], [[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]]]] Loaded Model's Prediction: Tensor [[[[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]], [[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]], [[-0.592868, 0.4749331], [-0.592868, 0.4749331], [-0.592868, 0.4749331]]]]
参考: https://js.tensorflow.org/api/latest/#loadLayersModel
相关用法
- Tensorflow.js tf.loadGraphModel()用法及代码示例
- Tensorflow.js tf.logicalAnd()用法及代码示例
- Tensorflow.js tf.logicalNot()用法及代码示例
- Tensorflow.js tf.logicalOr()用法及代码示例
- Tensorflow.js tf.logicalXor()用法及代码示例
- Tensorflow.js tf.logSumExp()用法及代码示例
- Tensorflow.js tf.logSoftmax()用法及代码示例
- Tensorflow.js tf.logSigmoid()用法及代码示例
- Tensorflow.js tf.log1p()用法及代码示例
- Tensorflow.js tf.log()用法及代码示例
- Tensorflow.js tf.losses.computeWeightedLoss()用法及代码示例
- Tensorflow.js tf.losses.sigmoidCrossEntropy()用法及代码示例
- Tensorflow.js tf.losses.huberLoss()用法及代码示例
- Tensorflow.js tf.losses.meanSquaredError()用法及代码示例
- Tensorflow.js tf.losses.softmaxCrossEntropy()用法及代码示例
- Tensorflow.js tf.losses.cosineDistance()用法及代码示例
- Tensorflow.js tf.localResponseNormalization()用法及代码示例
- Tensorflow.js tf.losses.hingeLoss()用法及代码示例
- Tensorflow.js tf.losses.logLoss()用法及代码示例
- Tensorflow.js tf.losses.absoluteDifference()用法及代码示例
- Tensorflow.js tf.less()用法及代码示例
- Tensorflow.js tf.lessEqual()用法及代码示例
- Tensorflow.js tf.layers.minimum()用法及代码示例
- Tensorflow.js tf.linalg.bandPart()用法及代码示例
- Tensorflow.js tf.leakyRelu()用法及代码示例
注:本文由纯净天空筛选整理自aayushmohansinha大神的英文原创作品 Tensorflow.js tf.loadLayersModel() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。