模型对比:Gemma 4 E4B-it VS Qwen3.5-2B

LoRA微调对比

gemma4_lora_train
qwen3_lora_train

图示参数说明
  • Trainable LoRA parameters: 可训练的LoRA参数量。在LoRA微调中,原始预训练模型的权重被冻结,仅训练注入的低秩矩阵(如lora_A 和 lora_B)。

  • Total paramaters: 模型的总参数量

  • Trainable ratio: 可训练参数占总数的比例。

  • Example trainable parameters: 参与训练的LoRA参数名称。

    • Gemma4参与训练参数:视觉编码器(vision_tower)

      • 图像嵌入层(patch_embedder)

      • 自注意力机制的Q/K/V/O投影层(q_proj, k_proj, v_proj, o_proj)

      • MLP层(gate_proj, up_proj, down_proj)

    • Qwen3.5参与训练参数

      • 线性注意力层linear_attn

        • out_proj: 输出投影层

        • in_proj_qkv: Query 、Key、Value的联合输入投影层

        • in_proj_z, in_proj_b, in_proj_a: 线性注意力机制中特有的额外输入投影层

      • 多层感知机层mlp: gate_proj, up_proj, down_proj

训练进度概览

[250/250 17:00, Epoch 1/1]: 模型总共计划训练1个Epoch, 每个Epoch包含250个训练步。Gemma4耗时17分钟,完成250步的训练。Qwen3.5耗时20分钟

训练与验证指标表格
  • Training Loss(训练损失): 模型在训练上的损失值。

  • Validation Loss(验证损失): 模型在验证集上的损失值。

  • Entropy(信息熵): 衡量模型预测概率分布的混乱程度。越小表示模型预测越来越确定和自信。

  • Mean Token Accuracy(平均Token准确率): 模型正确预测的Token百分比。越大说明模型的生成或预测准确性大幅提高。

  • Num Tokens: 截止当前步数,模型累积处理的Token总数。

最终训练输出(TrainOutput)
  • global_step: 全局训练总步数

  • training_loss: 整个训练过程的平均训练损失

  • train_runtime: 训练总耗时,单位秒

  • train_sample_per_second: 训练吞吐量,每秒处理多少个样本

  • train_steps_per_second: 每秒完成的训练步数

  • total_flos: 训练过程中的浮点运算总次数(FLOPs),用于衡量计算量。

  • epoch: 最终完成的Epoch数量,1.0 表示刚好完成一个完整周期的训练。

微调后评估

gemma4_lora_train_eval
qwen3_lora_train_eval

分类评估报告transpose
  • precision(精准率): 预测为某类别的样本中,真正属于该类别的比例。越高说明“误报”越少。

  • recall(召回率):真正属于某类别的样本中,被模型正确预测出来的比例。越高说明模型“漏报”越少。

  • f1-score:精准率和召回率的调和平均数,综合衡量指标。

  • support(样本量):测试集中该类别的实际样本数量。

  • accuracy(准确率):所有预测正确的样本占总样本的比例。

  • macro avg(宏平均):所有类别指标的简单平均值,不考虑样本数量不平衡,对少样本类别敏感。

  • weight avg(加权平均):根据每个类别的样本数量(support) 进行加权后的平均值,更能反映整体性能。

混淆矩阵confusion_matrix_df
  • N X N 的矩阵, 行代表真实标签, 列代表预测标签

  • 对角线数值:表示预测正确的数量。(例如Qwen将107个sadness正确预测为sadness)

  • 非对角线数值:表示预测错误的数量。(例如Qwen将3个sadness错误预测为joy)

  • INVALID: 表示模型输出了无效或无法解析的内容。

微调前后对比

gemma4_lora_before_after

qwen3_lora_before_after

  • stage:

    • pre_finetuning: 微调前,即使用原始训练权重进行测试的结果

    • post_finetuning: 微调后,即经过特定数据集训练后的结果。

  • accuracy准确率:模型预测正确的样本占总样本的比例。这是衡量模型整体表现最直观的指标。

  • macro f1宏平均F1分数: 所有类别F1分数的算数平均值。它平等地对待每个类别,因此对样本量较少的类别的表现非常敏感。

  • invalid_predictions(无效预测数): 模型未能输出符合格式要求的答案的次数。者放映了模型的指令遵循能力或输出稳定性。

  • evaluated_examples(评估样本数):参与测试的总样本数量,均为400个。

问题

transformers需要更新进行兼容

transformers 5.x 已知问题:5.x 支持 qwen3_5 模型类型,但 Qwen3.5 的模型代码还依赖已移除的 is_tf_available 。

# 安装依赖的步骤后,更新transformers
!uv pip install --upgrade --no-cache transformers

qwen3_seven_step_error

参考

Hello RCom学习进阶挑战

Logo

免费领 150 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