论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks

这篇具有很好参考价值的文章主要介绍了论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 文章简介

  • 标题:Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks
  • 作者:Tiedong Liu, Bryan Kian Hsiang Low
  • 日期:2023
  • 期刊:arxiv preprint

2. 文章概括

  文章给出了一种可高精度完成基本数学运算的大模型Goat(Good at Arithmetic Tasks),相比于GPT-4,Goat在多位数字的基本运算(加减乘除)上有大幅的精度提升。

3 文章重点技术

3.1 LLM的选择

  文章的Goat模型是在LLaMA[1]基础上进行微调的。之所以选择LLaMA,是因为研究表明分词是影响大模型数学运算能力的一个重要因素,而LLaMA对于处理数字的分词上要优于其它LLM。下表展示了文章对比的一些LLM的分词结果,可以看到LLaMA对与数字的分词是最合理最能支撑数学运算的。
论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks,论文阅读,论文阅读,llama,语言模型,GPT-4,Goat

3.2 算数任务的可学习性(learnability)

  算数任务可划分为两类:LLM可学习(learnable)的任务和不可学习(unlearnable)的任务。研究表明,不可学习的任务可通过链式思维(Chain-of-Thought, COT)分解为可学习的任务。
  首先,文章对基本的数学运算进行划分。为此,文章进行了数值实验,将LLM可以以较高的精度解决的任务分类为可学习任务,反之LLM表现很差的任务被分类为不可学习任务。下表为文章将数学基本运算进行的分类。其中不可学习的任务包含两种:多位数*多位数,多位数/多位数。
论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks,论文阅读,论文阅读,llama,语言模型,GPT-4,Goat

3.3 大模型的加减乘除

  按照上述分类,所有的加法和减法都是可学习的任务,模型可以成功捕获到其中的数学操作模式,得到较高精度。
  针对乘法,如上表分类,多位数*一位数是可学习的任务,但多位数*多位数是不可学习的任务。为了让LLM计算多位数*多位数,我们将其划分为5个可学习的子任务

  • extraction:从自然语言指令中提取数学运算。如给定指令"Compute 126 * 234",我们提取出其中的"126 * 234 ="这种标准的运算格式(对应上表中可学习任务-Copying).
  • split: 将二者中较小的数划分。如上述标准运算格式,我们首先找到比较小的数"126"(对应上表中可学习任务-Comparison),然后我们将"126"进行分解得到"126=100+20+6"(对应上表中可学习任务-Split).
  • expansion:按照分配律将乘法展开。如上述标准运算分解之后,我们得到"(100+20+6) * 234 = 100 * 234 + 20 * 234 + 6 * 234"(对应上表中可学习任务-Copying).
  • product:计算分配之后的每一项的乘积。如上式可演变为" 100 * 234 + 20 * 234 + 6 * 234 = 1 * 234 (end+00) + 2 *234(end+0) + 6 * 234 =23400 + 4680 + 1404",即通过多位数*一位数和末尾补0的操作完成(对应上表中可学习任务-Multiplication+Copying).
  • adding:计算各子项之和。如上式结果求和为"23400 + 4680 + 1404 = 28080 + 1404 = 29484"即为最后结果(对应上表中可学习任务-Adding+Copying).
      针对除法,多位数除以一位数的任务是可学习任务,现在我们考虑多位数除以多位数的任务。为此,我们通过慢除法来进行循环计算: R j − D × ( q n − ( j + 1 ) × 1 0 j ) = R j + 1 R_j - D\times (q_{n-(j+1)} \times 10^j) = R_{j + 1} RjD×(qn(j+1)×10j)=Rj+1,其中 n n n表示被除数的位数, R j R_j Rj表示上一轮的商, q n − ( j + 1 ) q_{n-(j+1)} qn(j+1)表示模型需要计算的值,要满足 D × q n − ( j + 1 ) × 1 0 j ≤ R j D\times q_{n-(j+1)} \times 10^j \le R_j D×qn(j+1)×10jRj D D D表示除数。上式迭代的终止条件为 R j + 1 < D R_{j + 1} < D Rj+1<D。考虑8914/64,首先第一轮的 R j = 8914 , D = 64 R_j=8914, D=64 Rj=8914,D=64,我们找到最大的可以使得 64 × q n − ( j + 1 ) × 1 0 j ≤ 8914 64 \times q_{n-(j+1)} \times 10^j \le 8914 64×qn(j+1)×10j8914 j j j,得到 j = 2 j=2 j=2,对应的最大的 q = 1 q=1 q=1,即得到 8914 − 64 × ( 1 × 1 0 2 ) = 2514 8914 - 64 \times (1 \times 10^2) = 2514 891464×(1×102)=2514;接下来 R j = 2514 ≥ D R_j = 2514\ge D Rj=2514D,则唏嘘找到最大的可以使得 64 × q n − ( j + 1 ) × 1 0 j ≤ 2514 64 \times q_{n-(j+1)} \times 10^j \le 2514 64×qn(j+1)×10j2514 j j j,得到 j = 1 j=1 j=1,对应最大的 q = 3 q=3 q=3,即得到 2514 − 64 × ( 3 × 1 0 1 ) = 594 2514 - 64 \times (3 \times 10^1) = 594 251464×(3×101)=594;接下来 R j = 594 ≥ D R_j = 594\ge D Rj=594D,则继续找到最大的可以使得 64 × q n − ( j + 1 ) × 1 0 j ≤ 594 64 \times q_{n-(j+1)} \times 10^j \le 594 64×qn(j+1)×10j594 j j j,得到 j = 0 j=0 j=0,对应最大的 q = 9 q=9 q=9,即得到 594 − 64 × ( 9 × 1 0 0 ) = 18 594 - 64 \times (9 \times 10^0) = 18 59464×(9×100)=18;最后 R j < D = 64 R_j< D=64 Rj<D=64,终止判断。最后得到的商由上面所有的 q n − ( j + 1 ) × 1 0 j q_{n-(j+1)} \times 10^j qn(j+1)×10j组成,即 1 ∗ 1 0 2 + 3 ∗ 1 0 1 + 9 ∗ 1 0 0 = 139 1*10^2 + 3 * 10^1 + 9 * 10^0=139 1102+3101+9100=139(相当于split的反向操作),余数为剩下的 R j = 18 R_j = 18 Rj=18。注意到上述整个过程只采用了基本的可学习任务,包括Copyting, Subtraction, Comparison, Multiplication(nD*1D), 反向split。

