当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > 揭示LLM巫师:代码预训练的魅力,UIUC华人团队揭示代码数据的三大优势

揭示LLM巫师:代码预训练的魅力,UIUC华人团队揭示代码数据的三大优势

来源:51CTO.COM 2024-01-29 13:31:51 0浏览 收藏

积累知识,胜过积蓄金银!毕竟在科技周边开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《揭示LLM巫师:代码预训练的魅力,UIUC华人团队揭示代码数据的三大优势》,就带大家讲解一下知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

大模型时代的语言模型(LLM)尺寸和训练数据都增加了,包括自然语言和代码。

代码是人类和计算机之间的媒介,将高级目标转换为可执行的中间步骤。它具有语法标准、逻辑一致、抽象和模块化的特点。

伊利诺伊大学香槟分校的研究团队最近发布了一篇综述报告,总结了将代码融入LLM训练数据的多种益处。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

论文链接:https://arxiv.org/abs/2401.00812v1

具体来说,除了可以提升LLM在代码生成上的能力外,好处还包括以下三点:

1. 有助于解锁LLM的推理能力,使能够应用于一系列更复杂的自然语言任务上;

2. 引导LLM生成结构化且精确的中间步骤,之后可以通过函数调用的方式连接到外部执行终端(external execution ends);

3. 可以利用代码编译和执行环境为模型的进一步改进提供了更多样化的反馈信号。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

此外,研究人员还追踪了LLM作为智能智能体(intelligent agents,IA)时,在理解指令、分解目标、规划和执行行动(execute actions)以及从反馈中提炼的能力如何在下游任务中起到关键作用。

最后,文中还提出了「使用代码增强LLM」领域中关键的挑战以及未来的研究方向。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

代码预训练提升LLM性能

以OpenAI的GPT Codex 为例,对 LLM 进行代码预训练后,可以扩大LLM的任务范围,除了自然语言处理外,模型还可以为数学理论生成代码、执行通用编程任务、数据检索等。

代码生成任务具有两个特性:1)代码序列需要有效执行,所以必须具有连贯的逻辑,2)每个中间步骤都可以进行逐步逻辑验证(step-by-step logic verification)。

在预训练中利用和嵌入代码的这两种特性,可以提高LLM思维链(CoT)技术在传统自然语言下游任务中的性能,表明代码训练能够提高LLM进行复杂推理的能力。

通过从代码的结构化形式中进行隐式学习,代码 LLM 在常识结构推理任务中也表现出更优的性能,例如与markup、HTML和图表理解相关的任务。

支持功能/函数终端(function ends)

最近的研究结果表明,将LLMs连接到其他功能终端(即,使用外部工具和执行模块增强LLMs)有助于LLMs更准确可靠地执行任务。

这些功能性目的使LLMs能够获取外部知识、参与到多种模态数据中,并与环境进行有效互动。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

从相关工作中,研究人员观察到一个普遍的趋势,即LLMs生成编程语言或利用预定义的函数来建立与其他功能终端的连接,即「以代码为中心」的范式。

与LLM推理机制中严格硬编码工具调用的固定实践流程相反,以代码为中心的范式允许LLM动态生成tokens,并使用可适应的参数(adaptable parameters)调用执行模块,为LLM与其他功能终端交互提供了一种简单明了的方法,增强了其应用程序的灵活性和可扩展性。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

重要的是,这种范式可以让LLM与跨越不同模态和领域的众多功能终端进行交互;通过扩展可访问的功能终端的数量和种类,LLM可以处理更复杂的任务。

本文中主要研究了与LLM连接的文本和多模态工具,以及物理世界的功能端,包括机器人和自动驾驶,展现了LLM在解决各种模式和领域问题方面的多功能性。

提供自动反馈的可执行环境

LLMs表现出超出其训练参数的性能,部分原因是模型能够吸收反馈信号,特别是在非静态的现实世界应用中。

不过反馈信号的选择必须谨慎,因为嘈杂的提示可能会阻碍LLM在下游任务上的表现。

此外,由于人力成本高昂,因此在保持忠诚度(faithful)的同时自动收集反馈至关重要。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

将LLMs嵌入到代码执行环境中可以实现上述条件的自动反馈。

由于代码执行在很大程度上是确定性的,LLMs从执行代码的结果中获取的反馈仍然忠实于目标任务;代码解释器还为LLMs查询内部反馈提供了一个自动路径,无需人工标注即可对LLMs生成的错误代码进行调试和优化。

此外,代码环境允许LLMs整合各种各样的外部反馈形式,包括但不限于二元正确性反馈,对结果的自然语言解释,以及奖励值排序,从而实现一个高度可定制的方法来提高性能。

LLM巫师,代码预训练是魔杖!UIUC华人团队揭秘代码数据三大好处

当下的挑战

代码预训练与LLMs推理增强的因果关系

虽然从直觉上来看,代码数据的某些属性可能有助于LLMs的推理能力,但其对增强推理技能影响的确切程度仍然模糊不清。

