论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
人工智能
›
人工智能
›
DataWhale多模态赛事Task1
DataWhale多模态赛事Task1
知者何南
金牌会员
|
4 天前
|
显示全部楼层
|
阅读模式
楼主
主题
817
|
帖子
817
|
积分
2451
赛事链接
:https://tianchi.aliyun.com/competition/entrance/532251/introduction?spm=a2c22.12281925.0.0.2f307137p8qZmp
赛事形貌
:在当下大数据、大模子时代,大数据是驱动大模子的能源。当前大模子的训练数据绝大部门来源于互联网上的信息,但随着大模子尺寸与性能逐渐提拔,互联网上的海量数据也将逐渐使用殆尽,而且对于多模态大模子来说,这些海量资源在获取后,也必要极大的额外处理和人力标注才可以到达可用于训练大模子的水准。因此,如何借助已有的强盛的大模子,在有限的计算资源下为新的模子训练流程高效合成优质的训练数据成为了一个新兴的值得关注的问题。“天池 Better Synth - 多模态大模子数据合成挑战赛”正是在如许的背景下产生,该比赛旨在鼓励参赛者探究合成数据对于多模态大模子训练的影响,以及促使参赛者追求高效的数据合成方法与策略,共同推进多模态大模子数据合成从 0-1 以及从 1-100 的前沿创新探索。
本次比赛关注于多模态大模子在图片理解任务上的本领,焦点任务是在给定的种子数据集的根本上,通过高效的数据合成方法与模子天生出更优的数据,并在给定计算量的约束下,实现对图像理解多模态大模子的高效训练。
环境配置
流下贫穷的眼泪,在阿里云人工智能平台PAI,交互式建模(DSW),留意地点一定要选择在杭州,然后使用镜像地点:dsw-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-training-algorithm/data-juicer-better-synth:0.0.1(不使用镜像,可以自己配,使用包内里的bash install.sh下载环境包,但可能出问题),a10 + 188G的内存,
下载模子和干系数据集
分别下载了Mini-Gemini (MGM-2B) 作为base模子,clip-vit-large-patch14-336和openclip-convnext-large-d-320-laion2B-s29B-b131K-ft-soup作为CLIP(Contrastive Language-Image Pre-training)图像解码器,以及7b的BLIP(Bilingual Language-Image Pre-training)模子:blip2-opt-2___7b
它seed和fine-tune的数据集格式是如许的:
验证阶段基于公开测试基准的 TextVQA 和 MMBench 来举行:
MMbench通过指令,hint和图像让模子做选择题(包罗各种范例的问题):
TextVQA则让模子根据图像回答问题:
数据处理
然后data juicer使用下载的BLIP模子天生对图像的形貌:
训练模子
模子使用deepspeed的zero2算法来预训练和微调
# ------------- Pretrain ---------------
deepspeed $SCRIPT_DIR/training/mgm/train/train_mem.py \
--deepspeed $SCRIPT_DIR/training/scripts/zero2_offload.json \
--model_name_or_path $SCRIPT_DIR/training/model_zoo/LLM/gemma/gemma-2b-it \
--version gemma \
--data_path $PRETRAIN_DATASET_JSON \
--image_folder $PRETRAIN_DATASET_IMAGE_PATH \
--vision_tower $SCRIPT_DIR/training/model_zoo/OpenAI/clip-vit-large-patch14-336 \
--vision_tower_aux $SCRIPT_DIR/training/model_zoo/OpenAI/openclip-convnext-large-d-320-laion2B-s29B-b131K-ft-soup \
--mm_projector_type mlp2x_gelu \
--tune_mm_mlp_adapter True \
--mm_vision_select_layer -2 \
--mm_use_im_start_end False \
--mm_use_im_patch_token False \
--image_size_aux $AUX_SIZE \
--bf16 True \
--output_dir $SCRIPT_DIR/../output/training_dirs/$PRETRAIN_NAME \
--num_train_epochs $NUM_TRAIN_EPOCHS \
--per_device_train_batch_size $PRETRAIN_BATCH_SIZE_PER_GPU \
--per_device_eval_batch_size 4 \
--gradient_accumulation_steps $PRETRAIN_GRADIENT_ACCUMULATION_STEPS \
--evaluation_strategy "no" \
--save_strategy "steps" \
--save_steps $CKPT_SAVE_STEPS \
--save_total_limit $TOTAL_SAVE_CKPT_LIMIT \
--learning_rate 1e-3 \
--weight_decay 0. \
--warmup_ratio 0.03 \
--lr_scheduler_type "cosine" \
--logging_steps $LOGGING_STEP \
--tf32 True \
--model_max_length 2048 \
--gradient_checkpointing True \
--dataloader_num_workers $PRETRAIN_DATALOADER_NUM_WORKERS \
--lazy_preprocess True \
--report_to none \
2>&1 | tee $SCRIPT_DIR/../output/training_dirs/$PRETRAIN_NAME/pretrain.log
mkdir -p $SCRIPT_DIR/../output/training_dirs/$FINETUNE_NAME
# ------------- Finetune ---------------
deepspeed $SCRIPT_DIR/training/mgm/train/train_mem.py \
--deepspeed $SCRIPT_DIR/training/scripts/zero2_offload.json \
--model_name_or_path $SCRIPT_DIR/training/model_zoo/LLM/gemma/gemma-2b-it \
--version gemma \
--data_path $SCRIPT_DIR/training/data/finetuning_stage_1_12k/mgm_instruction_stage_1_12k.json \
--image_folder $SCRIPT_DIR/training/data/finetuning_stage_1_12k \
--vision_tower $SCRIPT_DIR/training/model_zoo/OpenAI/clip-vit-large-patch14-336 \
--vision_tower_aux $SCRIPT_DIR/training/model_zoo/OpenAI/openclip-convnext-large-d-320-laion2B-s29B-b131K-ft-soup \
--pretrain_mm_mlp_adapter $SCRIPT_DIR/../output/training_dirs/$PRETRAIN_NAME/mm_projector.bin \
--mm_projector_type mlp2x_gelu \
--mm_vision_select_layer -2 \
--mm_use_im_start_end False \
--mm_use_im_patch_token False \
--image_aspect_ratio pad \
--group_by_modality_length True \
--image_size_aux $AUX_SIZE \
--bf16 True \
--output_dir $SCRIPT_DIR/../output/training_dirs/$FINETUNE_NAME \
--num_train_epochs $NUM_TRAIN_EPOCHS \
--per_device_train_batch_size $FINETUNE_BATCH_SIZE_PER_GPU \
--per_device_eval_batch_size 4 \
--gradient_accumulation_steps $FINETUNE_GRADIENT_ACCUMULATION_STEPS \
--evaluation_strategy "no" \
--save_strategy "steps" \
--save_steps $CKPT_SAVE_STEPS \
--save_total_limit $TOTAL_SAVE_CKPT_LIMIT \
--learning_rate 2e-5 \
--weight_decay 0. \
--warmup_ratio 0.03 \
--lr_scheduler_type "cosine" \
--logging_steps $LOGGING_STEP \
--tf32 True \
--model_max_length 2048 \
--gradient_checkpointing True \
--dataloader_num_workers $FINETUNE_DATALOADER_NUM_WORKERS \
--lazy_preprocess True \
--report_to none \
2>&1 | tee $SCRIPT_DIR/../output/training_dirs/$FINETUNE_NAME/finetuning.log
复制代码
开始预训练:
末了基本1.5左右
推理的脚本倒是没啥可说的,temperature设置的是0
效果
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
知者何南
金牌会员
这个人很懒什么都没写!
楼主热帖
开源二三事|ShardingSphere 与 Databa ...
SQLServer数据库基础教程
Sqlserver创建用户并授权
华为再次登上央视!鸿蒙系统3.0今年上 ...
这个简单的小功能,半年为我们产研团队 ...
「笔记」某移动SRE运维体系交流 ...
Oracle调度器Scheduler
编程体验1
ESP32-C3 学习测试 蓝牙 篇(六、添加 ...
C++面试八股文:C++中,函数的参数应该 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表