好望角:让你的每次点击都有价值:byteclicks.com | 搜索引擎正在被AI污染信息源,中文优质信息越来越少了 |

小模型也能办大事:你的Excel智能公式AI助手

你是否曾对着Excel表格中复杂的公式感到头疼?是否希望有一个聪明的助手,能帮你快速修复错误、自动补全公式,甚至在你需要的时候,还能找到相似的公式来参考?在人工智能蓬勃发展的今天,这些愿望正在逐步变为现实。

但是,你可能听说过那些动辄拥有数十亿甚至数千亿参数的“巨型”语言模型,它们功能强大,但同时也体积庞大,训练和部署都非常昂贵。

Excel公式虽然也是一种编程语言,但它与传统的编程语言有着明显的不同。Excel公式主要用于处理表格数据,进行各种计算和分析。它的语法相对简洁,函数种类繁多,但逻辑结构却非常严谨。

如果我们想要用人工智能来辅助Excel公式的编写,是否也需要动用那些“巨型”语言模型呢?科学家们开始思考:能否针对Excel公式的特点,打造一款 “量身定制” 的小型语言模型,既能满足需求,又能降低成本和门槛?

最近,一群科学家们带来了一款名为 FLAME 的全新模型,它虽然体积小巧,参数只有区区几千万,却能在Excel公式处理领域爆发出惊人的能量。这款模型专为Excel公式而生,它不仅能够媲美甚至超越那些“巨无霸”模型,而且更加轻便、高效,让智能公式助手真正走进千家万户。

语言模型:人工智能的“大脑”

要理解FLAME的厉害之处,我们首先需要了解什么是语言模型。简单来说,语言模型就是人工智能的“大脑”,它能够理解和生成自然语言,就像我们人类一样。近年来,随着深度学习技术的飞速发展,语言模型的能力也突飞猛进,被广泛应用于机器翻译、文本生成、对话系统等领域。

在编程领域,语言模型也展现出了巨大的潜力。例如,著名的 Codex 模型,就是一款基于大型语言模型的代码生成工具,能够帮助程序员自动完成代码、修复代码错误,极大地提高了开发效率。

然而,这些通用型的语言模型,为了处理各种各样的编程语言和任务,往往需要庞大的参数规模和海量的训练数据。

FLAME:Excel公式的专属小模型

FLAME,全称 Formula Language Model for Excel,正是科学家们为了解决这个问题而打造的。它基于一种名为 T5-small 的模型架构,参数规模仅有 6000万,与那些动辄数百亿甚至上千亿参数的“巨无霸”模型相比,简直是“小巫见大巫”。

然而,FLAME的“小身材”下却蕴藏着巨大的能量。在针对Excel公式的特定任务上,FLAME的表现甚至超越了参数规模高达 1750亿 的 Codex-Davinci 模型。

FLAME成功的秘诀

那么,FLAME是如何做到“以小博大”的呢?这要归功于科学家们为FLAME精心设计的 “专属配方”,主要包括以下几个方面:

1. 精心挑选的“食材”:高质量的Excel公式数据集

就像烹饪美食需要新鲜优质的食材一样,训练一个优秀的语言模型也需要高质量的数据集。科学家们从互联网上收集了 180万 个公开的Excel工作簿,从中提取了 9.27亿 条Excel公式。

然而,这些原始数据中存在大量的 “重复公式”,例如在不同的单元格中使用了结构相同的公式,只是单元格引用发生了变化。为了避免模型学习到过多的冗余信息,科学家们进行了一项 “公式去重” 的工作。他们通过比较公式的 “骨架” (即去除具体的数值、字符串和单元格引用,只保留公式的结构),将结构相似的公式进行合并,最终得到了一个包含 610万 条独特公式的精简数据集。

这个数据集就像经过精心挑选的“食材”,既保证了数量,又提升了质量,为FLAME的训练奠定了坚实的基础。

2. Excel公式专属的分词器

语言模型需要将输入的文本分解成一个个小的单元,才能进行理解和处理。在自然语言处理领域,这个过程被称为 “分词”

对于传统的编程语言和自然语言,通常使用 字节对编码 (BPE) 等通用分词方法。然而,Excel公式的结构非常特殊,如果直接使用通用分词方法,可能会破坏公式的结构信息,例如将函数名和括号分割开来,导致模型难以理解公式的含义。

为了解决这个问题,科学家们为FLAME量身定制了一款 Excel公式专属的分词器。这款分词器能够识别Excel公式中的 标点符号、空格、内置函数名、数字 等关键成分,并将它们作为独立的单元进行分割。然后再对公式中剩余的部分,例如字符串、表格名、列名等,应用BPE方法进行分词。

这能够更好地保留Excel公式的结构信息,让FLAME能够更准确地理解公式的含义。

3. 领域特定的预训练目标

