Tensorflow.js tf.constraints.maxNorm()函数
Tensorflow.js 是一个由谷歌开发的开源库,用于在浏览器或节点环境中运行机器学习模型以及深度学习神经网络。
tf.constraints.maxNorm() 继承自约束类。约束是层的属性,如权重、内核、偏差。它在模型构建时分配给层。MaxNorm 是一个权重约束。它将权重限制为每个中间层的范数小于或等于所需值。在这篇文章中,我们将看到 maxNorm()函数以及它如何与约束一起工作。
句法:
tf.constraints.maxNorm(maxValue, axis)
参数:
- maxValue:传入重量的最大标准。
- 轴:它是范数计算的轴。
返回:它返回 tf.constraints.Constraint。
示例 1:在此示例中,我们将创建 maxNorm函数并将 maxValue 作为 2 并将轴作为 0 传递。
Javascript
// Importing the tensorflow.Js library
import * as tf from "@tensorflow/tfjs"
// Use maxNorm() function
var a=tf.constraints.maxNorm(2,0)
// Print
console.log(a)
Javascript
// Import tensorflow.js
import * as tf from "@tensorflow/tfjs"
// Define dense layer
const denseLayer = tf.layers.dense({
units: 6,
kernelInitializer: 'heNormal',
kernelConstraint: 'maxNorm',
biasConstraint: 'maxNorm',
useBias: true
});
// Define input and output
const inp = tf.ones([2, 3]);
const out = denseLayer.apply(inp);
// Print the output
out.print()
输出:
{
"defaultMaxValue": 2,
"defaultAxis": 0,
"maxValue": 2,
"axis": 0
}
示例 2:在此示例中,我们将创建一个密集层模型,并将内核和偏差约束作为 maxNorm 传递。
Javascript
// Import tensorflow.js
import * as tf from "@tensorflow/tfjs"
// Define dense layer
const denseLayer = tf.layers.dense({
units: 6,
kernelInitializer: 'heNormal',
kernelConstraint: 'maxNorm',
biasConstraint: 'maxNorm',
useBias: true
});
// Define input and output
const inp = tf.ones([2, 3]);
const out = denseLayer.apply(inp);
// Print the output
out.print()
输出:
Tensor
[[0.770891, -0.191616, -1.3709277, -1.010246, 1.0177934, 0.6692461],
[0.770891, -0.191616, -1.3709277, -1.010246, 1.0177934, 0.6692461]]
参考: https://js.tensorflow.org/api/latest/#class:constraints.Constraint