深度学习LSTM神经网络输入输出究竟是怎样的?

第一要明确的是神经网络所处理的单位全部都是:向量


下面就解释为什么你会看到训练数据会是矩阵和张量


常规feedforward 输入和输出:矩阵


输入矩阵形状:(n_samples, dim_input)


输出矩阵形状:(n_samples, dim_output)


注:真正测试/训练的时候,网络的输入和输出就是向量而已。加入n_samples这个维度是为了可以实现一次训练多个样本,求出平均梯度来更新权重,这个叫做Mini-batch gradient descent。 如果n_samples等于1,那么这种更新方式叫做Stochastic Gradient Descent (SGD)。


Feedforward 的输入输出的本质都是单个向量。


常规Recurrent (RNN/LSTM/GRU) 输入和输出:张量


输入张量形状:(time_steps, n_samples, dim_input)


输出张量形状:(time_steps, n_samples, dim_output)


蓝海大脑 京ICP备18017748号-1