Tensorflow.js tf.regularizers.l2()函数
Tensorflow.js 中的正则化器附加了模型的各种组件,这些组件与 score函数一起帮助驱动可训练的值,大值。方法 tf.regularizers.l2 () 继承自 regularizers 类。 tf.regularizers.l2() 方法在模型训练的惩罚情况下应用 l2 正则化。此方法在损失中添加一项以对大权重执行惩罚。它增加了 Loss+=sum(l2 * x^2) 损失。所以在这篇文章中,我们将看到 tf.regularizers.l2()函数是如何工作的。
句法:
tf.regularizers.l2 (args);
参数:
- l2:数字代表正则化率,默认为0.01。
返回:正则化器
示例 1:在此示例中,我们将看到 l2 正则化器的独立使用应用于内核权重矩阵。
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Define sequential model
const model = tf.sequential();
// Add layer to it
model.add(tf.layers.dense({
units: 32, batchInputShape:[null,50],
kernelRegularizer:tf.regularizers.l2()
}));
// Model summary
model.summary();
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Define sequential model
const model = tf.sequential();
// Add layer to it
model.add(tf.layers.dense({
units: 32, batchInputShape:[null,50],
biasRegularizer:tf.regularizers.l2()
}));
// Model summary
model.summary();
输出:
Layer (type) Output shape Param #
=================================================================
dense_Dense1 (Dense) [null,32] 1632
=================================================================
Total params: 1632
Trainable params: 1632
Non-trainable params: 0
示例 2:在此示例中,我们将看到 l2 正则化器的独立使用应用于偏置向量。
Javascript
// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs");
// Define sequential model
const model = tf.sequential();
// Add layer to it
model.add(tf.layers.dense({
units: 32, batchInputShape:[null,50],
biasRegularizer:tf.regularizers.l2()
}));
// Model summary
model.summary();
输出:
Layer (type) Output shape Param #
=================================================================
dense_Dense2 (Dense) [null,32] 1632
=================================================================
Total params: 1632
Trainable params: 1632
Non-trainable params: 0
参考资料: https://js.tensorflow.org/api/latest/#regularizers.l2