神经网络中样本,时间步长和特征之间的差异


17

我正在浏览LSTM神经网络上的以下博客:http : //machinelearningmastery.com/understanding-stateful-lstm-recurrent-neural-networks-python-keras/

作者针对LSTM的不同配置将输入向量X重塑为[样本,时间步长,特征]。

作者写道

实际上,字母序列是一个特征的时间步长,而不是单独特征的一个时间步长。我们为网络提供了更多的上下文,但是没有像预期的那样提供更多的顺序

这是什么意思?

Answers:


16

我在您关注的[样本,时间步长,功能]下方找到了它。

X = numpy.reshape(dataX, (len(dataX), seq_length, 1))

样本-这是len(dataX)或您拥有的数据点数量。

时间步长-这相当于您运行循环神经网络的时间步长。如果希望网络存储60个字符,则此数字应为60。

功能-这是每个时间步中的功能数量。如果要处理图片,则为像素量。在这种情况下,您似乎每个时间步都有1个功能。


1
您能解释一下以下两者之间的区别吗:X = numpy.reshape(dataX,(len(dataX),3,1))和X = numpy.reshape(dataX,(len(dataX),1,3)) lstm?
Vipul Jain

1
(len(dataX),3,1)运行LSTM 3次迭代,输入形状为(1,)的输入向量。(len(dataX),1,3)运行LSTM 1次迭代。这意味着甚至没有经常性的连接是没有用的,因为以前的迭代没有任何反馈。在这种情况下,RNN的输入形状为(3,)
Joonatan Samuel

“((len(dataX),3,1)运行LSTM进行3次迭代” 。等于epoch = 3吗?
Vipul Jain

1
粗略翻译的一个纪元意味着我们已经对数据集中的每个数据点进行了一次培训。训练时,浏览len(dataX)示例算作1个时期。但是,RNN按顺序接收数据。在每个训练示例中,您都必须通过多次迭代来提供数据。例如,我有一个单词“ car”,在每次迭代中,我给它一个字母,让它完成计算,然后给下一个字母。为了完成对单词“ car”的处理,需要3次迭代才能逐个字母地处理整个单词。
Joonatan Samuel

@JoonatanSamuel嗨,我知道已经过去了很多时间,但是在理解同一主题时遇到了很多麻烦。您的答案很明确,但我仍然有些困惑。想象一下,我们有一个时间序列来描述几年中每个月的销售额(例如)。假设len(data)= 3000,data.shape =(3000,1),那么我们记录了3000个月。预测下一个:如果我想使用N个先前的观察来预测下一个(仅下一个!),那么LSTM的输入数据的形状应该是什么?例如,如果我们想t-n,..., t-2, t-1用来预测t
Euler_Salter '17

0

为时已晚,但以防万一;
一个样品可能是指单独训练的例子。因此,“ batch_size”变量是您发送到神经网络的样本数。也就是说,您一次向神经网络提供了多少个不同的示例。

TimeSteps是时间的滴答声。您的每个样本需要多长时间。例如,一个样本可以包含128个时间步长,其中每个时间步长可以是信号处理的30秒。在自然语言处理(NLP)中,时间步长可能与字符,单词或句子相关联,具体取决于设置。

特征只是我们在每个时间步中输入的尺寸数。例如,在NLP中,可以使用word2vec用300个特征表示一个单词。对于信号处理,我们假设您的信号是3D。也就是说,您具有X,Y和Z信号,例如每个轴上的加速度计测量值。这意味着您将在每个时间步长为每个样本发送3个功能。

纪尧姆


0

我用一个例子来回答:[“你好,这是xyz”,“你好吗”,“好人...”]

在这种情况下,“ [样本,时间步长,特征]”表示:

  • 样本: 3,因为列表中有3个元素
  • 时间步长:在这里,您可以采用max_length = 4 length(“ hello this is xyz”)= 4; 长度(“你好吗”)= 4; length(“ great man ...”)= 2(删除标点符号“。”之后)。之所以说这是一个时间步长,是因为在第一个元素“你好,这是xyz” ==> t0(“ hello”),t1(“ this”),t2(“ is”)和t3(“ xyz”)
  • 特点:每个单词嵌入的大小。例如,“ hello”:50D数组,“ this”:50D数组,依此类推
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.