预训练是训练语言模型的重要环节,通过预训练,模型可以学习到语言的通用规律和模式。对于FLAME来说,科学家们不仅使用了通用的预训练目标,还设计了 两种领域特定的预训练目标,让FLAME能够更好地理解Excel公式的特性。

  • 语言感知的掩码跨度预测 (laMSP):这种方法模仿了人类阅读公式的方式,它会随机 “遮盖” 公式中的一部分连续的单元,例如一个函数名、一个单元格范围等,然后让模型预测被遮盖的内容。与传统的掩码方法不同,laMSP 确保每次遮盖的都是 符合Excel公式语法规则的完整单元,而不是随意地分割词语,这有助于模型学习到公式的结构和语法规则。
  • 用户启发式的去噪:这种方法模拟了用户在编写Excel公式时常犯的错误,例如 函数参数顺序错误、函数参数数量错误、运算符使用错误 等。科学家们根据用户在论坛上提出的问题、用户行为分析以及领域知识,总结出了 17种常见的公式错误类型。在预训练过程中,他们会随机地向公式中注入这些错误,然后让模型学习 “纠正” 这些错误,还原成正确的公式。

这两种领域特定的预训练目标,让FLAME能够更好地理解Excel公式的 语法、结构和常见的错误模式,从而在后续的任务中表现出色。

FLAME的“技能展示”

经过精心训练的FLAME,拥有了强大的Excel公式处理能力。科学家们在 公式修复、公式补全和公式检索 三个下游任务上对FLAME进行了全面的评估,结果令人惊喜。

1. 公式修复:化身“公式医生”

公式修复任务的目标是 修复Excel公式中存在的错误。在实际应用中,用户可能会因为各种原因,例如笔误、理解错误等,导致公式出现语法错误或逻辑错误。FLAME就像一位经验丰富的“公式医生”,能够快速诊断并修复这些错误。

科学家们使用了两个数据集来评估FLAME的公式修复能力:

  • Forum数据集:包含 273条 从Excel帮助论坛收集的真实错误公式。这些公式都是用户在实际使用中遇到的问题,具有很高的挑战性。
  • Synthetic数据集:包含 500条 通过模拟用户常见错误生成的合成错误公式。

实验结果表明,在 Forum数据集 上,FLAME的修复效果与参数规模庞大的 Codex-Davinci 模型 不相上下,而且在 top-5候选结果 中,FLAME的准确率甚至 超过了Codex-Davinci。而在 Synthetic数据集 上,FLAME的表现也 优于 通用型的代码模型 CodeT5

更令人惊喜的是,FLAME的 推理速度 非常快。在CPU环境下,FLAME生成修复候选结果的平均延迟只有 0.7秒,远低于那些需要通过API调用的“云端”模型。这意味着FLAME可以轻松地部署在用户的本地电脑上,提供 实时、流畅 的公式修复体验。

2. 公式补全:变身“公式助手”

公式补全任务的目标是 根据用户输入的公式前缀,自动补全公式的剩余部分。这就像智能输入法中的“联想输入”功能,能够帮助用户快速完成公式的编写。FLAME就像一位贴心的“公式助手”,能够根据用户的意图,智能地补全公式。

科学家们使用了 Forum数据集 中的公式作为目标公式,然后随机截取公式的前缀,让FLAME根据前缀进行补全。

实验结果表明,FLAME在公式补全任务上也表现出色。在 精确匹配率 上,FLAME在不同前缀长度下都 优于 其他模型,这意味着FLAME能够更准确地预测用户想要输入的完整公式。即使考虑到公式中单元格引用和数值常量的差异,在 骨架匹配率 上,FLAME的表现也 不逊于 那些“巨无霸”模型,并且在较长的前缀下甚至 超越 了它们。

3. 公式检索:变身“公式搜索专家”

公式检索任务的目标是 根据用户给定的公式,找到与其结构或功能相似的公式。这就像一个“公式搜索引擎”,能够帮助用户快速找到相关的公式示例,学习和借鉴他人的经验。FLAME的 公式嵌入 技术,可以将公式转化为固定长度的向量表示,然后通过计算向量之间的 余弦相似度,来衡量公式之间的相似程度。

科学家们使用了 Enron数据集 中的 1000条 公式来评估FLAME的公式检索能力。实验结果表明,FLAME的公式嵌入能够 更准确地捕捉公式之间的相似性,其检索效果 优于 通用型的代码模型 CodeT5、CodeBERT和GraphCodeBERT

FLAME的意义和未来

FLAME的成功,证明了 “小模型也能办大事”。它表明,在特定领域,通过精心设计模型架构、训练数据和预训练目标,小型模型完全可以媲美甚至超越那些“巨无霸”模型。

FLAME的意义不仅在于性能的提升,更在于 降低了人工智能的应用门槛。它的体积小巧、推理速度快,更容易部署和使用,可以让更多的用户享受到智能公式助手带来的便利。

未来,科学家们还计划在以下几个方面继续探索和改进FLAME:

  • 更强大的推理策略:利用FLAME快速推理的优势,探索更复杂的搜索策略,例如结合符号约束的解码方法,进一步提升公式生成和修复的准确性。
  • 表格数据嵌入:将FLAME的公式嵌入技术与表格数据相结合,构建更强大的表格数据分析和处理模型。
  • 更精细的分词方法:探索更精细的分词方法,例如针对公式中的不同成分(函数名、单元格引用、常量等)进行单独编码,进一步压缩模型体积,提升模型效率。

随着技术的不断进步,FLAME这样的“小而美”的AI模型将会越来越多,它们将会在各个领域发挥重要作用,让科技的进步真正惠及每一个人。而FLAME这颗Excel公式领域的“小火苗”,也必将点亮更多人的表格世界,让数据处理变得更加智能、高效和便捷。

上一篇:

下一篇:


标签