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


Tensorflow.js tf.layers.timeDistributed()用法及代碼示例


Tensorflow.js是Google開發的開源庫,用於在瀏覽器或節點環境中運行機器學習模型和深度學習神經網絡。

tf.layers.timeDistributed() 函數用於將層的包裹應用於指定輸入的每個時間切片。給定的輸入必須至少為 3D,維度的索引 1 將被視為時間維度。

用法:

tf.layers.timeDistributed(args)

參數:此函數接受單個參數 args,可用於指定以下屬性:

  • layer:它是要包裝的指定層。
  • inputShape:它用於創建一個輸入層以在該層之前插入。當 inputShape 和 batchInputShape 都被定義時,batchInputShape 將被使用。此參數僅與輸入層相關,即模型的第一層。它是一個可選參數。
  • batchInputShape:定義 inputShape 和 batchInputShape 時將使用此參數。此參數僅與輸入層相關,即模型的第一層。它是一個可選參數。
  • batchSize:它用於在給定 inputShape 時創建 batchInputShape,但沒有給定 batchInputShape。
  • dtype:它是該層的數據類型,其默認值為 ‘float32’。此參數僅與輸入層相關,即模型的第一層。
  • name:這是該層的名稱。
  • trainable:它的默認值為真。它表示該層的權重是否可以通過擬合更新。
  • weights:它是圖層的第一個權重值。
  • inputDType:建議不要用於新代碼。它用於遺留支持。

返回值:它返回一個 TimeDistributed 對象。



範例1:

Javascript


// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Initializing a model
const model = tf.sequential();
  
// Calling the tf.layers.timeDistributed() function
const a = model.add(tf.layers.timeDistributed({
   layer:tf.layers.dense({units:8}),
    
   // Considering a sequence of 5 vectors
   // of 10 dimensions
   inputShape:[5, 10],
}));
  
// Getting the model.outputShape
console.log(JSON.stringify(model.outputs[0].shape));

輸出:

[null,5,8]

範例2:

Javascript


// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Initializing a model
const model = tf.sequential();
  
// Calling the tf.layers.timeDistributed() function
const a = model.add(tf.layers.timeDistributed({
    
   // Initializing the first layer with inputShape
   layer:tf.layers.dense({units:12}),
    
   // Considering a sequence of 5 vectors
   // of 10 dimensions
   inputShape:[5, 10],
}));
  
// In the second layer, there is no 
// need for `inputShape`
model.add(tf.layers.timeDistributed(
  {layer:tf.layers.dense({units:32})}
));
  
// Getting the model.outputShape
console.log(JSON.stringify(model.outputs[0].shape));

輸出:

[null,5,32]

參考:https://js.tensorflow.org/api/latest/#layers.timeDistributed




相關用法


注:本文由純淨天空篩選整理自Kanchan_Ray大神的英文原創作品 Tensorflow.js tf.layers.timeDistributed() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。