当结构化数据也变成一个模态,哪家的大语言模型能脱颖而出呢?
现在正是多模态大模型的时代,图像、视频、音频、3D、甚至气象运动都在纷纷与大型语言模型的原生文本模态组合。而浙江大学及其计算机创新技术研究院的一个数十人团队也将结构化数据(包括数据库、数仓、表格、json 等)视为了一种独立模态。
基于这一视角,依托 Qwen,他们研发了 TableGPT 系列模型。现如今,这个模型已经更新到了第 2 代,性能表现较之前代已有大幅提升:在某些基准上,TableGPT2 能够媲美甚至优于 GPT-4o!或者按团队负责人赵俊博博士的说法:「目前通用大模型在许多结构化数据相关的任务上的表现仍然较弱,TableGPT2 在相关任务的榜单上铁腕刷榜 —— 各类相关任务刷出去平均 40 个点。」
-
论文标题:TableGPT2: A Large Multimodal Model with Tabular Data Integration
-
论文地址:https://arxiv.org/pdf/2411.02059
-
TableGPT 智能体:https://github.com/tablegpt/tablegpt-agent
-
Hugging Face:https://huggingface.co/tablegpt/TableGPT2-7B
该团队表示:「提出 TableGPT2 的关键动机是解决当前 LLM 在数据驱动型真实世界应用中的限制。」
当今的许多 LLM 的设计目标就是以端到端的方式运行,而没有整合外部数据。但该团队认为这种方法存在固有缺陷。举个例子,如果你想用 LLM 来帮助你挑选股票,但如果不给它提供实时的市场信息,它的建议就根本不可能靠谱;更别说必需病人病历和各类过往的指标数据才能做出准确判断的医疗 AI 应用了。具身智能中的灵巧手的触觉信号以及多个传感器中的各类 「觉」 也都是结构化信息。
同时,即便 LLM 已经整合了外部数据源(如数据库),其性能也往往无法达到最优。目前常见的整合思路包括通过工具(如 natural-language-to-sql / NL2SQL)来调用外部数据源以及通过更长的长下文和新架构来纳入外部数据源。但这些方法要么难以用于复杂场景,要么就效率低下,不实用。
基于这些思考,该团队认为在整合外部数据源时需要根本上的范式转变。TableGPT2 也由此而生,该模型的设计目标是直接且高效地整合和处理表格数据,克服当前 LLM 的固有限制,进而实现生产级部署。
之前 LLM 和 VLM 方面的研究已经证明了大规模多样化数据集的重要性。其实表格数据也同样多,并且也同样重要。据估计,全球超过 70% 的数据都是以结构化的表格形式存储的,包括数据库和电子表格。
所以,资源浩瀚,也因此,开发大规模表格模型极具潜力!该团队表示:「通过使用大规模表格及其 schema 元数据的数据集,我们的目标是探索能否有效地建模这些数据格式,从而得到可用于商业智能等应用的功能强大的模型。」
TableGPT2 的表格数据编码器是该团队全新设计的,其重在建模表格数据的结构和内容。这让 TableGPT2 可以捕获 schema 层面和单元格层面的信息,从而有望为表格大模型带来文本模型和视觉模型所经历过的那种巨大提升。
TableGPT2 是什么
从名称也能看出,TableGPT2 是 TableGPT 的新一代版本。初始版本的 TableGPT 就已经引入了结构化特定领域语言(DSL)和专用表格编码器等方法,可以管理复杂的基于表格的查询。在此基础上,TableGPT2 实现了巨大的改进。他们不仅扩大了数据和训练协议的规模,还重新设计了每个组件,同时也引入了一些提升稳健性、扩大适用性以及优化商业智能应用性能的技术。
最终,大规模多模态模型 TableGPT2 诞生了!它有两种配置:7B 和 72B 版本。它们全都基于 Qwen2.5 系列模型。训练过程中,该团队使用了超过 860 亿 token 来进行持续预训练(CPT)、超过 43.75 万个表格 - 语言交织的样本来训练编码器、236 万多个高质量「查询 - 表格 - 输出」元组来进行监督式微调。
在相关研究中,这种规模是前所未有的,足以保证 TableGPT2 满足涉及结构化或表格数据的现代应用的严格要求。
TableGPT2 经历的持续预训练(CPT)、监督式微调(SFT)和支持生产级能力的智能体框架不同于传统 LLM,因为这里的预训练和微调更加注重编程、多轮推理和工具使用。这些特点可确保模型不仅擅长自然语言处理,而且能够很好地处理与表格相关的复杂任务。
此外,该团队还初步探索了表格数据的多模态对齐。具体来说,TableGPT2 创新性地加入了一个单独的模态模块,专门用于读取和解释表格数据。类似于视觉 - 语言模型(VLM),TableGPT2 包含一个表格数据读取模块,其作用是生成与来自文本输入的 token 嵌入相连接的专用嵌入。这个新增模块可让 TableGPT2 更好地捕获表格数据的结构和语义,从而在复杂的商业智能场景中实现更准确的表格理解。图 1 描绘了其整体模型框架。
TableGPT2 是如何炼成的
持续预训练
为了实现 TableGPT2 的目标,该团队首先是通过持续预训练(CPT)来提升模型的编程和推理能力。
具体来说,80% 的 CPT 数据都是标注良好的代码,从而确保 TableGPT2 具有稳健的编程能力,这与 DeepSeek-v2 采用的方法是一致的。此外,该团队还做了补充;他们收集整理了大量包含多种领域知识(如金融、制造业、生物技术、市场技术)的推理数据和一般教科书,以保持数据比例平衡,增强推理能力。表 1 展示 CPT 过程中使用的数据分布和总 token 数。
在数据处理方面,他们采用了一种两级过滤策略。
在文档层面,他们使用 54 个不同的类别对数据进行了标注,以确保全面覆盖不同的文档类型。下表展示了一些重要的过滤标签。
在 token 层面,则是利用了 RHO-1 来微调对高质量 token 的选择。
此外,他们还引入了一种可将代码长度和上下文窗口设置纳入考虑的新方法,这可优化模型有效处理多种不同代码段的能力。
经过彻底过滤后,最终的 CPT 数据包含 86B token,这种稳健强大的预训练可确保 TableGPT2 具备必要的编程和推理能力,足以应对复杂的商业智能和其他相关任务。
有监督微调
在 TableGPT2 中,监督式微调(SFT)的作用是解决在用于商业智能任务和场景时的局限。
为此,该团队编排了一个数据集,其中包含范围广泛的近乎现实的关键场景,包括多轮对话、复杂推理、工具使用和针对具体业务的查询。
这个数据集的构建过程既包括人工标注,也包含一个专家驱动的自动化标注流程,从而可以保证数据的质量和相关性。总体而言,SFT 过程涉及 236 万个样本, token 数量达数十亿,足可用于进一步微调模型,使其满足商业智能和其他涉及表格的环境的特定需求。
更具体地说,TableGPT2 的 SFT 流程有一个关键差异,即这 236 万个指令样本的组成非常平衡且多样化。如此一来,就可以满足表格相关任务的需求:既需要通用的模型能力,也需要针对表格的技能。
该数据集包含的表格专有任务包括代码生成(Python 和 SQL)、表格查询、数据可视化、统计测试和预测建模。此外,其中还有表格理解、表格生成、缺失值插补和基于表格的问答等多种任务,几乎涵盖了表格使用的所有阶段。输入格式加上随机排列的表格元数据(如字段描述、schema 信息和值枚举),可以产生超过 20 种不同的「表格 - 信息」输入组合,组可确保全面覆盖。
为了保证数据质量,他们还实施了一个多步骤的数据过滤流程:
-
首先,使用一组基于规则的过滤器,包括使用 Python 和 SQL 执行器检查代码的可执行性和正确性,从而消除常见错误(例如键错误和类型转换问题)。此外,还会使用正则表达式和其他规则来丢弃异常输出。
-
然后,使用多个模型(如 GPT-4o)对过滤后的数据进行评分;这里使用的提示词是专门设计的,可以保证得到更为细致的评估。只要当样本在所有评分组合上都超过阈值时,该样本才会被保留下来。
-
之后,通过人工检查进行样本校准。如果样本准确率低于 95%,就重新审查并优化其数据生成和过滤脚本。
-
最后,执行评估,这会用到一个包含约 94.9K 个案例(包括现有案例和新构建的案例)的固定验证集,如此可确保生成的结果是可执行且准确的。同时还会执行进一步的手动验证来抽查任何不一致之处并检测潜在的数据问题,例如缺少函数调用或多轮对话能力较差。
用于表格数据的数据增强
为了提升 TableGPT2 的性能(尤其是商业智能任务性能),该团队采用了多种查询增强技术,包括
-
在查询内引入字段时进行模糊化处理
-
通过匿名化字段名和类别值来实现表格数据增强
-
通过结合单轮和多轮问答任务来增强模型的多功能性
-
使用变动的提示词格式和输出结构来降低 TableGPT2 对某些提示词模板的敏感度
-
在数据生成过程中应用后处理增强来提升训练数据的多样性
语义表格编码器
由于 NL2SQL 等传统工作流程存在局限性,该团队为 TableGPT2 设计了新的语义编码器。
这种新的表格编码器的输入是整张表格。基于此,它可为每一列生成一组紧凑的嵌入。
该架构是根据表格数据的独特属性专门设计的,毕竟表格与文本、图像和其它数据类型存在根本性差异。
表格的语义来自四个关键维度:单元格、行、列和表格整体结构。这些维度都存在排列不变性(permutation invariance)。基于这一观察,该团队实现了一个没有位置嵌入的二维注意力机制以及一个分层特征提取过程。这能确保行方向和列方向的关系都被捕获并被有效理解。
此外,他们还采用了一种逐列式对比学习方法,以鼓励模型学习有意义的、对结构有感知的表格语义表征。
该团队使用了 Q-former 式的适应器(配备了一组可学习的查询)来将列嵌入与文本嵌入对齐。
他们还引入了两个特殊 token 和 ,以区分表格特征和原生文本,让模型可以同时处理这两种模态,并且不产生混淆。
为进一步增强文本信息、列嵌入和 schema 元数据之间的对齐程度,他们还使用了联合指令微调。此过程有助于优化模型对表格数据的理解,使其能够更有效地集成和解读各种输入。
顺带一提,目前这个编码器部分还尚未开源。至于原因,赵俊博博士表示:「一方面保护下团队学生们未来的小论文,另外一方面确实 VLM 和特定领域的适配没弄好,解码器可以独立使用,效果仍在。」
智能体框架
该团队在开源库中提供了一个全面的智能体工作流程运行时间框架,其设计目标是将 TableGPT2 无缝地集成到企业级数据分析工具中。该框架包含三个核心组件:
-
运行时间的提示词工程
-
一个安全的代码沙箱
-
一个智能体评估模块
它们加在一起,可以提升智能体的能力和可靠性。这个工作流程具有模块化的步骤,因此可支持复杂的数据分析。这些步骤包括输入规范化、智能体执行(可选择 VLM 支持)、工具调用。
再结合检索增强式生成(RAG,用于高效上下文检索)和代码沙箱(用于安全执行),该框架可确保 TableGPT2 为实际问题提供准确、与上下文相关的见解。
下图展示了智能体的完整工作流程:首先通过一个提示词工程模块来准备和处理输入查询。再基于一个外部知识库使用 RAG 模块后,将经过处理的输入送入主模型。然后,TableGPT2 会与一个视觉 - 语言模型(VLM)合作生成工具调用、代码等相关动作。通过观察中间结果,可以根据需求选择是否迭代,以利用该智能体的反思能力。通过智能体与工具之间的无缝交互,这个迭代过程最终可得到最终输出。
TableGPT2 效果怎么样
在实验部分,团队此次针对表格相关任务进行了全面的基准测试,不仅涵盖了已有的一些数据集,还加入了一个新收集的、面向真实任务的复杂表格数据集,从而提供了一个严格的评估平台。
为了进行全面的比较,团队选择了多样化的基线大语言模型。第一类是最先进的开源通用 LLM,包括 DeepSeek-Coder-V2-Lite-16B、 YiCoder-9B-Chat 以及 Qwen2.5-Coder-7B-Instruct、Qwen2.5-7B-Instruct。
第二类是针对表格相关任务进行微调或专门开发的模型,比如针对表格分析设计和优化的 TableLLM、为处理电子表格和文档设置中各种真实表格操作而微调的 CodeLlama-13B。
基准概览
下表 4 汇总了现有的表格理解和推理基准,共涵盖了 27.7K 个表格和 88.9K 个测试样本。团队将这些基准划分为了以下 6 项主要的表格分析任务,以全方位评估模型在不同类型任务中的性能:
-
表格理解
-
表格问答(TableQA)
-
表格事实验证
-
表格到文本生成(Table2Text)
-
自然语言到 SQL(NL2SQL)
-
整体评估
除了表 4 中已有的基准,团队构建了一个新基准 RealTabBench。现有基准大多侧重于简单的任务,不符合实际使用场景。为了克服这一局限性,团队构建了这个更具挑战性、更能反映实际应用场景的新基准,从商业智能(BI)场景中的真实表格中收集了 360 个复杂数据表格,并在此基础上制定了 6000 个真实、复杂的查询语句。
在评估模型性能时,团队采用了两个在实际应用中特别难处理的表格特征,分别是:
-
模糊性,表格中潜在的形似「A1」、「A2」等难以确认实际含义的匿名字段会对自动分析构成很大的挑战;
-
不规则性,在生产环境中,表格数据通过包含普遍的合并操作和不规则的结构,比如合并单元格和非均匀布局。
同时,针对新基准 RealTabBench,团队又从三个关键维度对生成的结果进行了评估,即一致性、信息完整性和安全性。
为了保证权威性,团队采用人工评审员与评估 LLM 结合的混合系统来生成最终的分数,并已经公开了整个评估流程中的部分样本。
- 项目地址:https://github.com/tablegpt/tablegpt-agent/tree/main/realtabbench
评估结果
下表 5 展示了 TableGPT2 (7B 和 72B 版本)与最先进基线模型的比较结果。值得注意的是,在没有对任何特定基准训练集进行大量训练的情况下,TableGPT2 显著优于几乎所有其他 LLM 方法。并且在某些基准上,TableGPT2 能够媲美甚至优于 GPT-4o。
另外,在涉及分层结构表格的复杂数据基准(如 HiTab)上,当前大多数 LLM 方法表现不佳。相反,TableGPT2 有了明显改进,与 Qwen2.5 系列模型相比,执行准确率实现了 60% 以上的绝对增长。
同样地,对于 RealTabBench 数据集,TableGPT2(7B)在多项任务上均达到了新 SOTA。
为了更直观地展示 TableGPT2 的效果,团队选择了几个比较案例(vs Qwen2.5 系列模型),涵盖了不规则表格、一般表格和模糊表格的场景。具体结果如下图 4 所示。
最后,针对表格相关任务对 LLM 微调不应损害其整体性能。为了验证这一观点,团队在下表 7 中对流行的基准展开评估,包括 MBPP、HumanEval、CMMLU 和 MMLU。
结果显示,TableGPT2 在这些基准上保持了强大的性能,并没有出现通用能力的下降。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。