当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Tensorflow.js tf.layers.batchNormalization()用法及代码示例


Tensorflow.js是Google开发的开源工具包,用于在浏览器或节点平台上执行机器学习模型和深度学习神经网络。它还使开发人员能够在 JavaScript 中创建机器学习模型,并直接在浏览器中或通过 Node.js 使用它们。

tf.layers.batchNormalization() 函数用于对数据应用批量归一化操作。批量归一化是一种训练非常深度的神经网络的方法,它将每个 mini-inputs 批次标准化为一个层。这稳定了学习过程,并显著减少了创建深度网络所需的训练周期数。

用法:

tf.layers.batchNormalization(args?)

输入形状:任意。当使用该层作为模型中的初始层时,请使用 inputShape 配置。

输出形状:输出与输入具有相同的形状。

参数:它接受 args 对象,该对象可以具有以下属性:

  • axis (number): 应标准化的整数轴(通常是特征轴)。 -1 是默认值。
  • momentum (number):移动平均线的动量。默认值为 0.99。
  • epsilon (number):将小浮点数添加到方差中以避免被零除。默认为 1e-3。
  • center (boolean):如果这是真的,请将 beta 的偏移量添加到归一化张量中。如果为 false,则不考虑 beta。默认情况下该值设置为 true。
  • scale (boolean):如果这是真的,则乘以伽玛。如果为 false,则不会使用 Gamma。 True 是默认值。
  • betaInitializer:这是 beta 权重的初始值设定项。 ‘zeroes’ 是默认值。
  • gammaInitializer:这是伽玛权重的初始值设定项。 ‘ones’ 是默认值。
  • movingMeanInitializer:这是移动均值的初始值设定项。 ‘zeroes’ 是默认值。
  • movingVarianceInitializer:这是移动方差的初始值设定项。 ‘ones’ 是默认值。
  • betaConstraint:Beta 权重的约束。
  • gammaConstraint:gamma 权重的约束。
  • betaRegularizer:Beta 权重的正则化器。
  • gammaRegularizer:Beta 权重的正则化器。

返回值:它返回一个对象(BatchNormalization)。

示例 1:

Javascript


import * as tf from "@tensorflow/tfjs"; 
  
const batchNormalizationLayer = tf.layers.batchNormalization(); 
      
const x = tf.tensor([1.12, -0.8, 1.9, 0.12, 0.25, -3.4], [2, 3]); 
  
batchNormalizationLayer.apply(x).print();

输出:

Tensor
   [[1.1194404, -0.7996003, 1.8990507 ],
    [0.11994  , 0.2498751 , -3.3983014]]

示例 2:

Javascript


import * as tf from "@tensorflow/tfjs"; 
  
const batchNormalizationLayer = tf.layers.batchNormalization(); 
      
const x = tf.tensor([12, 3.2, 4.8, 9, 10, 2.5,  
    8, 11, 9.4, 25, 24.9, 98.7], [2, 3, 2]); 
  
batchNormalizationLayer.apply(x).print();

输出:

Tensor
   [[[11.9940042, 3.1984012 ],
     [4.7976022 , 8.9955034 ],
     [9.9950037 , 2.4987509 ]],
    [[7.9960032 , 10.994504 ],
     [9.3953028 , 24.9875088],
     [24.8875599, 98.6506805]]]

参考: https://js.tensorflow.org/api/latest/#layers.batchNormalization



相关用法


注:本文由纯净天空筛选整理自aayushmohansinha大神的英文原创作品 Tensorflow.js tf.layers.batchNormalization() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。