如何为 CNN+LSTM 排列数据集/图像

数据挖掘 喀拉斯 美国有线电视新闻网 lstm 图像分类 迁移学习
2021-10-08 09:57:27

我正在使用以 Resnet50 作为基础模型(在 Keras 中)(例如 A 类和 B 类)的迁移学习来解决图像分类问题。

这种分类涉及时间因素。例如,我需要足够的证据来从一个班级过渡到另一个班级。
因此,我想到的一个实现平滑过渡的想法是将 LSTM 层添加到 CNN 层(CNN+LSTM)。

在理解以下查询时需要您的帮助。

  1. 有什么方法可以将 LSTM 层添加到迁移学习过程中(假设 CNN 层权重不可训练)

  2. 我需要如何准备数据集(图像帧)。例如,我为 A 类和 B 类各有 10 个视频。我是否需要按照视频中的顺序保持图像的顺序。(到目前为止,对于正常的图像分类,我已经打乱了图像帧)

  3. 关于构建我自己的 CNN + LSTM 模型的任何想法。

参考链接对于 2 和 3 来说非常有用。

是否需要更新视频中的图像帧?

请对此进行任何更新。

谢谢你,深家伙

1个回答

如果有任何兴趣,我会扩大我的答案。我建议使用 Vgg 和两个自定义的完全连接的层构建一个简单的测试模型,这些层以下面的文档中的单个 sigmoid 结束。如果您喜欢早期融合,我建议使用堆叠的黑白图像。
https://www.cs.cmu.edu/~rahuls/pub/cvpr2014-deepvideo-rahuls.pdf

用于设置视频分类的各种选项

如果你想走 LSTM 的路线,那么 Karpathy 的这张图会有所帮助。使用多对一架构。RNNS 或 LSTMS 的输入因实现而异。您很可能希望通过完全连接层传递最终的卷积层,然后进入 RNN/LSTM。https://karpathy.github.io/2015/05/21/rnn-effectiveness/

蓝色是输出,红色是 CNN、绿色 RNN 或 LSTM