许可协议: "知识共享-署名-非商业性使用 4.0"
标签:
VideoMAE(基础尺寸模型,基于Kinetics-400微调)
VideoMAE模型通过自监督方式预训练1600个周期,并在Kinetics-400数据集上以监督方式进行微调。该模型由Tong等人在论文《VideoMAE:掩码自编码器是数据高效的自监督视频预训练学习器》中提出,并首次发布于此代码库。
免责声明:发布VideoMAE的团队未为此模型编写模型卡,本模型卡由Hugging Face团队撰写。
模型描述
VideoMAE是掩码自编码器(MAE)在视频领域的扩展。模型架构与标准视觉Transformer(ViT)非常相似,顶部添加了一个解码器用于预测被掩码的补丁的像素值。
视频以固定尺寸补丁(分辨率16x16)的序列形式输入模型,这些补丁经过线性嵌入。序列开头还添加了一个[CLS]标记,用于分类任务。在将序列输入Transformer编码器层之前,还添加了固定的正弦/余弦位置嵌入。
通过预训练,模型学习视频的内部表示,可用于提取下游任务所需的特征:例如,如果有带标签的视频数据集,可以在预训练编码器顶部添加线性层来训练标准分类器。通常会在[CLS]标记顶部添加线性层,因为该标记的最后隐藏状态可视为整个视频的表示。
预期用途与限制
您可以使用原始模型将视频分类为Kinetics-400的400个可能类别之一。
使用方法
以下是使用此模型对视频进行分类的示例:
from transformers import VideoMAEImageProcessor, VideoMAEForVideoClassification
import numpy as np
import torch
video = list(np.random.randn(16, 3, 224, 224))
processor = VideoMAEImageProcessor.from_pretrained("MCG-NJU/videomae-base-finetuned-kinetics")
model = VideoMAEForVideoClassification.from_pretrained("MCG-NJU/videomae-base-finetuned-kinetics")
inputs = processor(video, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("预测类别:", model.config.id2label[predicted_class_idx])
更多代码示例,请参阅文档。
训练数据
(待补充,欢迎提交PR)
训练流程
预处理
(待补充,欢迎提交PR)
预训练
(待补充,欢迎提交PR)
评估结果
该模型在Kinetics-400测试集上获得了80.9的top-1准确率和94.7的top-5准确率。
BibTeX条目与引用信息
misc{https://doi.org/10.48550/arxiv.2203.12602,
doi = {10.48550/ARXIV.2203.12602},
url = {https://arxiv.org/abs/2203.12602},
author = {Tong, Zhan and Song, Yibing and Wang, Jue and Wang, Limin},
keywords = {Computer Vision and Pattern Recognition (cs.CV), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {VideoMAE:掩码自编码器是数据高效的自监督视频预训练学习器},
publisher = {arXiv},
year = {2022},
copyright = {知识共享署名 4.0 国际许可协议}
}