gpt4 book ai didi

python - 如何在 Keras 中缓存层激活?

转载 作者:太空宇宙 更新时间:2023-11-04 04:21:27 25 4
gpt4 key购买 nike

我在 Keras 中训练了一个第一层具有固定权重(不可训练)的神经网络。

这些层执行的计算在训练期间非常密集。为每个输入缓存层激活并在下一个纪元传递相同输入数据时重用它们以节省计算时间是有意义的。

是否可以在 Keras 中实现这种行为?

最佳答案

您可以将您的模型分成两个不同的模型。例如,在以下代码段中,x_ 将对应于您的中间激活:

from keras.models import Model
from keras.layers import Input, Dense
import numpy as np


nb_samples = 100
in_dim = 2
h_dim = 3
out_dim = 1

a = Input(shape=(in_dim,))
b = Dense(h_dim, trainable=False)(a)
model1 = Model(a, b)
model1.compile('sgd', 'mse')

c = Input(shape=(h_dim,))
d = Dense(out_dim)(c)
model2 = Model(c, d)
model2.compile('sgd', 'mse')


x = np.random.rand(nb_samples, in_dim)
y = np.random.rand(nb_samples, out_dim)
x_ = model1.predict(x) # Shape=(nb_samples, h_dim)

model2.fit(x_, y)

关于python - 如何在 Keras 中缓存层激活?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54431168/

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