我应该使用多少个LSTM细胞?


12

是否有关于我应使用的LSTM电池的最小,最大和“合理”数量的经验法则(或实际规则)?具体来说,我与TensorFlow和property 有关的BasicLSTMCell有关num_units

请假设我有以下定义的分类问题:

t - number of time steps
n - length of input vector in each time step
m - length of output vector (number of classes)
i - number of training examples

例如,训练示例的数量应该大于:

4*((n+1)*m + m*m)*c

c单元数在哪里?我基于此:如何计算LSTM网络的参数数量?据我了解,这应该给出参数的总数,该总数应少于训练示例的数量。

rnn  machine-learning  r  predictive-modeling  random-forest  python  language-model  sentiment-analysis  encoding  machine-learning  deep-learning  neural-network  dataset  caffe  classification  xgboost  multiclass-classification  unbalanced-classes  time-series  descriptive-statistics  python  r  clustering  machine-learning  python  deep-learning  tensorflow  machine-learning  python  predictive-modeling  probability  scikit-learn  svm  machine-learning  python  classification  gradient-descent  regression  research  python  neural-network  deep-learning  convnet  keras  python  tensorflow  machine-learning  deep-learning  tensorflow  python  r  bigdata  visualization  rstudio  pandas  pyspark  dataset  time-series  multilabel-classification  machine-learning  neural-network  ensemble-modeling  kaggle  machine-learning  linear-regression  cnn  convnet  machine-learning  tensorflow  association-rules  machine-learning  predictive-modeling  training  model-selection  neural-network  keras  deep-learning  deep-learning  convnet  image-classification  predictive-modeling  prediction  machine-learning  python  classification  predictive-modeling  scikit-learn  machine-learning  python  random-forest  sampling  training  recommender-system  books  python  neural-network  nlp  deep-learning  tensorflow  python  matlab  information-retrieval  search  search-engine  deep-learning  convnet  keras  machine-learning  python  cross-validation  sampling  machine-learning 

1
我将检查这篇论文,该论文很好地解决了比较顺序深度学习模型和超参数调整的主题:arxiv.org/pdf/1503.04069.pdf 总之,它们表明,显而易见的是,增加每个隐藏LSTM块的数量层可提高性能,但收益递减并增加培训时间。
CubeBot88

Answers:


4

最少的培训示例就是您所拥有的:

4(nm+n2)

有关更多信息,请参考本文:如果需要一些视觉帮助,请参考此链接: LSTM模型中的参数数量

堆叠的每一层中的单元数量可以变化。例如,在Tensorflow中的translate.py中,可以将其配置为1024、512或几乎任何数字。最佳范围可以通过交叉验证找到。但是我已经在堆栈的每一层中看到了1000和500数量的单元。我个人也测试了较小的数字。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.