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


Tensorflow.js tf.Variable.assign()用法及代碼示例


TensorFlow.js 是一個由 Google 設計的開源 JavaScript 庫,用於開發機器學習模型和深度學習神經網絡。 tf.Variable 類用於在 Tensorflow 中創建、跟蹤和管理變量。 Tensorflow 變量表示可以通過對其運行操作來更改其值的張量。

assign() 是 Variable 類中可用的方法,用於將新的 tf.Tensor 分配給變量。新值必須與舊變量值具有相同的形狀和數據類型。

用法:

assign(newValue)

參數:

  • newValue:它是一個 tf.Tensor 類型的對象。這個新值被分配給變量。

返回值:它返回void。



範例1:此示例首先創建一個具有初始值的新 tf.Variable 對象,然後為該變量分配一個與初始值具有相同形狀和數據類型的新值。

Javascript


// Defining tf.Tensor object for initial value
initialValue = tf.tensor([[1, 2, 3]])
  
// Defining tf.Variable object 
let x = new tf.Variable(initialValue);
  
// Printing variables dtype
console.log("dtype:",x.dtype)
  
// Printing variable shape
console.log("shape:",x.shape)
  
// Printing the tf.Variable object
x.print()
  
// Defining new tf.Tensor object of same 
// shape and dtype as initial tf.Tensor
newValue = tf.tensor([[5, 8, 10]])
  
// Assigning new value to the variable
x.assign(newValue)
  
// Printing the tf.Variable object
x.print()

輸出:

dtype:float32
shape:1,3
Tensor
     [[1, 2, 3],]
Tensor
     [[5, 8, 10],]

範例2:此示例首先創建一個具有初始值的新 tf.Variable 對象,然後嘗試為該變量分配一個具有不同形狀的新值作為初始值。這將給出一個錯誤。

Javascript


// Defining tf.Tensor object for initial value
initialValue = tf.tensor([[1, 2],[3, 4]])
  
// Defining tf.Variable object 
let x = new tf.Variable(initialValue);
  
// Printing variables dtype
console.log("dtype:",x.dtype)
  
// Printing variable shape
console.log("shape:",x.shape)
  
// Printing the tf.Variable object
x.print()
  
// Defining new tf.Tensor object of same 
// shape as initial tf.Tensor
newValue = tf.tensor([[5, 6],[10, 11]])
  
// Assigning new value to the variable
x.assign(newValue)
  
// Printing the tf.Variable object
x.print()

輸出:

dtype:float32
shape:2,2
Tensor
    [[1, 2],
     [3, 4]]
Tensor
    [[5 , 6 ],
     [10, 11]]

參考:https://js.tensorflow.org/api/latest/#tf.Variable.assign




相關用法


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