创建合成训练数据

2024年08月05日 由 alex 发表 162 0

1


介绍

在使用 LLM创建合成训练数据方面,有许多有据可查的限制......


创建合成数据的挑战


扩展多样性: 虽然增加合成数据的数量很容易,但确保其多样性的扩展却很困难。

单一实例限制: 给定数据合成提示后,LLM 只能生成一个实例,在不考虑采样技术的情况下限制了多样性。


实例驱动方法:

  • 依靠种子语料库创建新实例。
  • 多样性仅限于种子语料库中的变化。
  • 难以扩展到初始种子语料之外。
  • 在实际应用中,种子语料的规模有限,妨碍了可扩展性。


使用真实世界中的非合成训练数据的挑战之一是找到适合用例的数据。


数据设计与开发


最近的两项研究侧重于如何创建一个简单的框架,使用 LLM 生成合成训练......这些框架的重点是:

  1. 避免数据重复、
  2. 在数据集中引入多样性
  3. 确保数据中存在某些特征和特性
  4. 遵循数据设计流程,建立底层、确定的数据拓扑结构,以实现所需的数据开发目标。


创建 TinyStories

微软公司在训练 Phi-3 小语言模型时采用了一种名为 TinyStories 的方法。


Phi-3 的创建者并没有完全依赖原始网络数据,而是将重点放在了高质量数据上。


微软的研究人员开发了一个独特的数据集,包含 3000 个单词,平均分为名词、动词和形容词。


然后,他们使用大型语言模型生成儿童故事,每个故事使用一个名词、一个动词和一个形容词。


这个过程在几天内重复了数百万次,生成了数百万个短小的儿童故事。


2


使用 1,000,000,000 个角色创建合成数据

在另一项研究中,研究人员提出了一种新的角色驱动数据合成方法,该方法利用大型语言模型(LLM)中的不同视角来创建各种合成数据。


为了大规模地支持这种方法,他们引入了角色中心(Persona Hub),这是一个从网络数据中自动收集的 10 亿个不同角色的集合。


这些角色约占世界总人口的 13%,拥有广泛的世界知识,可以访问 LLM 中的几乎所有视角。


这样就能为各种场景创建多样化的合成数据。通过展示 Persona Hub 在生成高质量数学和逻辑推理问题、用户提示、知识丰富的文本、游戏 NPC 和工具方面的应用,他们证明了角色驱动的数据合成具有通用性、可扩展性、灵活性和用户友好性。


这种方法可以极大地影响法律硕士的研究和发展。


如下图所示,"角色 "可以处理不同的数据合成提示(例如,创建数学问题或用户提示),从而引导 LLM 从不同角度生成数据。


角色枢纽(Persona Hub)中的 10 亿个角色可以为各种场景创建大规模的合成数据。


3


如下图所示,"从文本到角色 "的方法可以利用任何文本作为输入,只需提示 LLM "谁可能[读|写|喜欢|不喜欢|......]这个文本?


4


还可以考虑 "角色到角色 "的方法,通过人际关系获得不同的角色,这可以很容易地通过提示 LLM "谁与给定的角色关系密切?


总结

还有一种现象是模型崩溃,当新模型在以前模型生成的合成数据上进行训练时,会出现性能下降的情况。


有一项研究结果表明,仅使用合成数据进行训练必然会导致模型崩溃。然而,混合使用真实数据和合成数据可以防止模型崩溃,前提是合成数据必须低于某个阈值。是否可以通过定义一种高度结构化的方法来创建生成数据的框架,从而避免模型崩溃?

文章来源:https://medium.com/@cobusgreyling/creating-synthetic-training-data-84a742889e14
欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
写评论取消
回复取消