当前位置: 首页 > news >正文

陕西省交通建设网站不用下载的行情网站

陕西省交通建设网站,不用下载的行情网站,深圳室内设计师网,企业网站开发项目策划书目录 引言 一、数据集准备 二、训练/推理代码 2.1 训练 2.2 推理 三、性能验证 引言 swift 3.x支持了序列分类Command Line Parameters — swift 3.2.0.dev0 documentation 想尝试一下用多模态(图像)的序列分类与普通的图像分类任务有啥区别 一、…

目录

引言

一、数据集准备

二、训练/推理代码

2.1 训练

2.2 推理

三、性能验证

引言

swift 3.x支持了序列分类Command Line Parameters — swift 3.2.0.dev0 documentation

想尝试一下用多模态(图像)的序列分类与普通的图像分类任务有啥区别

一、数据集准备

根据官方给出的自定义序列分类数据集格式Custom Dataset — swift 3.2.0.dev0 documentation 和多模态数据集的格式Custom Dataset — swift 3.2.0.dev0 documentation

可以结合二者得到一个官方支持的多模态数据序列分类格式,简单来说就是把多模态SFT数据集中的assistant的字段改成label字段

{"messages": [{"role": "user", "content": "<image><image>What is the difference between the two images?"}], "images": ["/xxx/x.jpg", "/xxx/x.png"], "label": 0}

当然在这里也可以自行注册一个新数据集格式,不过太麻烦,而且可迁移性就降低了。

具体地,比如一个分类任务,可以构造这样的一个分类数据集cat_cls.jsonl文件

{"messages": [{"role": "user", "content": "<image>这是什么品种的猫?"}], "images": ["/xxx/1.jpg"], "label": 0}
{"messages": [{"role": "user", "content": "<image>这是什么品种的猫?"}], "images": ["/xxx/2.jpg"], "label": 1}

注意label是从0开始计数

二、训练/推理代码

2.1 训练

根据官方给的example:https://github.com/modelscope/ms-swift/tree/main/examples/train/seq_cls

以qwen2-vl-base模型为例,训练的代码为:

# If `num_labels` is provided, it will be considered a classification task.
# You can also specify `--model Qwen/Qwen2-VL-2B-Instruct --use_chat_template true`.
CUDA_VISIBLE_DEVICES=0 \
MAX_PIXELS=1003520 \
swift sft \--model Qwen/Qwen2-VL-2B \--train_type lora \--dataset 'tany0699/garbage265#20000' \--torch_dtype bfloat16 \--num_train_epochs 1 \--per_device_train_batch_size 1 \--per_device_eval_batch_size 1 \--learning_rate 1e-4 \--lora_rank 8 \--lora_alpha 32 \--target_modules all-linear \--gradient_accumulation_steps 16 \--eval_steps 50 \--save_steps 50 \--save_total_limit 5 \--logging_steps 5 \--max_length 2048 \--output_dir output \--warmup_ratio 0.05 \--dataloader_num_workers 4 \--num_labels 265 \--task_type seq_cls \--use_chat_template false

其中主要修改--model,--dataset,--num_labels这三个参数。

注意开源instruct模型以及swift 3.x训练得到的模型可以直接用--model 单参数传模型文件路径。

但是swift 2.x训练保存的模型还需要额外加--model_type参数 比如--model_type qwen2_vl

原理是3.x保存的模型里已有这个参数 之前的版本保存的模型没有 会有一个不兼容的问题。

此外base模型不需要chat_template,但是instruct模型是需要的,不过实测在序列分类任务上这个参数对最后训练的模型性能影响不大。

具体地,--model 设置为本地保存的模型路径,--dataset为上面构造的数据集jsonl文件路径,--num_labels为类别数量,注意从0开始计数,有几类填几(int)

2.2 推理

训练保存的模型形式和推理的代码基本和普通SFT没区别:https://github.com/modelscope/ms-swift/blob/main/examples/train/seq_cls/qwen2_vl/infer.sh

## full 全参数训练
CUDA_VISIBLE_DEVICES=0 \
MAX_PIXELS=1003520 \
swift infer \--model output/vx-xxx/checkpoint-xxx \--load_data_args true## lora训练
CUDA_VISIBLE_DEVICES=0 \
MAX_PIXELS=1003520 \
swift infer \--adapter output/vx-xxx/checkpoint-xxx \--load_data_args true

这里有一个坑,官方给出的example由于是lora训练,因此infer的脚本也只适配lora模型,具体来说就是用--adapter 指定保存下来的模型文件夹路径。但是对于全参数训练(full sft),需要用--model代替--adapter,不然实测输出全是某一个label。

此外注意确认训练的时候指定了val_dataset,否则--load_data_args要去掉 用--val_dataset代替。

三、性能验证

最终在某个自定义的图片分类数据集上试了一下,整体acc下降,但是推理速度能有提升。考虑到准确率,还是继续用causal_lm来进行图像分类训练了。

训练方式精度-Acc推理速度

causal_lm

82.5%3.79it/s
seq_cls72.76%4.97it/s

http://www.yayakq.cn/news/377307/

相关文章:

  • 江西哪里有做电商网站的公司深圳华强北商城网站建设
  • 陕西省西安市制作网站青州网站搭建
  • 大连网站建设解决方案wordpress 调用小工具
  • 四合一网站长沙微交易网站建设
  • 如何做一个网站衡阳北京网站建设
  • 邯郸哪有做网站的公司ie兼容所有网站
  • 天津的网站建设公司哪家好建网站哪家好北京
  • php语言网站开发网站下拉单设计欣赏
  • 做网站百度收录泛微oa办公系统网页版
  • 邢台哪儿做网站便宜个人小程序制作流程
  • 网站建设点击打开指定网页房地产网站做百度推广
  • 我们网站百度快照显示违规内容广州网站建设 易点
  • 创建公司需要什么杭州seo关键词优化哪家好
  • 营销单页网站制作微信分销网站建设费用
  • 政务网站建设云计算中心无人视频在线观看免费播放影院
  • 牡丹区建设局网站世界新闻最新消息
  • 集团网站建设新闻网站开发 高职课本
  • 电脑上怎样进入中国建设银行网站怎么用手机创造网站
  • 网站建设捌金手指花总二七安徽道遂建设工程有限公司网站
  • 影视主题wordpress湖州网站seo优化
  • 门户网站建设分工的通知ai做漫画头像网站
  • 没有做网站经验可以学seo吗网站vps无法登陆
  • 广州哪里可以做网站网站建设及维护 东营
  • 深圳公明网站建设公司营销型网站建设制作推广
  • 站长号查询入口站长工具如何在手机上学编程
  • 衡水网站制美团如何进行网站的建设和维护
  • 怎样网站设计成都市公园城市建设管理局网站
  • 更改网站伪静态稳赚导师免费赚钱微信号
  • 多终端网站网页广告素材
  • 蓬莱网站建设哪家好wordpress 上传到域名