1.17组会汇报

news2025/1/18 11:57:12

STRUC-BENCH: Are Large Language Models Good at Generating Complex Structured Tabular Data?

STRUC-BENCH:大型语言模型擅长生成复杂的结构化表格数据吗?23年arXiv.org

1概括

  这篇论文旨在评估大型语言模型(LLMs)在生成结构化表格数据方面的能力,并提出了一些创新方法来提高模型性能。

问题背景

  • 尽管大型语言模型(如GPT-4)在自然语言处理任务中表现出色,但在生成复杂的结构化数据(如表格、HTML或LaTeX格式)时仍存在挑战。
  • 研究强调当前缺乏系统性的基准和指标来评估模型在这些任务中的性能。

核心贡献

  • 提出了一种新的基准测试(Benchmark),名为STRUC-BENCH,覆盖多种数据格式,包括文本表格、HTML和LaTeX。
  • 设计了一种新方法,FORMATCOT(结构感知的提示优化),用于生成特定格式的提示数据,以改进模型的微调过程。
  • 引入了两个新评价指标:
    • P-Score:通过模型自身对生成内容和格式的相似性进行评分。
    • H-Score:使用启发式规则计算生成表格与目标表格的相似性。

  工作流程概述:我们首先创建原始文本表、HTML表和LATEX表的数据集。随后,LLaMA-7B使用FORMATCOT构建的训练数据进行训练。最后,我们的基准测试验证了当前LLM生成此类表的有效性。

2 问题分析和Benchmark

2.1问题分析

   为了评估LLM将文本描述转换为结构化表格的能力,我们使用了RotoWire数据集,该数据集原本是一个从表格到文本的数据集,我们将其反过来作为一个从文本到表格的任务。在通过对20个样本的审查确保描述包含足够的表格生成信息后,我们发现GPT-3.5和GPT-4的性能有很大的局限性,尤其是在处理复杂结构时。

   在以表格等精确格式生成数据的测试中,GPT-3.5和GPT-4尽管功能先进,却经常出错,MTurk系统性人工注释研究就证明了这一点。图2量化了错误类型,分为“元素错误”、“元素格式错误”、“结构错误”和“结构命名错误”。

图2 人工注释的错误分析

     GPT-3.5仅有3%的输出完全准确,而GPT-4仅有9%略好于GPT-3.5。这些结果表明,GPT架构在设计上存在局限性,尽管它能有效地模仿语言模式,但在需要较长序列的持续结构连贯性的任务中显得力不从心。

