视频理解多模态大模型(大模型基础、微调、视频理解基础)

news2024/10/6 2:30:46

转眼就要博0了,导师开始让我看视频理解多模态方向的内容,重新一遍打基础吧,从Python,到NLP,再到视频理解,最后加上凸优化,一步一步来,疯学一个暑假。写这个博客作为我的笔记以及好文章的链接搬运,以便以后复习。


Python从入门到放弃
PyTorch2深度学习光速入门,实战任务
计算机视觉中video understanding领域有什么研究方向和比较重要的成果?
视频理解类Papers整理 看完√
万字长文漫谈视频理解
视频理解综述:动作识别、时序动作定位、视频Embedding
视频理解/动作分类 模型汇总(2022.06.28 更新)
视频多模态预训练/检索模型
视频多模态预训练/检索模型(二)
多模态视频文本时序定位
多模态预训练文章笔记


一.多模态大模型

1.1 统一架构

多模态大模型都是Transformer based架构,NLP对文本进行embedding,CV对图像patch进行Embedding,从图像、视频、文本、语音数据中提取特征,转换为tokens,进行不同模态特征的对齐,送入Transformer进行运算。

1.2 模型基础

预训练语言模型的前世今生 - 从Word Embedding到RNN/LSTM到Transformer到GPT到BERT

1.2.1 Transformer

Transformer 是一种基于自注意力机制(self-attention)的序列到序列(sequence-to-sequence)模型。它使用了多头注意力机制,能够并行地关注不同位置的信息。Transformer 在自然语言处理领域中广泛应用,如机器翻译和文本生成。
在这里插入图片描述

1.2.2 ViT

ViT(Vision Transformer)是一种将 Transformer 模型应用于图像分类任务的方法。它将图像分割为一系列的小块,并将每个小块作为序列输入 Transformer 模型。通过自注意力机制,ViT 能够在图像中捕捉全局和局部的视觉信息,实现图像分类。
在这里插入图片描述

1.2.3 Bert

Bert (Bidirectional Encoder Representations from Transformers)是一种双向 Transformer 编码器模型,通过预训练和微调的方式,提供了深度的语言理解能力。与传统的单向语言模型不同,Bert 同时考虑了上下文的信息,使得它在词义消歧、命名实体识别等任务上具有优势。
在这里插入图片描述

1.2.4 CrossAttention

CrossAttention 是 Transformer 模型中的一种注意力机制。与自注意力机制不同,CrossAttention 允许模型在处理输入序列时,同时关注另一个相关的序列。CrossAttention 在多模态任务中经常使用,例如将图像和文本进行对齐或生成多模态表示。(Q和K不同源,K和V同源)
在这里插入图片描述

1.2.5 CLIP

CLIP (Contrastive Language-Image Pretraining)是一种跨模态的预训练模型,它能够同时处理图像和文本。通过将图像和文本进行对比学习,CLIP 提供了一个共享的视觉和语义空间,使得图像和文本可以进行直接的匹配和检索。
在这里插入图片描述

1.2.6 GPT

GPT(Generative Pretrained Transformer)是一种基于 Transformer 模型的预训练语言生成模型。GPT 通过大规模的无监督训练来学习语言的语法和语义,能够生成连贯且逼真的文本。GPT 在文本生成、对话系统等任务中取得了显著的成果。
在这里插入图片描述
在这里插入图片描述

1.2.7 预训练

通过 ImageNet 数据集我们训练出一个模型 A。由于上面提到 CNN 的浅层学到的特征通用性特别强,我们可以对模型 A 做出一部分改进得到模型 B(两种方法):

  • 冻结:浅层参数使用模型 A 的参数,高层参数随机初始化,浅层参数一直不变,然后利用领导给出的 30 张图片训练参数。
  • 微调:浅层参数使用模型 A 的参数,高层参数随机初始化,然后利用领导给出的 30 张图片训练参数,但是在这里浅层参数会随着任务的训练不断发生变化。

在这里插入图片描述

1.2.6 模态对齐

在这里插入图片描述

1.2.7 迁移与零样本学习

迁移学习(小模型) 通常使用较小的模型,在源领域训练好的知识和参数可以被迁移到目标领域,从而加速目标任务的学习过程。这种方式可以提高模型的泛化能力和效果,在数据稀缺的情况下也能取得较好的结果。

