【2022中国高校计算机大赛 微信大数据挑战赛】Top 1-6 方案总结

news/2024/5/19 15:50:26/文章来源:https://blog.csdn.net/weixin_43646592/article/details/126904740

前段时间参加了 2022中国高校计算机大赛 微信大数据挑战赛,比赛链接:https://algo.weixin.qq.com/。
由于时间原因精力有限,我们队伍的方案做的比较简陋:
【初赛:rank-18,复赛:rank-40(全国二等奖)】

简陋方案如下:
1、双流架构。roberta提取文本特征(title, asr, ocr)。swin-tiny和convnext-tiny分别提取视频特征,然后用concatDenseSE层融合。最后用3层cross-attention融合文本和视频特征。
2、其他一些常用比赛tricks:amp混合精度训练,EMA,FGM,SWA。
3、初赛用了单双流模型融合,复赛限制了QPS,所以没来得及弄模型加速。
4、预训练:复赛没时间搞哈哈哈。
5、模型加速优化,没弄,所以没法模型融合哈哈哈。

和前排的分数差距,主要在于:
1、没预训练,复赛翻车哈哈哈,要是用上了预训练的话,能有1-2个百分点提升。
2、没用CLIP-VIT(huggingface有现成可以用),这个可以涨2-3个百分点,所以我们队没用这个巨亏哈哈哈。
3、没搞模型加速优化,也就导致没法模型融合,看前排都融了好几个,融了的话,应该最多能提1个百分点吧。
4、如何合理进行伪标签制作,做好应该能涨几k。

下面对进入决赛的队伍方案做个总结,向大佬学习!!!

赛题任务-微信小视频分类(多模态任务):
在这里插入图片描述
在这里插入图片描述
复赛QPS要求:
在这里插入图片描述

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


🚀Top 1-6 方案列表:

序号队伍
TOP1苟进决赛
TOP2冲冲冲~
TOP3抱朴子
TOP4机器不学习啦
TOP5warriors
TOP6蜜度信息

TOP1-苟进决赛:

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

提问环节总结:
1、3种模型,本质上是在顶层的交互模块的区别,不管哪个模型牛,最后融合后,各模型的差异性可能对预测结果均有贡献。
2、知识蒸馏打出的伪标更好,前提是使用了更强更大的模型来打伪标。
3、除了知识蒸馏,也有考虑类别不平衡问题,只是ppt没展示,数量较少的类别重采样,提升较少所以没放在ppt讲。
4、模型融合,直接相加平均。
5、伪标过程(知识蒸馏过程中),数据是:有监督数据+伪标数据(会重用)。
6、为啥基本都用clip-vit,为啥在微信这个任务效果比swin-transformer好?
7、郭大说前排如果用了知识蒸馏的话,可能就打不过了哈哈哈。



TOP2-冲冲冲~:

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

提问环节总结:
1、对比学习中,有3种对比学习方式,复杂度和常规对比学习差不多。
2、直接用分类模型打伪标效果提升不明显。DML结构和分类模型结构一样。
3、和其他队伍的显著特别之处就是:MMA预训练。



TOP3-抱朴子:

在这里插入图片描述
单双流结构模型融合(平均),5种模型。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
常规预训练任务:MLM, MFM, ITM。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提问环节总结:
1、没用对比学习预训练、只用了图文0/1匹配,实验发现对比学习预训练线上效果不佳。
2、没有对类别不平衡问题做处理。
3、主要集中于编码器的选取,如R2D2。



TOP4-机器不学习啦:

在这里插入图片描述
双流模型结构:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提问环节总结:
1、loss部分有4部分,权重通过做很多对比实验试出来的。
2、层级标签体系之间可能有冲突,L1层面标签可能很清晰,但L2层面不一定。
3、matching任务时,构建pair是随机的,未来可考虑从负样例中合理采样更有价值的负例。
4、至于为什么finetune阶段加了VTA特征对齐任务,说是特征对齐对下游任务可以有一定约束、泛化性有提升。



TOP5-warriors:

