合成数据的pipline

参考:https://github.com/yizhongw/self-instruct

总体来说就是 大模型自己遵循一套流程来生成数据,然后来微调自己。
在这里插入图片描述

指令数据的指令评估:

指令数据选择标准:质量、覆盖范围和必要性。
1.质量:指令数据的质量是指指令及其对应响应的数据质量,直接影响LLM的知识学习。
2.覆盖范围: 指令数据的覆盖范围代表数据集包含的指令类型。它体现了数据集的多样性。影响LLM在微调期间遵循指令的能力。
3.必要性: 指令的必要性表示指令对于微调特定LLM的重要性和独特性。指令微调主要集中在如何使用有限数量的指令数据来激发LLM的能力,使其在与人类交互时能够遵循特定模式。如果LLM无法对该指令产生良好的响应,则说明LLM缺乏处理这类指令数据的能力,这类指令数据对于优化LLM的能力是非常重要和独特的。
MoDS是一种数据筛选方法,总结就是:
1.指令筛选:数据指令评分,筛选出候选池。
2.多样性筛选:K-Center greedy算法筛选出最具代表性的数据集。在最大化多样性的情况下,使指令数据集最小。
3.必要性筛选:识别出对于特定LLMs微调至关重要的指令数据。
在这里插入图片描述

1.指令生成

每一个迭代都选8个任务的指令作为该任务的提示样本,其中6个是人写的,2个是生成的。
然后组成输入送入模型进行输出引导,直到达到token限制或者够16个任务。
在这里插入图片描述

2.指令分类

作者对于分类任务和非分类任务的后续处理是不同的,所以用少样本学习提示的方式让LLM判断是否任务为分类。

3.实例生成

根据指令及其任务类型,独立地为每个指令生成实例。

针对分类和非分类任务,使用两种不同的Prompt构造方法:
1).输入优先:主要针对生成类任务,要求LM根据指令优先 生成实例中的输入X,然后再产生相应的输出Y。

2).输出优先:主要针对分类任务,给定指令,首先生成可能的类别标签,再根据类别标签生成输入X。避免生成偏向某一标签的输入。

4.筛选与后处理

筛选标准:
1.只有当新指令与任何现有指令的ROUGE-L相似度小于0.7时,才将其添加到任务池中。
2.还排除通常不能被语言模型处理的指令,包含某些特定关键词(例如,图像、图片、图表)。
3.在为每个指令生成新实例时,过滤掉完全相同或具有相同输入但不同输出的实例。

总结指标

1.ROUGE-L

来源
ROUGE是一种广泛使用的自动文本评估指标,用于比较生成文本和参考文本之间的相似度。
ROUGE可以看做是BLEU 的改进版,专注于召回率而非精度。换句话说,它会查看有多少个参考译句中的 n 元词组出现在了输出之中。

生成文本C和参考文本S。L代表LCS,最长公共子序列。
R LCS 表示召回率,表示参考文本中有多少内容被生成文本所覆盖。
P LCS 表示精确率,表示生成文本中有多少内容与参考文本匹配。
F LCS 是 ROUGE-L。

在这里插入图片描述
取值区间:通常在 0 到 1 之间。0: 表示生成的文本与参考文本完全不匹配。1: 表示生成的文本与参考文本完全匹配,所有的词序列都对齐。

2.BLEU

来源
通过计算生成文本中的 n-gram(n 个连续词语序列)与参考文本中的 n-gram 的匹配情况来评估文本质量。常用的 n 值包括 1(unigram)、2(bigram)、3(trigram)和 4(4-gram)。
1-gram 精确率表示译文忠于原文的程度,而其他 n-gram 表示翻译的流畅程度。
在这里插入图片描述
lc是生成文本的长度,lr是参考文本的长度。
wn是指n-gram的权重,默认为1/n。
pn是指n-gram 的精确率,也就是c和r中的n-gram的匹配数量 / c的n-gram数量。
BP指惩罚因子,避免生成文本过短导致精确率过高。当生成文本大于参考文本的长度,设为1;小于等于参考文本的长度时,设为e^(1-lr/lc)。

Self-BLEU 是一个用于评估生成文本集合多样性的指标。它的核心思想是利用 BLEU 指标来衡量一个句子与同一生成集合中其他句子的相似性,从而间接评估整个集合的多样性。
计算方法:
将集合中的每个生成句子分别作为假设句(hypothesis),将集合中的其余句子作为参考句(reference),计算每个句子的 BLEU 分数。
然后对所有句子的 BLEU 分数取平均值,这个平均值就是该集合的 Self-BLEU 分数。

取值区间:通常在 0 到 1 之间。0: 表示生成的文本与参考文本没有任何匹配的 n-gram。1: 表示生成的文本与参考文本完全匹配。

3.Distinct-N

是一种测量句子多样性的指标。它关注一个句子中不同n-gram的数量。不同n-gram的数量越多,文本的多样性越高。

在这里插入图片描述
Count(unique ngram)表示回复中不重复的ngram数量,Count(word)表示回复中ngram词语的总数量。

取值区间: Distinct 指标的取值范围在 0 到 1 之间。0: 表示生成文本中的 n-gram 完全重复,没有任何多样性。1: 表示生成文本中的每个 n-gram 都是独一无二的,具有最大的多样性。

参考:
https://zhuanlan.zhihu.com/p/144182853
https://mindnlpdocs-hwy.readthedocs.io/zh-cn/latest/api/engine/metrics.html#module-mindnlp.engine.metrics.distinct
https://github.com/geek-ai/Texygen/blob/master/docs/evaluation.md#self-bleu-score
https://blog.csdn.net/weixin_43937790/article/details/129767661

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灵海之森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值