一、overview
这篇文章提出了一个新的编译码重构网络(RecNet),该网络的编码器-解码器(encoder-decoder)利用视频的前向流(视频到文字描述)和重构器(reconstructor)利用后向流(文字描述到视频),以缩小文字特征的重构误差来训练网络,使得网络更好生成视频的文字描述。
如上图所示:
(1) Encoder: 提取视频的视觉特征来获取视频的高层语义信息,给定的视频序列被编码为序列表示V={v1,v2 ,…,vm },其中m表示视频帧的总数。
(2) Decoder: 在视频表示的基础上逐字生成字幕, hi是在LSTM中计算ith 的hidden状态,ci是使用时间注意机制计算的ith文本向量。
(3) Reconstructor: 从解码器的hidden状态序列再现视频,即以解码器的hidden状态H={h1,h2,…,hn}作为输入,再现由编码器生成的序列视频帧表示。
二、代码复现
参考博客 https://blog.csdn.net/weixin_40466548/article/details/110918205
-
安装环境
其顺序为离线安装pytorch 1.1.0、torchvision 0.3.0,
后在线安装cuda和cudnn然后运行run.py,
再安装模块一直到没有模块报错。