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


Tensorflow.js tf.initializers.varianceScaling()用法及代碼示例


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

tf.initializers.varianceScaling() 函數能夠將其比例調整為權重的形狀。使用 distribution=NORMAL 的值,從中心為 0 的截斷正態分布中抽取樣本,其中 stddev = sqrt(scale /n) 。請注意,n 的值變化如下:

  • 如果 mode 的值 = FAN_IN,則它是張量權重中的輸入數量。
  • 如果 mode 的值 = FAN_OUT,則它是張量權重中的輸出數量。
  • 如果 mode 的值 = FAN_AVG,則它是張量權重中輸出和輸入的平均值。

用法:

tf.initializers.varianceScaling(arguments)

參數:它接受一個對象作為參數,其中包含下麵列出的 3 key-values:

  • scale:它是比例因子。它是一個正浮點值。
  • mode:這是輸出和輸入的扇形模式。
  • distribution:它是值的概率分布。
  • seed:它是隨機數生成器的種子。

返回值:它返回 tf.initializers.Initializer



範例1:

Javascript


// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Initializing the .initializers.varianceScaling()
// function
let geek = tf.initializers.varianceScaling(33)
  
// Printing gain value
console.log(geek);
  
// Printing individual gain value.
console.log('\nIndividual values:\n');
console.log(geek.scale);
console.log(geek.mode);
console.log(geek.distribution);

輸出:

{
  "scale":1,
  "mode":"fanIn",
  "distribution":"normal"
}

Individual values:

1
fanIn
normal

範例2:

Javascript


// Importing the tensorflow.Js lbrary
import * as tf from "@tensorflow/tfjs
  
// Defining the input value
const inputValue = tf.input({shape:[4]});
  
// Initializing tf.initializers.varianceScaling() function
const funcValue = tf.initializers.varianceScaling(3)
  
// Creating dense layer 1
const dense_layer_1 = tf.layers.dense({
    units:5, 
    activation:'relu',
    kernelInitialize:funcValue
});
  
// Creating dense layer 2
const dense_layer_2 = tf.layers.dense({
    units:9, 
    activation:'softmax'
});
  
// Output 
const outputValue = dense_layer_2.apply(
    dense_layer_1.apply(inputValue)
);
  
// Creation the model.
const model = tf.model({
    inputs:inputValue,
    outputs:outputValue
});
  
// Predicting the output.
model.predict(tf.ones([2, 4])).print();

輸出:

Tensor
    [[0.0687333, 0.1549079, 0.0899771, 0.084183, 
      0.1593787, 0.1488634, 0.0884578, 0.073244, 0.1322549],
     [0.0687333, 0.1549079, 0.0899771, 0.084183, 
      0.1593787, 0.1488634, 0.0884578, 0.073244, 0.1322549]]

參考:https://js.tensorflow.org/api/3.6.0/#initializers.varianceScaling




相關用法


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