当前位置: 首页 > 知识库问答 >
问题:

如何选择LSTM Keras参数?

隆礼骞
2023-03-14

我有多个时间序列的输入,我想正确地建立一个LSTM模型。

我真的很困惑如何选择参数。我的代码:

model.add(keras.layers.LSTM(hidden_nodes, input_shape=(window, num_features), consume_less="mem"))
model.add(Dropout(0.2))
model.add(keras.layers.Dense(num_features, activation='sigmoid'))

optimizer = keras.optimizers.SGD(lr=learning_rate, decay=1e-6, momentum=0.9, nesterov=True)

我想了解每一行输入参数的含义以及如何选择这些参数。

实际上,我对代码没有任何问题,但我需要清楚地理解参数,以便获得更好的结果。

非常感谢!

共有1个答案

弘思聪
2023-03-14

这部分是喀拉山脉。io文档非常有用:

LSTM输入形状:具有形状的3D张量(batch_size,时间步长,input_dim)

我还将解释您的示例中的参数:

model.add(LSTM(hidden_nodes, input_shape=(timesteps, input_dim)))
model.add(Dropout(dropout_value))

hidden_nodes=这是LSTM的神经元数量。如果你有一个更高的数字,网络会变得更强大。然而,需要学习的参数数量也在增加。这意味着需要更多的时间来训练网络。

TimeStase=要考虑的时间步数。例如,如果你想对一个句子进行分类,这将是一个句子中的字数。

input_dim=特征/嵌入件的尺寸。例如,句子中单词的向量表示

dropout_value=为了减少过度拟合,dropout层只是随机地获取一部分可能的网络连接。此值是每个历元/批所考虑的网络连接的百分比。

如您所见,无需指定批处理大小。Keras会自动处理它。

optimizer = keras.optimizers.SGD(lr=learning_rate, decay=1e-6, momentum=0.9, nesterov=True)

learning_rate=表示每批更新的权重。

衰减=随着时间的推移,学习过程减少的程度。

动量=动量的速率。较高的值有助于克服局部极小值,从而加快学习过程。进一步解释。

nesterov=如果应该使用nesterov动量。这里有一个很好的解释。

 类似资料:
  • 我想调用一个函数时,选择的任何选项。类似于这样: 但不知何故不起作用。有人能帮忙吗。 请注意 我不想捕获更改事件,如果我选择已经选择选项,则不会触发更改事件

  • 校验者: @片刻 翻译者: @森系 分数和交叉验证分数 如我们所见,每一个估计量都有一个可以在新数据上判定拟合质量(或预期值)的 score 方法。越大越好. >>> from sklearn import datasets, svm >>> digits = datasets.load_digits() >>> X_digits = digits.data >>> y_digits = digi

  • 问题内容: func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { guard let mostRecentLocation = locations.last else { return } 我想每1分钟将数据发送到服务器。我正在使用Timer.schedule

  • 问题内容: 在中,您可以使用来指定用于格式化字符串的参数。这允许在任意位置多次使用参数。 有没有办法用标准的Java做到这一点? 问题答案: 是。您可以定义参数的索引,请参阅API的“ 参数索引” 部分。 例如: 输出量 注意 以下所有习语都共享相同的格式定义:

  • 问题内容: 我想使用的方法获取http://en.wikipedia.org的内容。 我发现en.wikiepdia.org同时具有IPv4和IPv6地址: 如何使用IPv6地址访问该站点? 问题答案: 此jvm参数将起作用。

  • 如果选择选项值是从循环中提取的,那么如何禁用该选项值?是否有其他方法解决此问题? 示例输出在循环和我想禁用选项值6和7。谢谢帮忙。

  • 问题内容: 我使用的选择标记的格式允许多次选择,但我希望选择的最大数量为10。使用JavaScript或jquery是否可以? 提前致谢! 问题答案: 这是供您使用的一些完整代码…一定要喜欢Google AJAX API Playground :-) 编辑1: 注意:这只允许您选择5,因为我不想复制/粘贴另外10个选项:-) ​

  • 本文向大家介绍asp.net SqlParameter如何根据条件有选择的添加参数,包括了asp.net SqlParameter如何根据条件有选择的添加参数的使用技巧和注意事项,需要的朋友参考一下 SqlParameter带参数的增删改查语句,可以防止注入.有时候写sql语句的时候会根据方法传进来的参数来判断sql语句中where条件的参数. 一般方法 DAL层方法 现在想根据集合UserInf