Questions tagged «rnn»

递归神经网络(RNN)是一类人工神经网络,其中单元之间的连接形成有向循环。

5
使用ARIMA和LSTM进行时间序列预测
我要处理的问题是预测时间序列值。我正在一次查看一个时间序列,例如,基于15%的输入数据,我想预测其未来值。到目前为止,我遇到了两种模型: LSTM(长期短期记忆;一类递归神经网络) 有马 我都尝试过并阅读了一些文章。现在,我试图更好地了解如何比较两者。到目前为止,我发现了什么: 如果我们要处理大量数据并且有足够的训练数据,那么LSTM会更好地工作,而ARIMA对于较小的数据集则更好(这是正确的吗?) ARIMA需要一系列(p,q,d)必须基于数据计算的参数,而LSTM不需要设置此类参数。但是,我们需要为LSTM调整一些超参数。 编辑:我在这里读到一篇很棒的文章时注意到的两者之间的主要区别是,ARIMA只能在固定时间序列(没有季节性,趋势等)下表现良好,如果需要,想要使用ARIMA 除了上述特性之外,我找不到其他可以帮助我选择最佳模型的要点或事实。如果有人能帮助我找到文章,论文或其他东西,我将非常感谢(到目前为止,还没有运气,只是到处都是一些一般性意见,而没有基于实验的内容。) 我不得不提到,最初我是在处理流数据,但是现在我使用的是NAB数据集,其中包括50个数据集,最大大小为2万个数据点。

2
在Keras中使用不同长度的示例训练RNN
我正在尝试开始学习RNN,并且正在使用Keras。我了解香草RNN和LSTM层的基本前提,但是我无法理解培训的某些技术要点。 在keras文档中,它说到RNN层的输入必须具有形状(batch_size, timesteps, input_dim)。这表明所有训练示例都具有固定的序列长度,即timesteps。 但这不是特别典型,是吗?我可能想让RNN对不同长度的句子进行运算。当我在某种语料库上对其进行训练时,我将为它提供成批的句子,这些句子的长度各不相同。 我想要做的显而易见的事情是找到训练集中任何序列的最大长度并将其零填充。但这是否意味着我无法在测试时进行输入长度大于该长度的预测? 我想这是一个关于Keras特定实现的问题,但是我也想问人们通常在遇到这种问题时通常会做什么。
59 python  keras  rnn  training 

3
LSTM模型中的参数数量
一个堆叠的LSTM有几个参数?参数的数量对所需的训练示例的数量施加了下限,并且还影响训练时间。因此,了解参数数量对于使用LSTM训练模型很有用。

1
论文:层归一化,循环批归一化(2016)和批归一化RNN(2015)有什么区别?
因此,最近有一层“ 图层归一化”文章。Keras 上也有一个实现。 但我记得有几篇论文标题为Recurrent Batch Normalization(Cooijmans,2016)和Batch Normalized Recurrent Neural Networks(Laurent,2015)。这三个之间有什么区别? 我不了解此“相关工作”部分: 批处理规范化先前已扩展到递归神经网络[Laurent等,2015,Amodei等,2015,Cooijmans等,2016]。先前的工作[Cooijmans等,2016]提出,通过为每个时间步保留独立的标准化统计数据,可以获得最佳的循环批标准化性能。作者表明,将循环批归一化层中的增益参数初始化为0.1,会对模型的最终性能产生重大影响。我们的工作还与体重归一化有关[Salimans和Kingma,2016]。在权重归一化中,使用输入权重的L2范数代替方差来归一化对神经元的求和输入。使用预期统计量应用权重归一化或批次归一化等效于对原始前馈神经网络进行不同的参数化。在路径归一化的SGD中研究了ReLU网络中的重新参数化[Neyshabur et al。,2015]。但是,我们提出的层归一化方法不是对原始神经网络进行重新参数化。因此,层归一化模型具有与其他方法不同的不变性,我们将在下一节中研究

4
“ LSTM单元中的单位数”是什么意思?
来自Tensorflow代码:Tensorflow。RnnCell。 num_units: int, The number of units in the LSTM cell. 无法理解这是什么意思。LSTM电池的单位是什么。输入,输出和忘记门?这是否表示“深度LSTM的循环投影层中的单位数”。那么为什么将其称为“ LSTM单元中的单位数”?什么是LSTM单元,与VS LSTM块的区别是什么?如果不是单元,最小LSTM单位是什么?

5
扩大seaborn热图
我corr()用原始df 创建了df。该corr()DF出来70×70,这是不可能的可视化热图... sns.heatmap(df)。如果我尝试显示corr = df.corr(),则表格不适合屏幕,并且我可以看到所有相关性。它是打印整个df大小而不管其大小还是控制热图大小的方法吗?
17 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 

