当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Tensorflow.js tf.loadLayersModel()用法及代码示例


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



相关用法


注:本文由纯净天空筛选整理自aayushmohansinha大神的英文原创作品 Tensorflow.js tf.loadLayersModel() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。