阅读了一段时间后,我现在对我的LSTM数据结构感到困惑。假设我有一个有监督的学习问题,有1000个样本和40个特征作为输入。现在我想创建x的10个时间步骤。
x: (1000, 10, 40)每个二维矩阵(1000,40)向行方向移动10次。
现在的问题是:
对于一个结果目标,我的维度是y=[1000,1],但我也读取了y=[1000,10,1]。我想,值为10的第二维应该是逐行移动的目标向量。但是,我真的需要这个吗?我的解决方案不应该是正确的吗?
发布于 2018-04-18 20:50:57
你的目标可以是你想要的任何东西。
例如,如果您想进行序列排序,y的时间步数将与输入相同(您对每个时间步骤都有预测)。
但是,您也可以定义一个只有一个时间步长的输出,例如文本分类。您的输入数据有10个时间步骤,但输出只是最后一个时间步骤的预测。
这取决于你想要解决的问题。
发布于 2021-04-12 02:51:22
这取决于问题。1000,1的形状表明,您正在尝试为批处理的每个序列成员预测一个标签,每个成员在序列中最多有10个标记。这可能会发生,如果你想把每句10个单词的句子归类为积极或消极情绪,或者基本上如果你对每个句子都有标签的话。
1000,10,1的形状表明,您正在尝试为批处理的每个序列成员中的10个令牌成员预测单个标签。这通常用于POS标记,NER标记,基本上,如果您有一个标签应用于句子中的每个标记。
https://datascience.stackexchange.com/questions/30474
复制相似问题