當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。