2.2 Benchmark Construction(基准建设

研究者们构建了一个名为STRUC-BENCH的基准测试,涵盖了文本表格、HTML和LaTeX格式。他们从RotoWire数据集和The Stack中选择了大于3x3的表格,以确保数据集的多样性和复杂性。STRUC-BENCH包括了对四个流行LLMs(GPT-NeoX-20B、GPT-3.5、GPT-4和Vicuna)的评估。

         

                   表1 STRUC-BENCH数据统计。行数和列数已取平均值。

3方法

3.1数据生成

如图3,提出了FORMATCOT,使用GPT-3.5生成格式指令,这是一种自指导方法,用于生成{数据、指令}对,以达到微调的目的。具体来说,我们对FORMATCOT的提示涉及指导模型准确描述和解释输出表格中呈现的格式元素。

图3:左上角的框表示原始输入,明显缺少对格式的描述。为了明确指示模型理解格式,我们使用位于右侧的FORMATCOT,它生成<FORMAT INSTRUCTION>。左下角的框说明了通过FORMATCOT后LLaMA微调的输入是什么样子。<TEXT>为预期的表输出(原始输入)提供描述性文本,<TABLE>用作参考表(输出),<FORMAT INSTRUCTION>是通过FORMATCOT生成的格式指南(添加到输入中)。

3.2评估指标

提出了P-Score(基于模型的评估)和H-Score(基于启发式的评估)两种新指标,以更准确地衡量LLMs的性能。

P-Score

我们采用两种方法对每个指标进行评分。首先,我们执行基于模型的评估,用两个表查询GPT-3.5,让它分别对内容和格式的相似性进行评分。我们会提示模型在输出分数前执行Chain-of-Thought (CoT) 思维链推理,用预测表和真值表两种顺序查询模型,然后平均分数。以P-Score(提示分数)的形式报告这些结果。

H-Score

此外,我们还采用了手工制作的评分函数来对表格的相似性进行评分。由于表格可以以不同的格式呈现,我们采用了几种启发式方法对表格进行归一化处理并计算其相似性。我们使用Levenshtein距离的平均值和Ratclif-f/Obershelp相似性度量来计算字符串或数据结构之间的相似性。这些启发式归一化指标以 H-Score的形式报告。

4实验

4.1实验设置

评估指标:使用了包括SacreBLEU、ROUGE-L、BERTScore、BARTScore、BLEURT在内的多种传统文本相似度评估指标,以及文章提出的两个新指标:P-Score和H-Score。

评估模型:包括GPT-NeoX-20B、GPT-3.5、GPT-4、Vicuna-13B、LLaMA-7B,以及经过微调的LLaMA-7B模型。

数据集:每个项目由三部分组成:指令、输入和输出。生成结果时,将每个项目的指令和输入合并为模型的最终输入。

推理过程:在推理过程中,用户提供自然语言提示,描述任务的格式和内容,以及预期的响应。

4.2人工评估

评估内容和格式质量:通过人工评估,关注内容和格式质量,使用10分制评分。

评估结果:P-Score和H-Score与人类判断有显著相关性,表明这些指标在评估结构化输出方面的有效性和可靠性。内容P-Score显示出最佳的实例级相关性。

4.3实验结果

表2根据几个指标对不同的LLM进行了比较分析。对于“来自原始文本的表格”(Tables from Raw Text),Ours-7B 在每个指标上都优于其他模型。如果不进行微调,Ours-7B的性能会明显下降,尤其是在SacreBLEU、ROUGE-L和BERTScore方面。不过,这些差异很小,7B模型在其他指标上都名列前茅。

这些结果表明,我们的方法表现出了卓越的性能,凸显了微调较小模型超越较大模型的功效。此外,我们还深入分析了基于我们的Mturk注释,将观察到的缺陷归因于几种错误类型。我们还在图5中展示了能力图。

表2:测试集上的自动评估结果,包括五种以前的度量标准和四种建议的度量标准。 w.o.f inetune表示我们还比较了未进行微调的模型的性能,作为一项消融研究。Ours-7B "是经过微调的LLaMA。

  

5局限性

虽然我们进行了全面的分析,但本文对结构化文本生成中LLM的探索还存在一些局限性:

探究表格表示的最佳格式 在这项研究中,我们没有调查哪种表格格式最有效。相同信息的不同呈现方式可能是合理的,而表格规范化策略,如确定将给定事实表格化的最佳方式或如何将多个表格相互连接等,仍有待探索。未来的研究可以对表格规范化进行研究,以确定表格数据结构和表示的最佳策略。

扩大数据集范围  可以探索的数据类型和来源是无穷无尽的。纳入更广泛的数据集可以让模型接触到更广泛的结构格式,最终提高其整体性能。

增强数字推理能力 我们的研究发现,数字推理能力不足是 LLM 面临的挑战之一。研究加强这些模型的数字推理能力的技术可以显著提高它们的性能。

开发先进方法 虽然我们提出的结构感知的指令微调方法(structure-aware instruction tuning method)显示出了很好的效果,但我们还可以开发更先进的技术。例如,未来的工作可以探索将更明确的结构信息纳入模型的方法,或者开发能让模型更有效地学习结构模式的方法。

探索多模态LLMs   随着LLM的不断发展,我们有机会探索多模态模型,这些模型可以以结构化的方式处理和生成文本以及其他形式的数据,如声音或图像。‌‌

目前研一,有相似方向的朋友我们可以交流学习呀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2278454.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PyTorch使用教程(2)-torch包

1、简介 torch包是PyTorch框架最外层的包&#xff0c;主要是包含了张量的创建和基本操作、随机数生成器、序列化、局部梯度操作的上下文管理器等等&#xff0c;内容很多。我们基础学习的时候&#xff0c;只有关注张量的创建、序列化&#xff0c;随机数、张量的数学数学计算等常…

idea gradle compiler error: package xxx does not exist

idea 编译运行task时报项目内的包不存在&#xff0c;如果你试了网上的其它方法还不能解决&#xff0c;应该是你更新了新版idea&#xff0c;项目用的是旧版jdk&#xff0c;请在以下编译器设置中把项目JDK字节码版本设为8&#xff08;jdk1.8&#xff0c;我这里是17请自行选择&…

Nmap之企业漏洞扫描(Enterprise Vulnerability Scanning for Nmap)

简介 Namp是一个开源的网络连接端扫描软件&#xff0c;主要用于网络发现和安全审核。‌它可以帮助用户识别网络上的设备、分析它们的服务、检测操作系统类型&#xff0c;甚至发现潜在的安全漏洞。Nmap由Fyodor开发&#xff0c;最初是为了满足网络管理员的需求&#xff0c;但随…

RabbitMQ前置概念

文章目录 1.AMQP协议是什么&#xff1f;2.rabbitmq端口介绍3.消息队列的作用和使用场景4.rabbitmq工作原理5.整体架构核心概念6.使用7.消费者消息推送限制&#xff08;work模型&#xff09;8.fanout交换机9.Direct交换机10.Topic交换机&#xff08;推荐&#xff09;11.声明队列…

RabbitMQ---TTL与死信

&#xff08;一&#xff09;TTL 1.TTL概念 TTL又叫过期时间 RabbitMQ可以对队列和消息设置TTL&#xff0c;当消息到达过期时间还没有被消费时就会自动删除 注&#xff1a;这里我们说的对队列设置TTL,是对队列上的消息设置TTL并不是对队列本身&#xff0c;不是说队列过期时间…

MySQL8数据库全攻略:版本特性、下载、安装、卸载与管理工具详解

大家好&#xff0c;我是袁庭新。 MySQL作为企业项目中的主流数据库&#xff0c;其5.x和8.x版本尤为常用。本文将详细介绍MySQL 8.x的特性、下载、安装、服务管理、卸载及管理工具&#xff0c;旨在帮助用户更好地掌握和使用MySQL数据库。 1.MySQL版本及下载 企业项目中使用的…

хорошо哈拉少wordpress俄语主题

хорошо哈拉少wordpress俄语主题 wordpress俄文网站模板&#xff0c;推荐做俄罗斯市场的外贸公司建俄语独立站使用。 演示 https://www.jianzhanpress.com/?p7360

【STM32-学习笔记-10-】BKP备份寄存器+时间戳

文章目录 BKP备份寄存器Ⅰ、BKP简介1. BKP的基本功能2. BKP的存储容量3. BKP的访问和操作4. BKP的应用场景5. BKP的控制寄存器 Ⅱ、BKP基本结构Ⅲ、BKP函数Ⅳ、BKP使用示例 时间戳一、Unix时间戳二、时间戳的转换&#xff08;time.h函数介绍&#xff09;Ⅰ、time()Ⅱ、mktime()…

Python毕业设计选题:基于python的酒店推荐系统_django+hadoop

开发语言&#xff1a;Python框架&#xff1a;djangoPython版本&#xff1a;python3.7.7数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat11开发软件&#xff1a;PyCharm 系统展示 管理员登录 管理员功能界面 用户管理 酒店客房管理 客房类型管理 客房预定管理 用户…

【c++继承篇】--继承之道:在C++的世界中编织血脉与传承

目录 引言 一、定义二、继承定义格式2.1定义格式2.2继承关系和访问限定符2.3继承后子类访问权限 三、基类和派生类赋值转换四、继承的作用域4.1同名变量4.2同名函数 五、派生类的默认成员构造函数5.1**构造函数调用顺序&#xff1a;**5.2**析构函数调用顺序&#xff1a;**5.3调…

Elasticsearch:Jira 连接器教程第二部分 - 6 个优化技巧

作者&#xff1a;来自 Elastic Gustavo Llermaly 将 Jira 连接到 Elasticsearch 后&#xff0c;我们现在将回顾最佳实践以升级此部署。 在本系列的第一部分中&#xff0c;我们配置了 Jira 连接器并将对象索引到 Elasticsearch 中。在第二部分中&#xff0c;我们将回顾一些最佳实…

【狂热算法篇】探秘图论之 Floyd 算法:解锁最短路径的神秘密码(通俗易懂版)

&#xff1a; 羑悻的小杀马特.-CSDN博客羑悻的小杀马特.擅长C/C题海汇总,AI学习,c的不归之路,等方面的知识,羑悻的小杀马特.关注算法,c,c语言,青少年编程领域.https://blog.csdn.net/2401_82648291?spm1010.2135.3001.5343 在本篇文章中&#xff0c;博主将带大家去学习所谓的…

npm的包管理

从哪里下载包 国外有一家 IT 公司&#xff0c;叫做 npm,Inc.这家公司旗下有一个非常著名的网站: https://www.npmjs.com/&#xff0c;它是全球最大的包共享平台&#xff0c;你可以从这个网站上搜索到任何你需要的包&#xff0c;只要你有足够的耐心!到目前位置&#xff0c;全球约…

GitLab:添加SSH密钥之前,您不能通过SSH来拉取或推送项目代码

1、查看服务器是否配置过 [rootkingbal-ecs-7612 ~]# cd .ssh/ [rootkingbal-ecs-7612 .ssh]# ls authorized_keys id_ed25519 id_ed25519.pub id_rsa id_rsa.pub2、创建密钥 $ ssh-keygen -t rsa -C kingbalkingbal.com # -C 后写你的邮箱 一路回车 3、复制密钥 [rootk…

为ARM64架构移植Ubuntu20.04换源的发现

在为ARM64架构(RK3566)移植ubuntu20.04的时候发现在更换为国内源之后&#xff0c;无法正常完成apt update,报错为: Ign:25 http://mirrors.aliyun.com/ubuntu focal-updates/main arm64 Packages …

LARGE LANGUAGE MODELS ARE HUMAN-LEVEL PROMPT ENGINEERS

题目 大型语言模型是人类级别的提示工程师 论文地址&#xff1a;https://arxiv.org/abs/2211.01910 项目地址&#xff1a;https://github.com/keirp/automatic_prompt_engineer 摘要 通过对自然语言指令进行调节&#xff0c;大语言模型 (LLM) 显示了作为通用计算机的令人印象深…

Redisson发布订阅学习

介绍 Redisson 的消息订阅功能遵循 Redis 的发布/订阅模式&#xff0c;该模式包括以下几个核心概念&#xff1a; 发布者&#xff08;Publisher&#xff09;&#xff1a;发送消息到特定频道的客户端。在 Redis 中&#xff0c;这通过 PUBLISH 命令实现。 订阅者&#xff08;Sub…

git操作(Windows中GitHub)

使用git控制GitHub中的仓库版本&#xff0c;并在Windows桌面中创建与修改代码&#xff0c;与GitHub仓库进行同步。 创建自己的GitHub仓库 创建一个gen_code实验性仓库用来学习和验证git在Windows下的使用方法&#xff1a; gen_code仓库 注意&#xff0c;创建仓库时不要设置…

【tailscale 和 ssh】当服务器建立好节点,但通过客户端无法通过 ssh 连接

背景 当服务器建立好节点&#xff0c;一切显示正常但通过客户端无法通过 vs code 中的 ssh 连接到服务器 问题解决 因为服务器是重装过的&#xff0c;所以忘记在服务器上下载 ssh 了。。。安装完成并启动 SSH 服务后便可正常连接&#xff01; sudo apt update sudo apt in…

KubeSphere部署安装,接入KubeKey安装的k8s集群

KubeSphere安装接入KubeKey安装的k8s集群 文章目录 KubeSphere安装接入KubeKey安装的k8s集群 一.NFS安装配置1.服务器安装NFS服务2.下载并部署 NFS Subdir External Provisioner1).下载部署文件2).创建 NameSpace3).创建 RBAC 资源4).配置 deployment.yaml5).部署 Storage Clas…