maxlen用的也是256。
在这里插入图片描述
VL-BERT的结构:
在这里插入图片描述
在这里插入图片描述
额,又是用clip-vit模型提取视频特征的,基本都用这个(可惜我没用)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
还有个text-video matching预训练任务,没截到图哈哈哈:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提问环节总结:
1、预训练时,MLM预训练基于词粒度做。
2、title、asr、ocr。分别传入3个网络分别提特征,应该没有拼接3个传入网络交互好。测试一下不同模态对分类任务的贡献。
3、采样方面的问题。视频的时序信息是否有用?
4、预训练任务,文本视频2种模态实际是冲突的,那matching任务时是否会影响。
5、创新之处,结合字、词特征。
6、对asr,ocr预处理,去除啊啊啊、哦哦哦等噪音,性能也降了哈哈哈哈。(我也不理解为啥会这样)。
7、没用tensorrt(时间不够时间去试),用了fp16。
8、如果能用large,减少帧数,性能应该会提升。



TOP6-蜜度信息:

在这里插入图片描述
在这里插入图片描述
最后选择256长度截断(实验测试经过qps与精度衡量):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
预训练任务:MLM,VTM(图文匹配)。
在这里插入图片描述
CLIP预训练:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
经过实验发现第一帧可作为强特征:
在这里插入图片描述

3种特征 cross attention融合(3层):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提问环节总结:
1、初赛准备了10几个预训练任务,不同预训练任务如何组合,消融实验成本太大,帧数缩小,用large模型来做可能效果更好,但时间不够去测试。
2、asr,ocr的噪声去除后发现性能下降。用asr的波形来做一个特征或许不错等。
3、模型加速方面 可考虑 蒸馏、剪枝、int8加速。



张正友老师最后总结: 【总体创新性不够,如title, asr, ocr直接拼接有点简单,不同模态的交互方式,还有不平衡问题的处理,打标问题等。】

大佬们都很强!向大佬学习!希望大佬们最后能够开源代码,促进大家的交流学习!😄😄

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网课查题接口 搜题公众号对接题库教程 (附赠题库接口)

网课查题接口 搜题公众号对接题库教程 (附赠题库接口) 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 查…

bm19bm7

为什么不定义如果两点相等呢 等于的话峰值统一取右 以右来比较 波峰就行 不一定是最大的 在这里插入代码片 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * param nums…

微信小程序转为App并上架应用市场

先说说背景吧,笔者开发了一款微信工具类小程序,刚开始,小程序的日访问量和用户数都还可以,但后面慢慢的发现,受限于微信小程序平台规则,很难对用户进行更深入的运营,用户流失问题也将逐渐凸显出…

‘std::thread‘ has not been declared

出现这个问题的原因就是 目前MinGW GCC64还不支持std::thread 这是我的gcc版本 PS D:\MyCode> gcc --version gcc.exe (x86_64-win32-seh-rev0, Built by MinGW-W64 project) 8.1.0 Copyright © 2018 Free Software Foundation, Inc. This is free software; see the s…

七、RequestResponse

Request&Response 第一章 Request 1. 目标 了解Request的概念了解Request的组成部分掌握Request获取请求行的信息掌握Request获取请求头的信息掌握Request获取请求参数掌握解决请求参数乱码掌握Request域对象掌握请求转发 2. 内容 2.1 Request概述 2.1.1 Request的概…

Part16:Pandas的分层索引MultiIndex怎么用?【详解】

Pandas的分层索引Multilndex 1为什么要学习分层索引Multilndex? 1、分层索引:在一个轴向上拥有多个索引层级,可以表达更高维度数据的形式; 2、方便的进行数据筛选,如果有序则性能更好; 3、groupby等操作的结果,如果是多KEY,结…

元宇宙产业委常务副主任委员甘华鸣:关于术语“元宇宙”以及相关问题

【央链知播-编者按:元宇宙产业委常务副主任委员甘华鸣就全国科学技术名词审定委员会元宇宙及核心术语概念研讨会提出的一个观点,发表自己的看法,写了《关于术语“元宇宙”以及相关问题》一文,现转发供元宇宙产业和学术界思考】 以…

老鼠出迷宫

老鼠出迷宫 现有一个图形如下: 要求老鼠在左边第一个位置,走到绿色标的出口橙色为边界不能走。 表盘可以看做是一个[8][7]大小的二维数组,可以用1表示边界,0表示可以走 int [][] arrMap new int[8][7];得到一个数组&#xff1…

