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


Tensorflow.js tf.losses.sigmoidCrossEntropy()用法及代碼示例


Tensorflow.js是Google開發的開源庫,用於在瀏覽器或節點環境中運行機器學習模型和深度學習神經網絡。它還可以幫助開發人員使用JavaScript語言開發ML模型,並可以直接在瀏覽器或Node.js中使用ML。

Tensorflow.js tf.losses.sigmoidCrossEntropy() 函數計算兩個給定張量之間的 sigmoid 交叉熵損失。

用法:

tf.losses.sigmoidCrossEntropy(
    multiClassLabels, logits, weights, 
    labelSmoothing, reduction
); 

參數:

  • multiClassLabels:它是不同形狀的真實輸出張量,如數量類、批次大小。它在維度上與“預測”相似。
  • logits:這是正在預測的輸出。
  • weights:這些是等級為 0 或 1 的那些張量,它們必須是可擴展到 lebels 的。
  • labelSmoothing:如果該值大於 0,則意味著它將平滑標簽。
  • reduction:這是適用於損失的減少類型。它必須是Reduction 類型。

注意:權重、標簽平滑和減少是可選參數。



返回值:它返回tf.Tensor。

範例1:

Javascript


// Importing the tensorflow.Js lbrary
import * as tf from "@tensorflow/tfjs"
  
// Initialising tensor1 as geek1.
let geek1 = tf.tensor3d([[[1], [2]], [[3], [4]]]);
  
// Initialising tensor2 as geek2.
let geek2 = tf.tensor3d([7, 11, 13, 4], [2, 2, 1])
  
// Computing sigmoid Cross Entropy loss 
// between geek1 and geek2
// using .sigmoidCrossEntropy) function.
geek = tf.losses.sigmoidCrossEntropy(geek1, geek2)
geek.print();

輸出:

Tensor
    -12.245229721069336

範例2:

Javascript


// Importing the tensorflow.Js lbrary
import * as tf from "@tensorflow/tfjs"
  
// Computing sigmoid Cross Entropy loss 
// between two 4D tensors and
// printing the result.
tf.losses.sigmoidCrossEntropy(
    tf.tensor4d([[[[9], [8]], [[7], [5]]]]), 
    tf.tensor4d([[[[1], [2]], [[3], [4]]]])
).print();

輸出:

Tensor
    -13.873268127441406

參考:https://js.tensorflow.org/api/latest/#losses.sigmoidCrossEntropy

相關用法


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