Zero-shot(大模型) 解决从未见过类别的样本进行分类的问题。在零样本学习中,我们通常使用大模型,如GPT-3等。这些模型在训练阶段通过学习大规模数据获取了广泛的知识,并且能够通过关联不同领域的知识来进行分类。通过利用这些大模型的泛化能力,我们可以在没有见过的类别上进行分类,实现零样本学习。
在这里插入图片描述

1.2.8 拓展阅读

CLIP——图文匹配
(1) 预训练图像和文本编码器:训练<图片,文本>对,进行对比学习。N个图像和N个文本,用BertViT提取文本和图片的特征(768维),向量两两相乘,得到<图片,文本>对儿之间的余弦相似度(向量乘法)。标签对比学习:对角线上相匹配的图文是正样本(正确的pair=1),其他不匹配的全是负样本(错误的pair=0),这两个标签计算loss反向传播,最大化正样本对的余弦相似度,最小化负样本对的优余弦相似度,约束前面的BertViT梯度下降修改参数。最终预训练得到文本和图像编码器BertViT
(2)和(3) Zero-shot实现图文匹配:根据刚刚的预训练,任意给出文本(dog、car、cat…)与图片计算余弦相似度(相乘),相似度分数最大的就是正确的<图片,文本>
在这里插入图片描述
BLIP——图文匹配&图生文
(1)对比学习ITC:图片编码器提取的向量 与 第一个文本编码器提取的向量,进行对比学习。(bert的双向注意力)
(2)二分类任务ITM:图片编码器提取的向量 与 第二个文本编码器提取的向量进行cross attention,融合的向量进行二分类任务(文本和图片是不是描述的同一件事),以更细粒度的让文本和图像的难样本对齐。(bert的双向注意力)
(3)生成任务LM:图片编码器提取的向量 与 第三个文本编码器提取的向量进行cross attention,融合的向量进行文本生成任务(根据图像生成描述文本)。(gpt的单向注意力)
在这里插入图片描述
在这里插入图片描述
BLIP2——图文匹配&图生文
在这里插入图片描述
(1)阶段一:使用QFormer将 图像特征向量 投影到 文本特征空间,使得LLM可以理解图像向量的特征。
在这里插入图片描述
(2)阶段二:把图片特征输入LLM(作为prompt),生成对应的图像的文本描述。
在这里插入图片描述
BLIP2对细节理解不到位的原因:ViT的patch级tokenlization对细节处理不到位。
在这里插入图片描述
DALL·E——文生图
(1)训练过程:将图片编码为one-hot向量,再解码为一只狗,实现无损压缩图像。(loss是原图和解码图片的差别)

在这里插入图片描述
(2)推理过程:自回归编码器(GPT)通过文本tokens预测出多种图片tokens,再解码为对应的图片,最后使用CLIP进行图文匹配,得到解码图片中与文本最相似的图片。
在这里插入图片描述

VisualGLM——中文版BLIP2
使用Lora训练。
但文本生成经常胡说八道,原因在于ChatGLM的模型规模太小7B。
在这里插入图片描述

二.大模型分类

学习哪些大模型?(训练不同规模的模型适应不同场景)

  • 在线大模型:OpneAI系列的大模型组
    在这里插入图片描述
  • 开源大模型:ChatGLM 6B 和 VisualGM 6B
    在这里插入图片描述

2.1 在线大模型

需要OpenAI的key,私人数据被openai共享,不能部署在本地,只能调用API接口在线微调Openai公司的大模型。

语言大模型:
在这里插入图片描述

图文多模态大模型:
在这里插入图片描述

语音大模型:
在这里插入图片描述

文本嵌入大模型:根据文本语义编码,语义越接近,向量越接近。
在这里插入图片描述

审查大模型:
在这里插入图片描述

编程大模型:
在这里插入图片描述

2.2 开源大模型

根据下游任务使用开源微调框架进行微调训练,也可以本地部署。

实时更新的OPEN LLM排行榜

ChatGLM——中文语言开源大模型

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