3
基于单词和基于字符的文本生成RNN有什么区别?
在阅读有关使用递归神经网络生成文本的信息时,我注意到一些示例被实现为逐个单词地生成文本,而另一些字符则逐个字符地生成,而没有实际说明原因。 那么,是什么,预测文本RNN模型之间的区别每个字的基础,并且预测文本的那些每个字符的基础?基于单词的RNN是否需要更大的语料库大小?基于char的RNN泛化效果更好吗?也许唯一的区别是输入表示形式(单热编码,单词嵌入)?选择哪种文本生成方式?

1
使用多个时间序列的RNN
我正在尝试使用时间序列作为输入来创建神经网络,以便根据每个序列的类型对其进行训练。我读到,使用RNN可以将输入分为几批,然后将时间序列的每个点都用于单个神经元,并最终训练网络。 我正在尝试做的是使用多个时间序列作为输入。因此,例如,您可能会收到来自两个传感器的输入。(因此有两个时间序列),但是我想同时使用它们以得到最终结果。 另外,我也不打算预测时间序列的未来值,而是要根据所有这些值进行分类。 我应该如何解决这个问题? 有没有办法使用多个时间序列作为RNN的输入? 我应该尝试将时间序列汇总为一个吗? 还是我应该只使用两个不同的神经网络?如果最后一种方法是正确的,那么如果时间序列的数量增加了,这是否也不会占用大量计算机资源呢?
14 time-series  rnn 

1
忘记循环神经网络(RNN)中的层-
我试图找出一个RNN的“忘记”层中每个变量的尺寸,但是,我不确定自己是否走对了。下一张图片和等式来自Colah的博客文章“ Understanding LSTM Networks”: 哪里: m * 1xtxtx_t是大小为向量的输入m∗1m∗1m*1 ht−1ht−1h_{t-1}是大小为向量的隐藏状态n∗1n∗1n*1 [xt,ht−1][xt,ht−1][x_t, h_{t-1}]是一个串联(例如,如果,则)xt=[1,2,3],ht−1=[4,5,6]xt=[1,2,3],ht−1=[4,5,6]x_t=[1, 2, 3], h_{t-1}=[4, 5, 6][xt,ht−1]=[1,2,3,4,5,6][xt,ht−1]=[1,2,3,4,5,6][x_t, h_{t-1}]=[1, 2, 3, 4, 5, 6] wfwfw_f是大小为矩阵的权重,其中是单元状态的数量(如果在上面的示例中,而,并且如果我们有3个单元状态,则矩阵)k∗(m+n)k∗(m+n)k*(m+n)kkkm=3m=3m=3n=3n=3n=3wf=3∗3wf=3∗3w_f=3*3 bfbfb_f是大小为向量的偏差,其中是单元状态的数量(由于上述示例中,因此是 向量)。k∗1k∗1k*1kkkk=3k=3k=3bfbfb_f3∗13∗13*1 如果将设置为: wfwfw_f⎡⎣⎢1532643754865976108⎤⎦⎥[1234565678910345678]\begin{bmatrix} 1 & 2 & 3 & 4 & 5 & 6 \\ 5 & 6 & 7 & 8 & 9 & 10 …

2
如何在Keras中实现“一对多”和“多对多”序列预测?
我很难解释一对一(例如,单个图像的分类)和多对多(例如,图像序列的分类)序列标签的Keras编码差异。我经常看到两种不同的代码: 类型1是没有应用TimeDistributed的地方,如下所示: model=Sequential() model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1], border_mode="valid", input_shape=[1, 56,14])) model.add(Activation("relu")) model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1])) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=pool_size)) model.add(Reshape((56*14,))) model.add(Dropout(0.25)) model.add(LSTM(5)) model.add(Dense(50)) model.add(Dense(nb_classes)) model.add(Activation("softmax")) 类型2是应用TimeDistributed的地方,如下所示: model = Sequential() model.add(InputLayer(input_shape=(5, 224, 224, 3))) model.add(TimeDistributed(Convolution2D(64, (3, 3)))) model.add(TimeDistributed(MaxPooling2D((2,2), strides=(2,2)))) model.add(LSTM(10)) model.add(Dense(3)) 我的问题是: 我的假设是正确的,类型1是一对多类型,类型2是多对多类型吗?还是TimeDistributed在这方面没有关联? 在一对多或多对多的情况下,最后一个密集层应为1个节点“长”(依次仅发出一个值), 而先前的循环层负责确定有多少个 1长发射的价值?或者最后一个密集层应该由N个节点组成,其中N=max sequence length?如果是这样, 当我们可以 使用N个并行“原始”估计量产生具有多个输出的相似输入时,在这里使用RNN 有什么意义? 如何定义RNN中的时间步数?它是某种程度上 与输出序列长度相关,还是只是 需要调整的超参数? 上面我的Type …
13 keras  rnn  lstm  sequence 