在下一步的研究工作中,重要的是要研究在训练数据中加强认识:这些代码属性是否真的可以增强训练的LLMs的推理能力。

如果确实如此,对代码的特定属性进行预训练可以直接提高LLMs的推理能力,那么理解这种现象将是进一步提高当前模型复杂推理能力的关键。

不限于代码的推理能力

尽管通过代码预训练实现了对推理能力的增强,但基础模型仍然缺乏真正通用人工智能所期望的类似人类的推理能力。

除了代码之外,大量其他文本数据源也有可能增强LLM推理能力,其中代码的内在特征,如缺乏歧义、可执行性和逻辑顺序结构,为收集或创建这些数据集提供了指导原则。

但如果继续坚持在具有语言建模目标的大型语料库上训练语言模型的范式,很难有一种顺序可读的语言比形式语言更抽象:高度结构化,与符号语言密切相关,并且在数字网络环境中大量存在。

研究人员设想,探索可替代的数据模式、多样化的训练目标和新颖的架构将为进一步增强模型推理能力提供更多的机会。

以代码为中心范式在应用上的挑战

在LLMs中,使用代码连接到不同的功能终端的主要挑战是学习不同功能的正确调用方法,包括选择正确的功能(函数)终端以及在适当的时候传递正确的参数。

比如说一个简单的任务(网页导航),给定一组有限的动作原语后,如鼠标移动、点击和页面滚动,再给出一些例子(few-shot),一个强大的基础LLM往往需要LLM精确地掌握这些原语的使用。

对于数据密集型领域中更复杂的任务,如化学、生物学和天文学,这些任务涉及对特定领域python库的调用,其中包含许多不同功能的复杂函数,增强LLMs正确调用这些功能函数的学习能力是一个前瞻性的方向,可以使LLMs在细粒度领域中执行专家级任务。

从多轮互动和反馈中学习

LLMs通常需要与用户和环境进行多次交互,不断纠正自己以改善复杂任务的完成。

虽然代码执行提供了可靠和可定制的反馈,但尚未建立一种完全利用这种反馈的完美方法。

当下基于选择的方法虽然有用,但不能保证提高性能,而且效率低下;基于递归的方法严重依赖于LLM的上下文学习能力,这可能会限制其适用性;微调方法虽然做出了持续的改进,但数据收集和微调是资源密集型的,实际使用时很困难。

研究人员认为强化学习可能是一种更有效的利用反馈和改进的方法,可以提供一种动态的方式来适应反馈,通过精心设计的奖励功能,潜在地解决当前技术的局限性。

但仍然需要大量的研究来了解如何设计奖励函数,以及如何将强化学习与LLMs最佳地集成以完成复杂的任务。

理论要掌握,实操不能落!以上关于《揭示LLM巫师:代码预训练的魅力,UIUC华人团队揭示代码数据的三大优势》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
苹果mac上的微博体验如何?苹果mac上的微博体验如何?
上一篇
苹果mac上的微博体验如何?
如何将Mac苹果屏幕投射到电视上?
下一篇
如何将Mac苹果屏幕投射到电视上?
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    511次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    498次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 千音漫语:智能声音创作助手,AI配音、音视频翻译一站搞定!
    千音漫语
    千音漫语,北京熠声科技倾力打造的智能声音创作助手,提供AI配音、音视频翻译、语音识别、声音克隆等强大功能,助力有声书制作、视频创作、教育培训等领域,官网:https://qianyin123.com
    170次使用
  • MiniWork:智能高效AI工具平台,一站式工作学习效率解决方案
    MiniWork
    MiniWork是一款智能高效的AI工具平台,专为提升工作与学习效率而设计。整合文本处理、图像生成、营销策划及运营管理等多元AI工具,提供精准智能解决方案,让复杂工作简单高效。
    169次使用
  • NoCode (nocode.cn):零代码构建应用、网站、管理系统,降低开发门槛
    NoCode
    NoCode (nocode.cn)是领先的无代码开发平台,通过拖放、AI对话等简单操作,助您快速创建各类应用、网站与管理系统。无需编程知识,轻松实现个人生活、商业经营、企业管理多场景需求,大幅降低开发门槛,高效低成本。
    172次使用
  • 达医智影:阿里巴巴达摩院医疗AI影像早筛平台,CT一扫多筛癌症急慢病
    达医智影
    达医智影,阿里巴巴达摩院医疗AI创新力作。全球率先利用平扫CT实现“一扫多筛”,仅一次CT扫描即可高效识别多种癌症、急症及慢病,为疾病早期发现提供智能、精准的AI影像早筛解决方案。
    179次使用
  • 智慧芽Eureka:更懂技术创新的AI Agent平台,助力研发效率飞跃
    智慧芽Eureka
    智慧芽Eureka,专为技术创新打造的AI Agent平台。深度理解专利、研发、生物医药、材料、科创等复杂场景,通过专家级AI Agent精准执行任务,智能化工作流解放70%生产力,让您专注核心创新。
    191次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码