VisualGLM——中文多模态开源大模型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三. 大模型微调

  • 全量微调(Full Fine-tuning,FT)将预训练好的模型的所有参数都进行微调,包括底层的特征提取器和顶层的分类器。这种方法通常需要较大的计算资源和长时间的训练,但可以获得相对较好的性能。

  • 高效微调(Partial Fine-tuning,PEFT)则是一种更加高效的微调方法,它仅对部分参数进行微调。具体来说,我们冻结预训练模型的底层参数(如特征提取器)不进行微调,只微调顶层的分类器或一部分顶层参数。这样可以更快地完成微调过程,减少计算资源和训练时间的消耗,同时在一定程度上保留了底层参数的知识。

  • 基于强化学习的进阶微调(Reinforcement Learning-based Hierarchical Fine-tuning,RLHF)使用强化学习的思想来指导微调的过程。通常,在微调过程中,我们定义一个奖励函数并通过强化学习的方式来最大化奖励。这样可以使得模型在微调过程中更加智能地进行参数更新,从而获得更好的性能和泛化能力。
    在这里插入图片描述在这里插入图片描述

3.1 高效微调 PEFT

在这里插入图片描述

3.1.1 LoRA

在这里插入图片描述
在这里插入图片描述

3.1.2 Prefix Tuning

在这里插入图片描述

3.1.3 Prompt Tuning

在这里插入图片描述

3.1.4 P-Tuning V2

在这里插入图片描述

3.2 RLHF

在这里插入图片描述
在这里插入图片描述

四.硬件和操作系统要求

在这里插入图片描述

4.1 显卡

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.2 操作系统

在这里插入图片描述

五. LangChian

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六.视频理解

6.1 TASK

6.1.1 行为识别——Action Recognition

在这里插入图片描述

6.1.2 时序动作检测——Temporal Action Detction

在这里插入图片描述
基于内容的检索——Moment Retrieval
在这里插入图片描述

关键片段定位——Highlight Detection
在这里插入图片描述

6.1.3 时空动作检测——Spation Temporal Action Detection

在这里插入图片描述
挑战:
在这里插入图片描述
挑战1方案:静态的外观特征 + 帧间空间运动特征
在这里插入图片描述
思路1:先提取静态外观特征,再使用不同帧的静态外观特征,提取动态运动特征。
在这里插入图片描述
思路2:同时并行提取静态外观特征 和 时序运动特征,再进行融合。
在这里插入图片描述
思路3:使用更加强大的架构,直接提取综合特征。
在这里插入图片描述
**挑战2:**视频数据包含的帧数太多,计算量巨大

在这里插入图片描述
**挑战3:**难以标注海量视频数据
在这里插入图片描述

6.2 经典工作

【OpenMMLab 公开课】视频理解与 MMAction2
视频理解论文串讲(上)【论文精读】
Introduction to Human Activity Understanding in Videos (Talk 1/6)
在这里插入图片描述
在这里插入图片描述

6.2.1 光流Optical Flow 传统方法

在这里插入图片描述

光流估计:
在这里插入图片描述
轨迹追踪:

在这里插入图片描述

光流可视化:
在这里插入图片描述

稀疏光流与稠密光流:
在这里插入图片描述

稠密轨迹方法 Dense Trajectories(DT)

在这里插入图片描述
按轨迹对齐的局部特征:
在这里插入图片描述
特征编码:对提取到的轨迹特征进行聚类,得到不同的聚类中心(视觉词语),构成直方图来表示整个视频特征。
特征

稠密轨迹方法 iDT

在这里插入图片描述

6.2.2 2D卷积

DeepVideo

在这里插入图片描述

Two-Stream Networks双流网络

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

TSN时序分段网络

做对了什么? 按照新的3段分段方式,而不是按照固定频率去采样,使得网络分析的时间范围更长。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.2.3 3D卷积

能不能不用计算光流,直接从多帧图像中提取时序与运动信息?
在这里插入图片描述
3D卷积:增加时间维度time(帧)
在这里插入图片描述

C3D

在这里插入图片描述
C3D的性能瓶颈
在这里插入图片描述

I3D

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3D卷积计算量非常大
在这里插入图片描述

3D卷积计算量 解决办法:

①混合2D 3D
在这里插入图片描述
②分解卷积核
在这里插入图片描述
在这里插入图片描述
③减少通道关联

在这里插入图片描述

SlowFast

在这里插入图片描述

6.2.4 弱监督

