我使用过深度强化学习,在文献中,通常学习率比我在其他环境中发现的要低。
我的模型如下:
def create_model(self):
model = Sequential()
model.add(LSTM(HIDDEN_NODES, input_shape=(STATE_SIZE, STATE_SPACE), return_sequences=False))
model.add(Dense(HIDDEN_NODES, activation='relu', kernel_regularizer=regularizers.l2(0.000001)))
model.add(Dense(HIDDEN_NODES, activation='relu', kernel_regularizer=regularizers.l2(0.000001)))
model.add(Dense(ACTION_SPACE, activation='linear'))
# Compile the model
model.compile(loss=tf.keras.losses.Huber(delta=1.0), optimizer=Adam(lr=LEARNING_RATE, clipnorm=1))
return model其中初始学习率(lr)是3e-5。对于微调,我冻结了前两层(这一步在我的设置中是必不可少的),并将学习率降低到3e-9。在微调过程中,一旦样本来源是扰动数据,模型可能会出现分布偏移。除了这个问题之外,还有其他的问题来保持我的模型不断改进吗?
发布于 2021-10-19 19:13:33
首先,让我看看你的数据样本。
理论上的答案:
我们已经了解了扰动如何帮助解决与神经网络训练或训练模型相关的各种问题。在这里,我们已经看到了与神经网络训练和训练模型相关的三个组件(梯度、权重、输入)中的扰动;梯度中的扰动是为了解决消失的梯度问题,在用于逃脱鞍点的权重中,以及在避免恶意攻击的输入中。总体而言,不同方式的扰动起到了增强模型抵御各种不稳定性的作用,例如,它可以避免停留在正确的残缺点,因为这样的位置将通过扰动(输入,权重,梯度)进行测试,这将使模型接近正确的吸引点。
到目前为止,扰动主要取决于从直觉设计的经验实验,以解决遇到的问题。人们需要试验干扰训练过程的一个组成部分是否直观地有意义,并进一步从经验上验证它是否有助于缓解问题。然而,在未来,我们将在深度学习或一般机器学习中看到更多关于扰动理论的内容,这也可能得到理论保证的支持。
https://stackoverflow.com/questions/69596498
复制相似问题