Task4.手搓一个LLM Eval
大模型评测系统通常是指用于评估大型语言模型性能的工具或平台。这些系统旨在衡量模型在不同任务上的表现,包括但不限于自然语言处理(NLP)任务,如文本生成、问答、翻译等。
常见的大模型评测系统介绍:
-
GLUE (General Language Understanding Evaluation)
- 简介:GLUE 是一个用于评估自然语言理解系统能力的基准测试集合。它包含多个任务,如单句分类、语义相似度判断、问答等。
- 目标:评估模型在多种NLP任务上的表现,特别是理解自然语言的能力。
-
SuperGLUE
- 简介:SuperGLUE 可以视为 GLUE 的增强版,它引入了更加复杂的任务,要求模型展示出更强的理解能力和推理能力。
- 目标:提供比 GLUE 更加严格的测试标准,以评估最新模型的能力。
-
MMLU (Multi-Merge Large Union)
- 简介:MMLU 是一个涵盖广泛学科领域的多选题数据集,用于测试模型的常识和专业知识水平。
- 目标:评估模型在不同学科领域的知识掌握程度。
-
SQuAD (Stanford Question Answering Dataset)
- 简介:SQuAD 是一个用于评估机器阅读理解和回答问题能力的数据集。
- 目标:测试模型能否从给定的文档中准确抽取答案。
-
OpenCompass (司南)
- 简介:由上海人工智能实验室发布的 OpenCompass 是一个开源的大模型评测体系,旨在成为权威的大型模型评估平台。
- 目标:提供一个开放的框架,允许用户测试模型的各种能力,并比较不同模型之间的性能。
评测一个大模型,通常包括以下流程:
-
定义评测目标和标准
- 确定任务:首先明确评测的目的,是要评估模型的某个具体功能(如文本生成、问答、翻译等),还是整体性能。
- 选择指标:根据任务需求选择合适的评测指标,如准确率、召回率、F1分数、困惑度等。
-
准备数据集
- 数据收集:根据评测任务收集或创建合适的数据集。这可能包括标注好的数据或公开可用的数据集。
- 数据清洗:确保数据质量,去除噪声或无关的信息。
- 划分数据集:将数据集分为训练集、验证集和测试集,其中训练集用于训练模型,验证集用于调整超参数,测试集用于最终评估模型性能。
-
模型训练与调整
- 模型选择:根据任务需求选择合适的模型架构。
- 训练过程:使用训练集对模型进行训练,并在验证集上进行调整。
- 超参数优化:通过网格搜索、随机搜索等方法寻找最优的超参数配置。
-
实施评测
- 模型部署:将训练好的模型部署到测试环境中。
- 评测执行:使用测试集对模型进行评测,记录评测结果。
- 结果分析:根据评测指标分析模型性能,识别优点和不足之处。
关于评价指标,精确率(查准),召回率(查全),F1分数
- 精确率(Precision)/ 召回率(Recall)/ F1分数(F1 Score)
- 应用:二分类或多分类任务。
- 定义:
- F1分数:精确率和召回率的调和平均值,用于综合评估模型性能。
- 召回率:正确预测为正类的样本占所有实际为正类样本的比例。
- 精确率:正确预测为正类的样本占所有预测为正类样本的比例。
peft
是一个 Python 库,全称为 P ractical E ffective F ine-T uning,用于实现和管理微调(fine-tuning)预训练语言模型的方法。
Hugging Face使用会遇到一些connection问题。经验证发现是model_path不对。
Hugging Face 是一个非常流行的开源社区,专注于自然语言处理(NLP)任务,尤其是基于 Transformer 架构的深度学习模型。它提供了一系列工具和服务,包括模型库、数据集库以及社区支持等。