# 毕业设计:《基于CLIP模型的视频文本检索设计与实现》
### 主要内容
针对现有基于CLIP预训练模型方法存在的训练时间长、模型规模大等问题,本文在CLIP4Clip模型的基础上,采用关键帧保存方案和Adapter Tuning低参数量微调,提高了计算资源有限情况下的训练效率和模型性能。
1. 训练速度方面,本文首先采用帧保存方案,将视频库中的关键帧提取并保存为图片,从而加快数据加载速度,将训练速度提高了14.6倍;然后采用AIM模型的Adapter设计方案,在CLIP4Clip模型中插入可训练的Adapter层,只训练少量参数实现快速收敛,最终实现训练速度提高34倍。
2. 模型性能方面,论文证明了平均选取视频关键帧,比按照最大帧间差选取视频关键帧的效果更优;然后证明了AIM在视频检索领域的有效性;并可以使用AIM来提高模型性能,将模型在MSR-VTT数据集上的R@1从42.2%提升至43.4%,R@5从70.2%提升为71.1%。
3. 本文设计并实现了一个视频文本检索系统,为了保障系统的检索速度,搭建了向量数据库,并测试了不同数据保存方式的数据存取速度。系统使用Django搭建了Web端应用,实现了多种功能需求,展示了本文方法在视频文本检索系统中的应用效果和潜力。
关键词:视频文本检索;CLIP模型;CLIP4Clip模型;低参数量微调;训练加速
### 技术实现
1. 模型基于[CLIP](https://github.com/openai/CLIP)、[CLIP4Clip](https://github.com/ArrowLuo/CLIP4Clip)、[AIM](https://github.com/taoyang1122/adapt-image-models),数据集主要使用[MSR-VTT](http://ms-multimedia-challenge.com/2017/dataset);
2. 界面后端由Django实现;
### 图片
<center>
<img style="border-radius: 0.3125em;
box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
src="image/检索结果展示页面.jpg" width = "80%" alt=""/>
<br>
<div style="color:orange; border-bottom: 1px solid #d9d9d9;
display: inline-block;
color: #999;
padding: 2px;">
检索结果展示页面
</div>
</center>
<center>
<img style="border-radius: 0.3125em;
box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
src="image/视频播放页面.jpg" width = "80%" alt=""/>
<br>
<div style="color:orange; border-bottom: 1px solid #d9d9d9;
display: inline-block;
color: #999;
padding: 2px;">
视频播放页面
</div>
</center>
<center>
<img style="border-radius: 0.3125em;
box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
height = "400"
src="image/用户搜索视频流程图.svg" width = "60%" alt=""/>
<br>
<div style="color:orange; border-bottom: 1px solid #d9d9d9;
display: inline-block;
color: #999;
padding: 2px;">
用户搜索视频流程图
</div>
</center>
<center>
<img style="border-radius: 0.3125em;
box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
height = "200"
src="image/算法整体结构.svg" width = "60%" alt=""/>
<br>
<div style="color:orange; border-bottom: 1px solid #d9d9d9;
display: inline-block;
color: #999;
padding: 2px;">
算法整体结构
</div>
</center>
<center>
<img style="border-radius: 0.3125em;
box-shadow: 0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.08);"
height = "200"
src="image/模型整体结构.svg" width = "60%" alt=""/>
<br>
<div style="color:orange; border-bottom: 1px solid #d9d9d9;
display: inline-block;
color: #999;
padding: 2px;">
模型整体结构
</div>
</center>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
针对现有基于CLIP预训练模型方法存在的训练时间长、模型规模大等问题,本文在CLIP4Clip模型的基础上,采用关键帧保存方案和Adapter Tuning低参数量微调,提高了计算资源有限情况下的训练效率和模型性能。 训练速度方面,本文首先采用帧保存方案,将视频库中的关键帧提取并保存为图片,从而加快数据加载速度,将训练速度提高了14.6倍;然后采用AIM模型的Adapter设计方案,在CLIP4Clip模型中插入可训练的Adapter层,只训练少量参数实现快速收敛,最终实现训练速度提高34倍。 模型性能方面,论文证明了平均选取视频关键帧,比按照最大帧间差选取视频关键帧的效果更优;然后证明了AIM在视频检索领域的有效性;并可以使用AIM来提高模型性能,将模型在MSR-VTT数据集上的R@1从42.2%提升至43.4%,R@5从70.2%提升为71.1%。 本文设计并实现了一个视频文本检索系统,为了保障系统的检索速度,搭建了向量数据库,并测试了不同数据保存方式的数据存取速度。系统使用Django搭建了Web端应用,实现了多种功能需求,展示了本文方法在视频文本检索系统中的应用效果和潜力。
资源推荐
资源详情
资源评论
收起资源包目录
基于python实现的CLIP模型的视频文本检索设计与实现源码+论文文件+项目说明.zip (216个子文件)
home.css 4KB
header.css 2KB
general.css 505B
bpe_simple_vocab_16e6.txt.gz 1.29MB
bpe_simple_vocab_16e6.txt.gz 1.29MB
bpe_simple_vocab_16e6.txt.gz 1.29MB
home_valon.html 3KB
header.html 2KB
home_valoff.html 2KB
video_player.html 1KB
main.html 947B
Graduation_Project.iml 634B
其他.iml 511B
检索结果展示页面.jpg 275KB
视频播放页面.jpg 208KB
README.md 4KB
README.md 3KB
README.md 2KB
README.md 357B
README.md 162B
毕业设计记录手册.pdf 1.68MB
README(毕业设计论文).pdf 1.6MB
main_task_retrieval.py 28KB
model.py 22KB
model.py 22KB
model.py 22KB
clip.py 10KB
clip.py 10KB
clip.py 10KB
simple_tokenizer.py 9KB
simple_tokenizer.py 9KB
simple_tokenizer.py 9KB
file_utils.py 8KB
Tools.py 8KB
Tools.py 8KB
dataloader_msvd_retrieval.py 8KB
construct.py 8KB
construct.py 8KB
frame_extract_tool.py 8KB
frame_extract_tool.py 8KB
frame_extract_tool.py 7KB
optimization.py 7KB
AIM.py 6KB
AIM.py 6KB
AIM.py 6KB
keyFrameExtractor_diff.py 6KB
keyFrameExtractor_diff.py 6KB
keyFrameExtractor_diff.py 6KB
get_args.py 6KB
get_args.py 6KB
get_args.py 6KB
VideoSearchSystem.py 5KB
VideoSearchSystem.py 5KB
views.py 5KB
My_Model.py 5KB
My_Model.py 5KB
TensorDataBase.py 5KB
TensorDataBase.py 5KB
db_build.py 4KB
数据统计_画图.py 4KB
CLIP4Clip.py 4KB
CLIP4Clip.py 4KB
CLIP4Clip.py 4KB
rawvideo_util.py 4KB
settings.py 4KB
dataloader_keyFrame.py 4KB
dataloader_keyFrame.py 4KB
dataloader_keyFrame.py 4KB
数据统计_recall.py 3KB
My_Model.py 3KB
data_dataloaders.py 3KB
metrics.py 3KB
数据统计.py 3KB
util.py 3KB
测试pickle和pandas性能.py 2KB
keyFrameExtractor_Uniform.py 2KB
keyFrameExtractor_Uniform.py 2KB
keyFrameExtractor_Uniform.py 2KB
train.csv文件创建.py 2KB
train.csv文件创建.py 2KB
MSVD数据集csv创建.py 2KB
Tools.py 2KB
测试ln_and_bn.py 1KB
construct_dataloader.py 1KB
construct_dataloader.py 1KB
0001_initial.py 1KB
models.py 1023B
去除重复行.py 877B
urls.py 829B
keyFrameExtractor_IFrame.py 829B
keyFrameExtractor_IFrame.py 829B
manage.py 696B
画diff图.py 696B
测试jpg_png.py 593B
urls.py 591B
Tools.py 447B
wsgi.py 429B
asgi.py 429B
admin.py 247B
apps.py 152B
共 216 条
- 1
- 2
- 3
资源评论
- 九头怪2024-10-02实在是宝藏资源、宝藏分享者!感谢大佬~
生活家小毛.
- 粉丝: 6050
- 资源: 9295
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- DIN 17178-1986 特殊要求细晶粒结构钢焊接.pdf
- DIN 17174-1985 低温用焊接钢管.pdf
- DIN 17178-1986 中文版 特殊要求细晶粒结构钢焊接圆形钢管 交货技术条件.pdf
- DIN 32676-2001 饮食业、化工业和医药业用配件.不锈钢管夹具接头.焊接式(德文原版).pdf
- DIN 28181-1985 管束式热交换器的焊接钢管.尺寸.尺寸偏差和材料.pdf
- DIN 86037-1-1995 铜镍合金管道的活套法兰和焊接凸肩.第1部分组装.pdf
- DIN 86037-2-1995 铜镍合金管道的活套法兰和焊接凸肩.第2部分焊接凸肩.pdf
- DIN 46234-1980 非焊接接线端.铜导线用无绝缘套管环形连接.pdf
- DIN 86037-3-1995 铜镍合金管道的活套法兰和焊接凸肩.第3部分活套法兰.pdf
- DIN 86088-1996 铜镍合金制管道焊接异型件.三通.pdf
- DIN EN 499-1995 焊料.非合金钢和细粒钢的手动金属电弧焊接用涂剂焊条.分类.pdf
- DIN 86057-1976 管闷头连接件用法兰(套环)的焊接.pdf
- DIN EN 1011-1-2002 中文版 焊接.焊接金属材料的建议.第1部分电弧焊接通则.pdf
- DIN EN 1043-1-1996 金属材料焊接的破坏试验 硬度测试 第1部分:电弧焊接连接件的硬度试验.pdf
- DIN EN 1435-2002 焊缝的无损检验.焊接接头的X光照相检验.pdf
- DIN EN 1708-1-1999 中文版 焊接—钢焊接接头的基本细节 第1部分:承压构件.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功