1
多维和多元时间序列预测(RNN / LSTM)Keras
我一直在尝试了解如何使用Keras(或TensorFlow)来表示和塑造数据以进行多维和多变量时间序列预测,但是在阅读了许多有关如何在Web站点中呈现数据的博客文章/教程/文档后,我仍然不清楚。正确的形状(大多数示例略少一些) 我的数据集: 几个城市 我有关于温度,汽车通行性,湿度的信息 可以说最近2年(每天1条记录) 我想做的事情: 我想使用温度,汽车通行和湿度的滞后版本来预测每个城市明年的平均气温(当然会有更多功能,但这只是一个思想示例)。 我感到困惑的是: 如果我有2个城市,并且在365天内记录了3个要素。我应该如何调整我的输入,以便模型可以输出这两个城市365天的预报(即365天的2个时间序列的温度)? 直观上,张量形状将(?, 365, 3)持续365天和3个特征。但是我不确定该坚持第一维度是什么,最重要的是,如果一定要针对城市数量,我会感到惊讶。但与此同时,我也不知道如何在模型中指定必须正确理解尺寸的模型。 任何指针都会有所帮助。我对问题的其余部分非常熟悉(即,您如何在Keras中构建网络等,因为我已经为其他神经网络完成了此操作,但更具体地说是如何最好地编码所需输入的序列)。 哦,而且,我想我可以对每个城市进行独立的培训和预测,但是我敢肯定,每个人都会同意有可能要学习的东西并不是每个城市所独有的,只有在考虑其中的几个时才能看到,因此,为什么我认为在模型中对其进行编码很重要。
12 python  keras  rnn  lstm 

1
我应该使用多少个LSTM细胞?
是否有关于我应使用的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网络的参数数量?据我了解,这应该给出参数的总数,该总数应少于训练示例的数量。
12 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 

3
是否有适用于python的好的即用型语言模型?
我正在为一个应用程序制作原型,我需要一个语言模型来计算一些生成的句子的困惑度。 我可以随时使用经过训练的python语言模型吗?简单的东西 model = LanguageModel('en') p1 = model.perplexity('This is a well constructed sentence') p2 = model.perplexity('Bunny lamp robert junior pancake') assert p1 < p2 我看过一些框架,但找不到我想要的。我知道我可以使用类似: from nltk.model.ngram import NgramModel lm = NgramModel(3, brown.words(categories='news')) 这在Brown Corpus上使用了很好的图林概率分布,但是我正在一些大型数据集(例如1b单词数据集)上寻找精心设计的模型。我可以真正相信一般领域的结果(不仅是新闻)
11 python  nlp  language-model  r  statistics  linear-regression  machine-learning  classification  random-forest  xgboost  python  sampling  data-mining  orange  predictive-modeling  recommender-system  statistics  dimensionality-reduction  pca  machine-learning  python  deep-learning  keras  reinforcement-learning  neural-network  image-classification  r  dplyr  deep-learning  keras  tensorflow  lstm  dropout  machine-learning  sampling  categorical-data  data-imputation  machine-learning  deep-learning  machine-learning-model  dropout  deep-network  pandas  data-cleaning  data-science-model  aggregation  python  neural-network  reinforcement-learning  policy-gradients  r  dataframe  dataset  statistics  prediction  forecasting  r  k-means  python  scikit-learn  labels  python  orange  cloud-computing  machine-learning  neural-network  deep-learning  rnn  recurrent-neural-net  logistic-regression  missing-data  deep-learning  autoencoder  apache-hadoop  time-series  data  preprocessing  classification  predictive-modeling  time-series  machine-learning  python  feature-selection  autoencoder  deep-learning  keras  tensorflow  lstm  word-embeddings  predictive-modeling  prediction  machine-learning-model  machine-learning  classification  binary  theory  machine-learning  neural-network  time-series  lstm  rnn  neural-network  deep-learning  keras  tensorflow  convnet  computer-vision 

2
LSTM在哪一层上辍学?
使用LSTM带缺失的多层,是否建议在所有隐藏层以及输出密集层上放置缺失?在欣顿的论文(提出了Dropout)中,他只将Dropout放在了Dense层上,但这是因为隐藏的内部层是卷积的。 显然,我可以测试我的特定模型,但是我想知道是否对此达成共识?


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.