原贴链接

我应该几个月前就分享这个消息,但我拖延了。对于使用我连续微调方法的任何人,我在该方法中添加了一个重要更新,具体内容见下图。

更新内容

Continuous Fine-tuning Without Loss Using Lora and Mergekit

文档链接

讨论总结

帖子介绍了对“Continuous Fine-tuning Without Loss Using Lora and Mergekit”方法的更新,引发了关于LoRA合并技术、权重分配、TIES算法效果、模型优化细节等方面的讨论。评论者从数学分析、技术细节、实际应用等多个角度进行了深入探讨,既有对该方法的肯定和感谢,也有质疑和反驳的声音。整体氛围专业且具有一定深度,但讨论热度中等。

主要观点

  1. 👍 LoRA合并的权重分配
    • 支持理由:一次性合并多个LoRA时,每个LoRA获得相同的权重,避免逐个合并导致的权重不均。
    • 反对声音:逐个合并可能导致基础模型和首个合并的LoRA被稀释。
  2. 🔥 TIES算法的优势
    • 正方观点:TIES算法能更有效地决定保留哪些更改,特别是在一次性检查所有LoRA时。
    • 反方观点:其他合并方法的效果也值得探讨。
  3. 💡 模型优化的具体细节
    • 使用新的“空白”LoRA进行训练,并与旧的LoRA一起合并到目标模型中,优于继续在旧LoRA上训练。
  4. 🤔 基础模型与指令微调
    • 基础模型具有较好的泛化能力,指令微调版本在特定任务上表现更好,但泛化能力较差。
    • 通过合并方法,可以提升泛化能力并加入指令调优。
  5. 🚫 方法的质疑与反驳
    • 质疑:认为“Continuous Finetuning”方法名不副实,缺乏实际微调过程。
    • 反驳:适配器本身是经过微调的,质疑者可能不了解Lora的工作原理。

金句与有趣评论

  1. “😂 If you look at it mathematically, when you merge multiple LoRAs in one go, each LoRA gets the same weight.”
    • 亮点:简洁明了地解释了LoRA合并的数学原理。
  2. “🤔 the TIES algorithm can better decide which changes to leave out when it can inspect all LoRAs at once.”
    • 亮点:突出了TIES算法在处理LoRA合并时的优势。
  3. “👀 This merge allows even a pretrained model to be used as a chat model. And a Chat/instruct model to be used as a pretrained model. Its like having a 2 in 1.”
    • 亮点:形象地描述了合并方法的多功能性和实用性。

情感分析

讨论总体情感倾向积极,多数评论者对方法的更新表示感谢和认可。主要分歧点在于LoRA合并的具体技术和对“Continuous Finetuning”方法的定义理解。部分质疑声音引发了技术层面的深入探讨。

趋势与预测

  • 新兴话题:LoRA合并方法的进一步优化和TIES算法的应用扩展。
  • 潜在影响:该方法可能在模型优化和微调领域产生广泛影响,提升模型的泛化能力和多功能性。

详细内容:

标题:关于“Continuous Fine-tuning Without Loss Using Lora and Mergekit”的重要更新

近日,Reddit 上一则关于“Continuous Fine-tuning Without Loss Using Lora and Mergekit”的帖子引发了广泛关注。该帖称作者在数月前得知相关信息后,如今为大家带来重要更新,并附上了相关图片及文档链接https://docs.google.com/document/d/1OjbjU5AOz4Ftn9xHQrX3oFQGhQ6RDUuXQipnQ9gn6tU/edit?usp=sharing 。此帖收获了众多点赞和大量评论,引发了热烈的讨论。

讨论焦点主要集中在该技术的实际效果和应用方式上。有人认为从数学角度看,一次性合并多个 LoRA 时每个 LoRA 权重相同,而逐个合并时权重分配有所不同,且 TIES 算法能在同时检查所有 LoRA 时更好地决定舍去哪些变化。但也有用户表示在实践中使用该方法得到的模型效果不佳。

有人感谢作者分享此技术,并提出关于持续训练 LoRA 与采用新方法的疑问。还有人探讨了为何选择 TIES 算法而非其他方法,以及训练的轮数、LoRA 的大小等具体问题。有人认为基础模型最通用,适用于任何微调任务,而指令或微调版本更适用于指令任务。也有人提到该合并技术能让预训练模型用作聊天模型,反之亦然,就像“二合一”。

此外,有用户指出 Mergekit 示例少,自己在合并操作中发现合并模型输出的拼写错误有所增加,询问此新技术能否避免拼写错误,而有回复称该技术几乎万无一失。

综合来看,对于这一技术,大家观点各异,既有对其原理和优势的深入探讨,也有对实际应用中可能存在问题的担忧。但无论如何,这样的交流都有助于推动技术的不断完善和发展。