我的一条样本维度是249的,我的batch_size是64个,也就是以6424*9的形式放入lstm。
网络结构很简单lstm+linear+softmax,我想问在前向传播时,数据经过lstm后应该怎样给数据变换维度?
从每次输出的结果看,计算机感觉并没有进行学习?
lstm多维分类的维度问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 太阳是白的 2023-02-16 09:28关注
在进行前向传播时,数据经过LSTM层后的维度会发生变化,具体变化的方式与LSTM层的参数设置有关。
假设您的输入数据的形状为(64, 24, 9),其中64为batch_size,24为序列长度,9为特征数量。如果您的LSTM层的隐藏状态大小为128,那么数据经过LSTM层后的维度为(64, 24, 128)。
接下来,您需要将LSTM层输出的3D张量转换为2D张量,以便进行全连接层和softmax层的计算。常见的方法是将最后一个时间步的输出作为LSTM层的输出,即使用LSTM层的最后一个时间步的输出作为全连接层的输入,从而得到每个样本的预测结果。这个输出的形状为(64, 128),表示每个样本的特征向量。
接着,您可以使用全连接层对这个特征向量进行进一步处理,将其转换为适合于分类的形式。这里可以选择添加一个或多个全连接层,将特征向量映射到一个合适的维度。最后,使用softmax层进行分类,输出每个类别的概率。
因此,在前向传播时,数据经过LSTM层后需要进行维度变换,以适应全连接层和softmax层的输入要求
解决 无用评论 打赏 举报
悬赏问题
- ¥15 解决一个加好友限制问题 或者有好的方案
- ¥15 关于#java#的问题,请各位专家解答!
- ¥15 急matlab编程仿真二阶震荡系统
- ¥20 TEC-9的数据通路实验
- ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
- ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
- ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
- ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
- ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
- ¥30 求解达问题(有红包)