4. 数值实验结果

  文章随机生成了一百万个问答对,其中问题的自然语言部分是由多个不同的prompt形式组成,问题中包含的数字是不超过16位的随机数字,然后按照上述标准的COT产生回答作为标注数据。模型在LLaMA基础上通过上述数据进行微调,得到Goat模型。
  下表为文章的数值实验结果,可以看到Goat-7B在所有数学任务上表现基本上都在90%甚至95%以上,在unlearnable任务上精度远超过GPT-4。
论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks,论文阅读,论文阅读,llama,语言模型,GPT-4,Goat
  值得一提的是,文章通过增加"Solve it step by step"在GPT-4的prompt中,引导GPT-4产生中间结果。文章发现在一些测试样例中,GPT-4产生了一些错误的中间过程,但最终答案确是正确的。这说明GPT-4可能并没有很好的利用到中间过程。
  此外,文章测试了将上述COT作为In-Context Learning的样本加入GPT-4的prompt,显著提高了GPT-4的运算能力,说明文章提出的COT是非常有效的。下图为GPT-4的一个3-shot样例。
论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks,论文阅读,论文阅读,llama,语言模型,GPT-4,Goat

5. 文章亮点

  文章提出了一种Chain-of-Thought(COT)方法,可以有效地解决LLM无法正确进行数学基本运算的问题。文章基于该COT训练了大语言模型Goat,在基本数学运算能力上达到了SOTA水平。

6. 原文传送门

Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks

7. References

[1] 论文笔记–LLaMA: Open and Efficient Foundation Language Models文章来源地址https://www.toymoban.com/news/detail-523190.html

