写在前面的碎碎念》
为时一个礼拜的学习,即将结束了。回顾这一个礼拜,因此这次的任务较难,大部分的时间都花在跑模型上了,跑一次一天就没了,所以基本没有很好的去尝试优化上分,一个礼拜,差不多就是把流程跑通,能够完整运行,能够解决运行的各种报错,能够获得有效的提交分数。这就足以,算力是一个坎啊,这种大数据量的任务,400K的训练数据(没有跑,跑不起),从10K数据,尝试提高到150K,150K的数据,八卡RTX4090训练加微调需要十多个小时,总花费300大洋了。大模型果然是有钱人玩的。啊啊啊啊。。。
Task3的任务是数据处理进阶和上分。
主要包括以下内容:
1.官方赛事解读:
这个前面的Task已经说的够多了,此处略过。
2.自定义算子介绍:
Data-Juicer 是一个多模态数据处理系统,旨在提升数据质量,使其更适合用于大语言模型(LLMs)。系统提供了一系列用于数据处理的强大工具,包括 80 多个核心操作符、20 多个可重用配置和丰富的工具包。Data-Juicer 支持多种数据格式和多模态数据处理(如文本、图像、音频、视频),并且可以灵活扩展以满足特定需求。
Data-Juicer的核心就是算子,通过算子的组合,我们可以实现数据的清洗。
Data-Juicer中的算子分为以下 5 种类型。
- Formatter:发现、加载、规范化原始数据
- Mapper:对数据样本进行编辑和转换
- Filter:过滤低质量样本
- Deduplicator:识别、删除重复样本
- Selector:基于排序选择高质量样本
我们还可以自定义算子,来满足我们的数据处理需求。自定义算子需要我们自己编写脚本文件。
可以参考Data-Juicer官方教程中给出的demo。
3.data-juicer sandbox insights讲解
DataJuicer中的Sandbox(数据沙盒实验室)是一个特别设计的功能模块,它允许用户在一个低风险、易于管理的环境中测试和迭代不同的数据处理策略,也就是所谓的“数据菜谱”。
Sandbox(数据沙盒实验室)中的算子效能实验可以帮助我们发现哪些算子可能对结果起作用。
1:相比于数据质量,图片理解模型的模态对齐阶段对多样性更加看重;
2:数据中的动态信息对于图片理解模型的模态对齐阶段来说更难以学习;
3.模态间高度对齐的数据在模态对齐阶段对于图片理解模型的性能是非常有利的;
4. 最优的数据菜谱不一定来源于性能最优的独立算子;
5.相对正交的优秀算子的组合无法保证带来更多性能收益;但从一个性能优秀的算子开始构建数据菜谱是一个不错的选择;
6.与纯文本LLM不同,重复高质量数据对图片理解模型来说可能是有用的;
4.上分思路
根据对赛题任务的分析解读,我们知道,要想获得一个好的分数的关键是获得好的数据。
核心问题是如何让多模态大模型在模态对齐阶段学习到更多的能力?模态对齐究竟是什么?
那么如何提高模态间对齐?
1.内容一致性——直接生成更一致的内容;更强的生成模型
2.相关算子:
image_text_similarity_filter:图文CLIP相似度
image_text_matching_filter:图文BLIP匹配分
phrase_grounding_recall_filter:图文内容主体召回率
3.质量和多样性
本次的Task3任务打卡,到这里就接近尾声了。
喜欢的小伙伴收藏关注点赞吧。