在 Keras 中,LSTM 对决策进行采样(通过 softmax 分类器)

时间:2021-03-17 09:22:44

标签: keras

我正在构建一个 NAS(神经架构搜索)算法,我需要制作一个 LSTM,通过做出决定(通过 softmax 分类器)来对架构特征进行采样(以构建 CNN)在每一步,这里都有一个方案来说明这一点:

enter image description here

所以在这里,它首先会无输入,然后它会在可能架构的不同选择(如 Conv 或 Maxpool 层等)中进行采样,然后选择 conv 3x3 层,然后它将 conv 3x3 选择作为输入,以在它正在构建的“块”的可能索引中提供下一步和样本(你真的不需要知道细节),假设它只需要在某个整数中进行选择,因此它选择 1,然后将 1 送入下一步,依此类推... >

简而言之,我只需要构建一个 LSTM 示例,该示例通过 softmax 分类器进行采样(将前一个决策作为每个采样步骤的输入)。

这是我开始做的:

inputs = keras.Input(shape=(8, 900)) # I gave a "random" shape for the input but it should be initialized with zeros
output = layers.LSTM(100, return_sequences=True, return_state=True, kernel_initializer=initializer)(inputs)

然后,我如何为每个步骤指定softmax 分类器,以及如何将每个步骤的输出作为输入发送到下一步?

0 个答案:

没有答案