Skip to content

【fine-tune-quickstart.ipynb】训练后ACC值随着评估集变化的问题 #5

@simson2010

Description

@simson2010

作业: fine-tune-quickstart.ipynb

由于时间原因,只使用了5万的样本进行训练。
训练后,使用原测试集的100条进行trainer.evaluate()得到如下结果。

{'eval_loss': 1.2431399822235107,
'eval_accuracy': 0.57,
'eval_runtime': 1.7855,
'eval_samples_per_second': 56.007,
'eval_steps_per_second': 7.281}

再使用 1000条进行evaluate()得到另一个结果。

{'eval_loss': 1.016939640045166,
'eval_accuracy': 0.64,
'eval_runtime': 15.7258,
'eval_samples_per_second': 63.59,
'eval_steps_per_second': 7.949}

GPT的解释如下 :

  • 数据集规模:从之前的较小数据集增加到1000个样本,模型在更大规模的数据集上进行评估,可能更全面地反映了模型的性能。
  • 模型改进:在两组评估之间,模型可能经历了改进或调优的过程,使其在新的评估数据集上表现更好。
  • 数据偏差:两组评估使用的数据集可能存在一定的偏差,包括样本分布、数据质量等方面的差异,导致评估结果有所不同。
  • 随机性:评估过程中存在一定的随机性,包括数据样本的随机选择、模型参数的初始化等。因此,两组评估结果之间的差异可能部分归因于随机因素。

代码:

https://github.com/simson2010/LLM-quickstart/blob/feature/homework/homework/fine-tune-quickstart.ipynb

问题

同一个数据集fine-tune完后,用不同数量的样本进行评估,结果有较大偏差,这个可以怎么理解,用100条样本,ACC是0.57,用1000条样本时则升到0.64.但这样来做评估,怎么确定训练数据量用多少为好?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions