📜  Tensorflow.js tf.train.adadelta()函数(1)

📅  最后修改于: 2023-12-03 15:35:18.084000             🧑  作者: Mango

TensorFlow.js中的tf.train.adadelta()函数

简介

tf.train.adadelta()是TensorFlow.js中实现了Adadelta算法的优化器之一。该算法旨在对学习率进行自适应调整,并能够迭代处理大规模数据。

语法
tf.train.adadelta(learningRate?: number, rho?: number, epsilon?: number)
  • learningRate:学习率,范围[0, 1]。可选参数,默认为1.0
  • rho:控制人类的相关率或均方梯度。 可选参数,默认为0.95
  • epsilon:模糊因子。 可选参数,默认为1e-8
使用方法
// 导入依赖的模块
import * as tf from '@tensorflow/tfjs';

// 定义一个模型
const model = tf.sequential();
model.add(tf.layers.dense({units: 10, inputShape: [8]}));
model.add(tf.layers.dense({units: 1}));

// 定义优化器
const optimizer = tf.train.adadelta();

// 编译模型
model.compile({
  loss: 'meanSquaredError',
  optimizer: optimizer
});

// 训练模型
await model.fit(xTrain, yTrain, {
  epochs: 100,
  validationData: [xTest, yTest]
});
效果

使用Adadelta算法,在受噪声影响的数据集上训练模型,其结果通常比其他自适应方法更好。Adadelta的一个缺点是需要一个额外的维度来存储先前的梯度信息,因此它不适合消耗存储空间的应用程序。然而,在存储空间宽裕的设置中,Adadelta通常表现良好。

参考链接