gpt4 book ai didi

python - "ValueError: Unknown optimizer: momentum"动量优化器的正确名称?

转载 作者:行者123 更新时间:2023-12-01 00:20:12 25 4
gpt4 key购买 nike

我正在尝试使用 Momentum 优化器来训练我的程序,但是当我输入“momentum”作为优化器时,它会给出以下错误:

ValueError: Unknown optimizer: momentum

我使用的代码是:

import tensorflow as tf
from tensorflow import keras
import matplotlib.pyplot as plt
import numpy as np
import time

start_time = time.time()


data = tf.keras.datasets.fashion_mnist

(train_images, train_labels), (test_images, test_labels) = data.load_data()

class_names = ['T-shirt', 'Trouser', 'Pullover', 'Dress', 'Coat', 'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle Boot']

train_images = train_images/255.0

test_images = test_images/255.0

model = keras.Sequential([
keras.layers.Flatten(input_shape=(28, 28)),
keras.layers.Dense(100, activation="relu"),
keras.layers.Dense(10, activation="softmax")
])

model.compile(optimizer="Ftrl", loss="sparse_categorical_crossentropy", metrics=["accuracy"])

model.fit(train_images, train_labels, epochs=5)

test_loss, test_acc = model.evaluate(test_images, test_labels)

print("Test acc is:", test_acc)
print("--- %s seconds ---" % (time.time() - start_time))

我尝试以不同的方式输入momentum,但我似乎无法修复正确的名称。它是什么?

最佳答案

Tensorflow 没有简单的“动量”优化器:tensorflow.org/api_docs/python/tf/optimizers在 TensorFlow 中。虽然Tutorialpoints对其的引用。

尽管如此,它还是有 MomentumOptimizer() 类。

因此,您应该首先定义一个 MomentumOptimizer() 类实例,然后可以将其作为参数传递给 compile() 方法。

注意: lr(学习率)和m(动量)参数需要由您定义。

momentum = tf.train.MomentumOptimizer(lr, m)
model.compile(optimizer=momentum, loss="sparse_categorical_crossentropy", metrics=["accuracy"])

关于python - "ValueError: Unknown optimizer: momentum"动量优化器的正确名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59011145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com