在这里插入图片描述
在这里插入图片描述

IG-65M

在这里插入图片描述

OmniSource

在这里插入图片描述
在这里插入图片描述

6.3 最新研究

https://www.bilibili.com/video/BV1VB4y1G7to/?spm_id_from=333.999.0.0&vd_source=b2549fdee562c700f2b1f3f49065201b

https://www.bilibili.com/video/BV1uG411G74j/?spm_id_from=333.999.0.0&vd_source=b2549fdee562c700f2b1f3f49065201b

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/777496.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法训练营第55天|392 115

392 双指针法很简单 class Solution { public:bool isSubsequence(string s, string t) {int i0;for (int j0; j<t.size() && i<s.size(); j) {if (t[j]s[i]) {i;}}return is.size();} }; 用动态规划来写的话 逻辑其实跟1143 1035是一样的 最后返回看dp[s.size…

Vue element el-input输入框 实现 ’空格+enter’组合键:换行,enter:发送,使用keydown和keyup键盘事件来实现

需求 输入框 &#xff0c;输入内容后 &#xff0c;按enter空格键 换行&#xff0c;按enter键 发送调取接口 思路 jquery的也分为三个过程&#xff0c;在事件名称上有所不同 1、某个键盘的键被松开&#xff1a;keyup 2、某个键被按下&#xff1a;keydown 3、某个键盘的键被按…

基于查找表(lookup table,LUT)方法反演植被参数

LUT指显示查找表&#xff08;Look-Up-Table)&#xff0c;本质上就是一个RAM。它把数据事先写入RAM后&#xff0c;每当输入一个信号就等于输入一个地址进行查表&#xff0c;找出地址对应的内容&#xff0c;然后输出。 LUT的应用范围比较广泛&#xff0c;例如&#xff1a;LUT(Lo…

机器学习:Self-supervised Learning for Speech and image

review : self-supervised learning for text Self-supervised learning for speech 使用Speech版本的bert能比较好的作用于语音任务上&#xff0c;如果没有self-supervised的话&#xff0c;别的模型可能需要上万小时的数据。 Superb ytb课程&#xff1a;MpsVE60iRLM工具&…

vulnhub打靶--lampiao

目录 vulnhub--lampiao1.扫描主机端口&#xff0c;发现1898端口部署web2.打开robots.txt发现CHANGELOG.txt文件3.发现drupal更新日志&#xff0c;drupal这个版本有公开exp。利用msf打下4.执行uname -a 或者上传漏洞suggest脚本&#xff0c;可以发现有脏牛提权5.上传脚本到目标&…

2023年7月19日,锁升级,网络编程

锁升级 锁的四种状态&#xff1a;无锁、偏向锁、轻量级锁、重量级锁&#xff08;JDK1.6&#xff09; 无锁&#xff1a;操作数据时不会上锁 偏向锁&#xff1a;会偏向于第一个访问锁的线程&#xff0c; 如果在运行过程中&#xff0c;只有一个线程访问加锁的资源&#xff0c;不存…

JavaWeb+Vue分离项目实现增删改查

文章目录 前言数据库后端代码util 代码listener 代码filter 代码po 代码dao 层增删改查代码service 层增删改查代码controller 层增删改查代码 前端代码查询操作删除功能增加功能修改方法路由传参修改会话存储修改 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&…

Java037——多线程

当涉及到计算机操作系统中的并发执行时&#xff0c;进程和线程是两个核心概念。 一、程序(program) 程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一 段静态的代码&#xff0c;静态对象。 二、进程&#xff08;Process&#xff09; 进程&#xff0…

MD5数据加密方法

什么场景需要使用数据加密呢&#xff1f;比如秘密数据传输、用户密码加密存储等等 数据传输可使用密钥对的方式进行加密解密&#xff0c;使用签名方式验证数据是否可靠&#xff0c;而密码加密存储可使用MD5等一些算法对数据进行单向加密 一、MD5单向加密 1、百度说法&#x…

【基础统计学】带重叠差分置信区间的检验

一、说明 对于统计模式识别&#xff0c;需要从基本的检验入手进行学习掌握&#xff0c;本篇是对统计中存在问题的探讨&#xff1a;如果两个分布有重叠该怎么做。具体的统计学原理&#xff0c;将在本人专栏中系统阐述。 二、几个重要概念 2.1 什么是假设检验 假设检验是一种统计…

第二节 C++ 数据类型

文章目录 1. 概述1.1 数据类型的重要作用 (了解) 2. 数据类型2.1 什么是进制 ?2.1.1 存储单位 2.2 整数类型2.2.1 整数类型使用2.2.2 超出范围2.2.3 关键字 sizeof 2.3 实型(浮点型)2.3.1 setprecision()函数2.3.2 科学计数 (了解即可) 2.4 字符型2.4.1 字符型定义2.4.2 ASCII…

树-用Java托举

再讲完前面几个数据结构后&#xff0c;下面&#xff0c;我们开始对树进行一个讲解分析 树 引言 树是一种重要的数据结构&#xff0c;在计算机科学中有着广泛的应用。树是由节点和边组 成的非线性数据结构&#xff0c;具有层次结构和递归定义的特点。每个节点可以有多个子 节点…

【英杰送书第三期】Spring 解决依赖版本不一致报错 | 文末送书

Yan-英杰的主 悟已往之不谏 知来者之可追 C程序员&#xff0c;2024届电子信息研究生 目录 问题描述 报错信息如下 报错描述 解决方法 总结 【粉丝福利】 【文末送书】 目录&#xff1a; 本书特色&#xff1a; 问题描述 报错信息如下 Description:An attempt…

Docker 命令(二)

查看 docker 版本信息 docker version #查看版本信息docker 信息查看 docker info Client:Context: defaultDebug Mode: falsePlugins:app: Docker App (Docker Inc., v0.9.1-beta3)buildx: Build with BuildKit (Docker Inc., v0.5.1-docker)Server:Containers: 0 …

get请求传入[ ]这类字符 返回400错误解决

问题描述 使用get请求查询&#xff0c;传入特殊字符 []时&#xff0c;接口报错。 分析原因 高版本的tomcat&#xff0c;有个新特性&#xff1a; 严格按照RFC 3986规范进行访问解析&#xff0c;而 RFC3986规范定义了Url中只允许包含英文字母&#xff08;a-zA-Z&#xff09;、数…

【Python】数据分析+数据挖掘——Pandas中文件I/O操作

文章目录 前言1. 读入文本格式数据文件1.1 pd.read_csv实例 1.2 pd.read_table1.3 pd.read_excel实例 1.4 pd.read_sql 2. 保存数据文件2.1 保存数据文件到外部文件中2.2 保存数据文件到数据库中 结束语 前言 在数据分析和数据挖掘中&#xff0c;数据通常以文件的形式存储在磁…

静电消除风机风棒的工作原理

静电消除风机风棒的工作原理静电消除离子风机是一种专门用于消除静电的设备。静电是由于物体表面带有静电荷而引起的现象&#xff0c;容易导致尘埃吸附、静电放电等问题。静电消除离子风机通过释放负离子或正离子来中和空气中的静电荷&#xff0c;从而减少静电问题的发生。 静…

【基于CentOS 7的Rsync服务】

目录 一、概述 二、特性 1.快速 2.安全 3.应用场景 三、数据的同步方式 1.pull 2.push 四、rsync传输模式 1.本地传输 2.远程传输 3.守护进程 五、rsync应用 1.安装 2.监听端口 六、rsync命令 1.格式 1.1 作为远程命令 1.2 作为rsync服务 2.选项 3.举例 …

服务器数据恢复-ESX SERVER无法连接到STORAGE的数据恢复案例

服务器数据恢复环境&#xff1a; 某公司信息管理平台&#xff0c;数台VMware ESX SERVER虚拟机共享一台IBM某型号存储。 服务器故障&#xff1a; VC报告虚拟磁盘丢失&#xff0c;管理员ssh到ESX中执行fdisk -l命令查看磁盘&#xff0c;发现STORAGE已经没有分区表了。重启设备后…

2023-7-20-第二十一式访问者模式

&#x1f37f;*★,*:.☆(&#xffe3;▽&#xffe3;)/$:*.★* &#x1f37f; &#x1f4a5;&#x1f4a5;&#x1f4a5;欢迎来到&#x1f91e;汤姆&#x1f91e;的csdn博文&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f49f;&#x1f49f;喜欢的朋友可以关注一下&#xf…