Python——基础语法(模块、包、文件读写等操作)

一、模块 概述:一个模块就是一个扩展名为.py的文件,可以包含多个函数、类、语句;使用模块可以提高代码的可维护性、可重用性,避免函数名和变量名冲突,方便其他程序和脚本的导入和使用。 二、模块的自定义 创建一个新…

基于ssm的社区医院儿童预防接种管理系统设计与实现-计算机毕业设计源码+LW文档

开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包&…

且看五年开发码农,如何备战仨月硬刚字节面试官,轻松拿offer

写在前面 前不久跟几个哥们儿在一起吃喝玩闹,因为都是程序员出身,多少还是会谈谈各自公司的状况,其中一位朋友就是面临着跳槽换工作的情况。虽然做了好几年开发,但还是有很大压力,不光因为此次是想进字节跳动&#xf…

变更控制委员会CCB

在实施整体变更控制过程中,每项记录在案的变更请求都必须由一位责任人批准或否决,这个责任人通常是项目发起人或项目经理。应该在项目管理计划或组织流程中指定这位责任人。必要时,应该由变更控制委员会(CCB)来开展实施…

vue中keep-alive的作用

vue中keep-alive的作用1、什么是keep-alive?2、作用3、使用场景4、基本使用4.1、所有组件都缓存4.2、include:只有包裹的组件名被缓存4.3、exclude:只有包裹的组件名不会被缓存4.4、max:组件最多缓存的数量4.5、结合路由router,缓…

CUDA编程基础:线程标识符计算,以及并行运算原理

1,CUDA编程的基本概念 对于一个2-dim的block(D_x, D_y) ,既指的是二维的平面的block模型; gridDim: 这个变量包含网格的维度 blockIdx: 这个变量包含了网格中的线程块索引(0~gridDim-1) blockDim: 这个变量包含了线程块的维度 threadIdx: 这个变量包含了线程块中的线程索引(…

机器人——力控

力控制背后的基本思想很简单:传感器的输出用于在控制器中闭环,调整每个关节扭矩以匹配所需的输出。在某种程度上,这类似于位置控制。您只需用参考力(来自力/扭矩传感器)替换参考位置(来自电机编码器&#x…

java程序设计笔记 -- 继承与多态

继承与多态 子类 is a 关系 整体与部分 has a extends 继承关键词 父类也叫做 超类 基类 object 类 类层次最高点,是所有类的直接或间接父类 方法 public final Class getClass(): 获取当前对象所属的类信息,返回Class对象public Strig toString (…

计划评审技术

计划评审技术就是把工程项目当成一种系统,用网络图或者表格或者矩阵来表示各项具体工作的先后顺序和相互关系,以时间为中心,找出从开工到完工所需要时间的最长路线,并围绕关键路线对对系统进行统筹规划,合理安排以及对…

python--数据容器--列表

目录 1.python中的数据容器: 2.列表的定义 列表的下标索引 列表的查询功能 (方法) 修改列表的值 在指定位置插入元素 追加元素 追加一批元素 删除元素 删除某个元素在列表中的第一个匹配项 清空列表 统计某元素在列表内的数量 统…

ChIP-Seq,MeRIP-seq峰(peak),eccDNA等染色体分布可视化

人类基因组由1-22、X、Y等染色体构成,染色体经过细胞学处理后会呈现出深浅不同的染色带。 染色带的数目、部位、宽窄和着色深浅均相对稳定性,所以每一条染色体都有固定的分带模式,即称带型。 染色体带型是鉴别染色体的重要依据。图1. 人类染色…

【Android进阶】8、单 Activity-多 Fragment 模式 与 Fragment 的管理器

文章目录8.1 UI的灵活需求8.2 Fragment8.3 Fragment实战8.4 创建数据类8.5 创建 UI fragment8.5.1 定义 CrimeFragment 布局8.5.2 创建 CrimeFragment 类8.5.2.1 实现 Fragment 的生命周期函数8.5.2.2 在 Fragment 中实例化部件8.6 让 Activity 托管 Fragment8.6.1 定义 Activi…