到了这里,关于论文笔记--Goat: Fine-tuned LLaMA Outperforms GPT-4 on Arithmetic Tasks的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Llama 2: Open Foundation and Fine-Tuned Chat Models

    Paper name Llama 2: Open Foundation and Fine-Tuned Chat Models Paper Reading Note Paper URL: https://ai.meta.com/research/publications/llama-2-open-foundation-and-fine-tuned-chat-models/ Blog URL:https://huggingface.co/blog/llama2 Meta 出品的 Llama 续作 Llama2,一系列模型(7b、13b、70b)均开源可商用。Llama2 在各个榜单上精度全面

    2024年02月16日
    浏览(41)
  • Llama 2- Open Foundation and Fine-Tuned Chat Models<2>

    3.2 人类反馈强化学习(RLHF) RLHF 是一种模型训练过程,应用于微调的语言模型,以进一步使模型行为与人类偏好和指令遵循保持一致。我们收集代表根据经验采样的人类偏好的数据,人类注释者可以选择他们更喜欢的两个模型输出中的哪一个。这种人类反馈随后用于训练奖

    2024年01月19日
    浏览(40)
  • Llama 2- Open Foundation and Fine-Tuned Chat Models<3>

    3.4 RLHF 结果 3.4.1 基于模型的评估 评估LLMs是一个具有挑战性的开放研究问题。人类评估虽然是黄金标准,但可能会因各种 HCI 考虑因素而变得复杂(Clark 等人,2021;Gehrmann 等人,2023),并且并不总是可扩展的。因此,为了从 RLHF-V1 到 V5 的每次迭代中从多个消融中选择性能最

    2024年01月17日
    浏览(44)
  • 【LLM】大语言模型学习之LLAMA 2:Open Foundation and Fine-Tuned Chat Model

    自从开源以来,LLAMA可以说是 AI 社区内最强大的开源大模型。但因为开源协议问题,一直不可免费商用。近日,Meta发布了期待已久的免费可商用版本LLAMA 2。 在这项工作中,我们开发并发布了LLAMA 2,这是一系列预训练和微调的大型语言模型(LLMs),规模从70亿到700亿个参数不

    2024年02月15日
    浏览(55)
  • LLMs 缩放指令模型Scaling instruct models FLAN(Fine-tuned LAnguage Net,微调语言网络)

    本论文介绍了FLAN(Fine-tuned LAnguage Net,微调语言网络),一种指导微调方法,并展示了其应用结果。该研究证明,通过在1836个任务上微调540B PaLM模型,同时整合Chain-of-Thought Reasoning(思维链推理)数据,FLAN在泛化、人类可用性和零射推理方面相对于基础模型取得了改进。论文

    2024年02月11日
    浏览(34)
  • 论文笔记:RAG VS FINE-TUNING: PIPELINES, TRADEOFFS, AND A CASESTUDY ON AGRICULTURE

    微软24年1月的paper AI在如农业等特定领域的应用仍然有限,这是由于缺乏专门的训练数据 虽然AI已被用来从农业的卫星图像和传感器数据中派生见解,但技术在农民中的采用仍然缓慢 尽管GPT-4和Bing是寻找信息的强大工具,但它们可能不会为有关其作物和家畜的非常具体问题的

    2024年04月09日
    浏览(32)
  • 使用LoRA对大语言模型LLaMA做Fine-tune

    目前有大量对LLM(大语言模型)做 Fine-tune 的方式,不过需要消耗的资源非常高,例如 Stanford Alpaca: 对LLaMA-7B做Fine-tune,需要4颗A100 (80GB) GPU FastChat/Vicuna: 对LLaMA-7B做Fine-tune,需要4颗A100 (40GB) GPU 这种资源需求令普通的学习者望而却步,使用 LoRA 则可以较好的解决这个问题 LoRA 全

    2024年02月09日
    浏览(43)
  • 小白理解GPT的“微调“(fine-tuning)

    对于GPT-3.5,我们实际上并不能在OpenAI的服务器上直接训练它。OpenAI的模型通常是预训练好的,也就是说,它们已经在大量的语料上进行过训练,学习到了语言的基本规则和模式。 然而,OpenAI提供了一种叫做\\\"微调\\\"(fine-tuning)的方法,让我们可以在预训练好的模型基础上进行

    2024年02月04日
    浏览(45)
  • 通过ORPO技术微调 llama3大模型(Fine-tune Llama 3 with ORPO)

    1f45bd1e8577af66a05f5e3fadb0b29 ORPO是一种新颖的微调技术,它将传统的监督微调和偏好对齐阶段整合到一个过程中。这减少了训练所需的计算资源和时间。此外,经验结果表明,ORPO在各种模型大小和基准测试中都超过了其他对齐方法。 在本文中,我们将使用ORPO和TRL库来微调新的

    2024年04月23日
    浏览(37)
  • Windows10上使用llama-recipes(LoRA)来对llama-2-7b做fine-tune

    刚刚在Windows10上搭建环境来对llama2做finetune,里面坑还是挺多的,这里把印象中的坑整理了一下以作备忘。 llama-recipes是meta的开源项目,Github地址为:GitHub - facebookresearch/llama-recipes: Examples and recipes for Llama 2 model llama2同样也是meta的开源LLM模型,因此用此项目做finetune应该是正确

    2024年02月10日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包