gpt4 book ai didi

python - tensorflow2.0还有参数 'trainable'吗?

转载 作者:行者123 更新时间:2023-12-01 07:21:57 27 4
gpt4 key购买 nike

在tensorboard中我找不到梯度操作来更新我的参数,就像tensorflow1.X一样。

并且在 keras api 中找不到参数“trainable”。

如果 tf2.0 仍然有梯度运算可以在张量板中显示,我如何将其添加到我的张量板中。

ps.我的tensorflow版本是2.0-rc0。

这是我向张量板文件添加内容的代码。

logdir = "testlogs"
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=logdir)
.....
model.fit(x=train_x, y=train_y,
batch_size=256,
epochs=6,
shuffle=True,
callbacks=[tensorboard_callback])

最佳答案

Does tensorflow2.0 still have parameter 'trainable'?.

在 keras 中,确定哪些变量是可训练的是构成模型的各层的责任。有无数可用的层,但这里有一个简单的密集层实现,以说明一些可训练变量的使用


class MyLayer(tf.keras.layers.Layer):
def __init__(self, units=8, input_dim=8):
super(MyLayer,self).__init__()
self.w = tf.Variable(initial_value=tf.random_normal_initializer()(shape=(input_dim, units)),
trainable=True)
self.b = tf.Variable(initial_value=tf.zeros_initializer()(shape=(units,)),
trainable=True)

def call(self, inputs):
return tf.matmul(inputs, self.w) + self.b


例如,您可以在 keras 模型中使用它,如下所示:

my_layer = MyLayer(units=8,input_dim=2)
my_model = tf.keras.models.Sequential([
my_layer
])
my_model.compile(optimizer=tf.keras.optimizers.Adam(), loss=tf.keras.losses.binary_crossentropy)

当然最好在实践中使用开箱即用的tf.keras.layers.Dense,这只是为了说明可训练变量my_layer.w & my_layer.b!

关于python - tensorflow2.0还有参数 'trainable'吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57660163/

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