2024 arXiv Cost-Efficient Prompt Engineering for Unsupervised Entity Resolution

论文基本信息

题目: Cost-Efficient Prompt Engineering for Unsupervised Entity Resolution
作者: Navapat Nananukul, Khanin Sisaengsuwanchai, Mayank Kejriwal
机构: University of Southern California, Information Sciences Institute, Los Angeles, CA, United States of America
发表地点与年份: arXiv 预印本,2024 年
关键词术语: large language models, prompt engineering, unsupervised entity resolution, inter-consistency of prompting

摘要(详细复述)

背景:实体消岐(Entity Resolution, ER)是识别不同数据源中指向同一真实实体的记录的任务,传统方法依赖大量人工特征工程和训练数据筛选。
方案概述:本研究探索使用大型语言模型(LLM)如 GPT-3.5 作为无监督 ER 的相似性函数,通过六种不同的提示工程方法(包括单属性、多属性、JSON 格式、相似度评分和少样本示例)在电子商务数据集上进行实验。
主要结果/提升:实验表明,GPT-3.5 在无监督 ER 上表现良好(F1 分数超过 80%),但更复杂、昂贵的提示方法未必优于简单方法。例如,单属性提示(single-attr)在成本降低 37% 的情况下,性能与多属性方法相近。
结论与意义:LLM 为 ER 提供了一种领域无关的解决方案,但提示设计需权衡成本与性能;简单方法在特定假设下可高效工作。

研究背景与动机

学术/应用场景与痛点:ER 广泛应用于医疗、电商等领域,但传统方法依赖领域专家进行特征工程和规则设计,成本高且泛化性差。
主流路线与局限:

  • 机器学习方法:使用 SVM、决策树等分类器,需标注数据和特征工程。
  • 深度学习方法:如 BERT,自动学习表示但仍需训练数据。
  • 规则方法:基于相似度阈值和预定义规则,依赖专家知识,难以优化。

代表工作与局限:

方法类型优点不足
机器学习可学习复杂模式需标注数据、特征工程
深度学习自动特征学习计算开销大、需训练数据
规则方法无需训练数据规则设计繁琐、泛化性差

问题定义(形式化)

输入:两个实体集合 E1E_1E1E2E_2E2(或单个集合 EEE),每个实体 eee 表示为 (id,Aid)(id, A_{id})(id,Aid),其中 AidA_{id}Aid 是属性键值对字典。
输出:所有匹配的实体对 (ei,ej)(e_i, e_j)(ei,ej)ei∈E1e_i \in E_1eiE1, ej∈E2e_j \in E_2ejE2),即重复项。
目标函数:最大化 F1 分数(精确率和召回率的调和平均)。
评测目标:使用精确率、召回率、F1 分数评估性能,成本通过 OpenAI API 的 token 消耗计算。

创新点

  1. 系统化提示工程评估:首次针对无监督 ER 任务,系统比较六种提示方法(包括单属性、多属性、JSON 结构、相似度评分、少样本)的性能和成本。
  2. 成本-性能权衡分析:证明简单提示(如单属性)在成本显著降低(37%)的情况下,性能与复杂方法相当,挑战了“更复杂提示必然更好”的假设。
  3. 一致性研究:通过统计检验(如 t-test)和混淆矩阵分析不同提示方法输出的一致性,发现方法间在重复项上存在显著分歧。

方法与核心思路

在这里插入图片描述
这是一个典型的ER工作流程的说明性示例,但使用LLM作为相似性(或“匹配”)函数。每个实体集合代表一个结构化的ER数据集,各个实体使用彩色方框表示。如第3节中所解释的,首先应用分块来将相似的实体聚类成块,以减少比较所有实体对的二次复杂性。只有共享块的实体被配对并提交给LLM,以做出它们是否匹配(是)或不匹配(否)的最终决定。

整体框架

研究采用标准 ER 工作流,但使用 LLM(GPT-3.5)作为相似性函数。工作流包括:

  1. 阻塞(Blocking):减少实体对比较数量(本研究假设完美阻塞,直接使用标注对)。
  2. 相似性计算:通过提示工程让 LLM 判断实体对是否匹配。
实体集合 E1
阻塞
实体集合 E2
候选对集合
LLM 相似性函数
匹配决策

步骤分解

  1. 构建提示模板:包含三个核心组件——候选对、ER 指令、输出格式。
  2. 设计提示模式:通过修改组件生成六种模式(见下文)。
  3. 调用 LLM:发送提示,解析返回的决策或相似度。
  4. 后处理:对于相似度模式(multi-sim),选择最优阈值 θ\thetaθ 最大化 F1。
  5. 评估:计算精确率、召回率、F1 和成本。

模块与交互

  • 候选对表示模块:处理实体属性(单属性、多属性拼接、JSON 结构化)。
  • 指令模块:控制 LLM 行为(直接决策、生成相似度、添加角色描述)。
  • 示例模块(仅少样本模式):注入标注示例引导 LLM。
  • 输出解析模块:提取 LLM 返回的决策或相似度。

公式与符号

核心评估公式:

Precision=∣TP∣∣TP∣+∣FP∣ \text{Precision} = \frac{|\text{TP}|}{|\text{TP}| + |\text{FP}|} Precision=TP+FPTP

Recall=∣TP∣∣TP∣+∣FN∣ \text{Recall} = \frac{|\text{TP}|}{|\text{TP}| + |\text{FN}|} Recall=TP+FNTP

F1=2×Precision×RecallPrecision+Recall \text{F1} = \frac{2 \times \text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} F1=Precision+Recall2×Precision×Recall

其中 TP、FP、FN 分别表示真阳性、假阳性、假阴性。

伪代码

Input: 实体对集合 P, 提示模式 M
Output: 预测标签列表 L
for each pair (e_i, e_j) in P:prompt = construct_prompt(e_i, e_j, M)  // 根据模式构建提示response = call_gpt3.5(prompt)          // 调用 LLMif M == "multi-sim":score = extract_similarity(response) // 提取相似度else:label = extract_decision(response)   // 提取决策L.append(label)
if M == "multi-sim":θ = find_optimal_threshold(P_scores)    // 选择最大化 F1 的阈值L = [1 if score >= θ else 0 for score in P_scores]
return L

伪代码描述:该流程遍历所有实体对,根据提示模式构建提示并调用 GPT-3.5;对于相似度模式,先提取分数再通过阈值二值化;其他模式直接提取决策标签。

复杂度分析

  • 时间复杂度:O(∣P∣×t)O(|P| \times t)O(P×t),其中 ∣P∣|P|P 是实体对数量,ttt 是 LLM 响应时间(常数)。
  • 空间复杂度:O(∣P∣)O(|P|)O(P) 存储结果。
  • 资源开销:成本由 token 数量决定,多属性提示比单属性昂贵 37%。

关键设计选择

  • 使用预训练 LLM:无需微调,利用先验知识处理跨领域 ER。
  • 强调成本效率:针对工业级 ER 需处理百万对实体,简单提示可显著降低成本。
  • 结构化 JSON 实验:假设机器可读格式提升性能,但结果相反,说明 LLM 更适应自然语言。

实验设置

数据集:

  1. WDC Computers:1,100 对(300 重复),7 个属性。
  2. Amazon-Google Products (AG):11,460 对(1,166 重复),3 个属性(含文本描述)。
    对比基线:六种提示方法(无外部基线,内部比较)。
    评价指标:精确率、召回率、F1(定义见公式),成本(美元)。
    实现细节:
  • 框架:OpenAI GPT-3.5 API。
  • 硬件:未说明。
  • 超参数:未说明(如温度)。
  • 随机性:少样本示例随机选择,但种子未说明。

实验结果与分析

主结果:下表汇总两种数据集上六种方法的性能(F1)和成本(美元),最佳性能加粗:

提示模式WDC F1WDC 成本AG F1AG 成本
multi-attr0.91$3.040.87$0.93
single-attr0.94$2.190.81$0.59
multi-json0.81$3.230.69$0.99
few-shot0.96$3.750.87$1.36
multi-sim0.71$3.110.95$0.95
no-persona0.97$2.010.71$0.68

关键发现:

  • 单属性提示:在 WDC 上 F1 最高(0.94),成本降低 37%;在 AG 上 F1 略降(0.81 vs 0.87)。
  • JSON 格式有害:multi-json 在两组数据上 F1 均下降(WDC: 0.91→0.81, AG: 0.87→0.69)。
  • 相似度评分不稳定:multi-sim 在 AG 上表现最佳(0.95),但在 WDC 上最差(0.71)。
  • 角色描述重要性:no-persona(无角色)在 AG 上性能显著下降(F1=0.71 vs 0.87)。

消融实验:通过对比 multi-attr(基线)、single-attr(减属性)、no-persona(减角色)进行隐含消融,显示角色和属性选择的影响。
统计显著性:t-test 表明 no-persona 与其他方法在多数情况下差异显著(p < 0.05)。
一致性分析:表 4 和表 5 显示,方法间在重复项上分歧较大(如 multi-json 误判 46% 的 multi-sim 正确对)。

误差分析与失败案例

错误类别:

  1. 技术术语混淆:如 RAM 通道数(Quad vs Dual)和时序格式(CL16 vs 16-16-16-19)导致误判。
  2. 模型编号歧义:细微差异(如 SDCFXPS-128GB-X46 vs SDCFXPS-128GB)导致幻觉(LLM 错误声称编号相同)。
  3. 信息过载:多属性提示有时引入噪声(如测试速度 2800MHz 与 2400MHz 冲突)。
    边界条件:LLM 在“简单”对上稳健(明显匹配/不匹配),但在细节差异上表现不佳。

复现性清单

代码/数据:数据通过 Google Drive 链接公开(见原文 Data Availability)。
模型权重:使用 OpenAI GPT-3.5 API,非开源模型。
环境与依赖:未说明。
运行命令:未说明。
许可证:未说明。

结论与未来工作

结论:GPT-3.5 可作为无监督 ER 的可行方案,但提示设计需谨慎;简单方法常更经济。
未来工作:

  • 探索 LLM 用于阻塞(blocking)步骤。
  • 研究更高效的提示策略(如动态属性选择)。
  • 开源数据促进进一步研究。

注:部分细节(如超参数、代码环境)未在原文中说明,以“未说明”标注。

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

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

相关文章

【XR技术概念科普】什么是注视点渲染(Foveated Rendering)?为什么Vision Pro离不开它?

一、前言2023 年&#xff0c;苹果推出了 Vision Pro 头显&#xff0c;把“空间计算”概念推向大众。与以往的 XR 设备不同&#xff0c;Vision Pro 强调高分辨率、真实感与沉浸感。然而&#xff0c;这种体验背后隐藏着一个巨大的技术挑战&#xff1a;如何在有限的计算与能耗条件…

Qt 系统相关 - 1

虽然 Qt 是跨平台的 C 开发框架&#xff0c;Qt 有很多能力其实是操作系统提供的&#xff0c;只不过 Qt 封装了系统的 API程序时运行在操作系统上的&#xff0c;需要系统给我们提供支撑&#xff01;事件文件操作多线程编程网络编程多媒体&#xff08;音频&#xff0c;视频&#…

“12306”有多牛逼?从架构师的角度详细的告诉你

12306铁路票务系统架构深度解析 &#x1f4da; 目录 系统概述业务特点与技术挑战整体架构设计核心技术架构高并发处理策略数据存储与管理缓存体系设计分布式系统架构安全防护体系性能优化策略监控与运维技术演进历程总结与展望 每到春节、国庆这种全民迁徙的时刻&#xff0c;…

数据采集机器人哪家好?2025 年实测推荐:千里聆 RPA 凭什么成企业首选?

在数字化转型加速的今天&#xff0c;数据采集已成为企业运营的核心环节&#xff0c;数据采集机器人正在重构企业的效率边界。2025 年中国 RPA 市场排名显示&#xff0c;泛微旗下的千里聆 RPA 已跻身行业前五&#xff0c;成为中大型国央企的首选品牌。本文将通过三维评估体系&am…

基础crud项目(前端部分+总结)

本人根据自己对前端微不足道的理解和 AI 老师的指导下&#xff0c;艰难地完成了基础crud代码的全栈开发&#xff0c;算是自己的第一个 Java 项目&#xff0c;对此做个简单总结。 后端部分 在前后端分离开发中&#xff0c;前端负责页面交互与数据展示&#xff0c;后端提供接口支…

MATLAB矩阵及其运算(二)函数

函数分为MATLAB内置函数及用户自定义函数&#xff0c;用户可以直接调用内置函数进行数据处理。内置函数的使用函数由三部分组成&#xff1a;名称、输入和输出。内置函数示例&#xff1a;单输入单输出函数&#xff1a;sqrt(x)&#xff1b;单输入多输出函数&#xff1a;size(x)&a…

自动化运维-ansible中对于大项目的管理

自动化运维-ansible中对于大项目的管理 一、引用主机清单 在Playbook中引用主机时&#xff0c;hosts 字段指定的目标必须与Ansible主机清单中定义的标识符完全匹配。如果清单中配置的是主机名&#xff0c;则在Playbook中使用IP地址或其他别名将无法匹配&#xff0c;导致任务被跳…

59_基于深度学习的麦穗计数统计系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)

目录 项目介绍&#x1f3af; 功能展示&#x1f31f; 一、环境安装&#x1f386; 环境配置说明&#x1f4d8; 安装指南说明&#x1f3a5; 环境安装教学视频 &#x1f31f; 二、数据集介绍&#x1f31f; 三、系统环境&#xff08;框架/依赖库&#xff09;说明&#x1f9f1; 系统环…

面试问题详解十六:Qt 内存管理机制

在 Qt 开发过程中&#xff0c;很多初学者&#xff08;包括不少有经验的 C 程序员&#xff09;经常会产生这样的疑问&#xff1a;“我在 Qt 中 new 出来的控件好像都没有 delete&#xff0c;那内存不会泄漏吗&#xff1f;”比如下面这段代码&#xff1a; void Widget::createLef…

Pycharm 试用

Ubuntu 重置Pycharm试用期限&#xff08;30 天&#xff09; 先关闭Pycharm删除系统缓存 rm -rf ~/.config/JetBrains/ && rm -rf ~/.local/share/JetBrains/ && rm -rf ~/.cache/JetBrains/删除已经安装的 Pycharm 软件运行目录去官网下载新的 就行了

C++ Qt 开发核心知识

Qt 框架概述Qt 是一个跨平台的 C 应用程序开发框架&#xff0c;广泛用于开发图形用户界面程序。其核心特性包括跨平台能力、丰富的功能模块和强大的工具集。核心概念与机制元对象系统Qt 扩展了标准 C&#xff0c;通过元对象系统提供信号与槽机制、运行时类型信息和动态属性系统…

net9 aspose.cell 自定义公式AbstractCalculationEngine,带超链接excel转html后背景色丢失

AbstractCalculationEngine 是 Aspose.Cells 中一个强大的抽象类&#xff0c;允许您自定义公式计算逻辑。当您需要覆盖默认计算行为或实现自定义函数时非常有用。直接上代码1. 创建自定义计算引擎using Aspose.Cells; using System;// 创建自定义计算引擎 public class CustomC…

如何监控员工的电脑?7款实用的员工电脑管理软件,探索高效管理捷径!

当销售团队在淘宝刷单、设计师用公司电脑挖矿、程序员频繁访问代码托管网站时&#xff0c;企业损失的不仅是带宽——低效、泄密、合规风险正成为隐形利润杀手。 传统管理依赖“人盯人”或抽查日志&#xff0c;但面对分布式办公与远程协作趋势&#xff0c;这些方法早已力不从心…

机器视觉软件--VisionPro、Visual Master,Halcon 和 OpenCV 的学习路线

Halcon 和 OpenCV区别 Halcon 和 OpenCV 都是计算机视觉领域的重要工具&#xff0c;但它们的设计理念、功能侧重和适用场景有显著不同。下面这个表格汇总了它们的核心区别&#xff0c;方便你快速了解&#xff1a; 开发模式与体验​​&#xff1a;Halcon 配备了强大的​​图形化…

算法-根据前序+中序遍历打印树的右视图

题目请根据二叉树的前序遍历&#xff0c;中序遍历恢复二叉树&#xff0c;并打印出二叉树的右视图数据范围&#xff1a; 0≤n≤100000≤n≤10000 要求&#xff1a; 空间复杂度 O(n)O(n)&#xff0c;时间复杂度 O(n)O(n)如输入[1,2,4,5,3],[4,2,5,1,3]时&#xff0c;通过前序遍历…

Kafka面试精讲 Day 7:消息序列化与压缩策略

【Kafka面试精讲 Day 7】消息序列化与压缩策略 在Kafka的高性能消息系统中&#xff0c;消息序列化与压缩是影响吞吐量、延迟和网络开销的核心环节。作为“Kafka面试精讲”系列的第7天&#xff0c;本文聚焦于这一关键主题&#xff0c;深入剖析其原理、实现方式、配置策略及常见…

Xterminal软件下载_Xterminal ssh远程链接工具下载__Xterminal安装包 网盘下载_Xterminal ssh远程链接工具安装包

Xterminal 作为一款国产 SSH 工具&#xff0c;专为开发人员量身打造。它支持 SSH 和 Telnet 协议连接远程服务器与虚拟机&#xff0c;无论是进行代码部署&#xff0c;还是服务器运维&#xff0c;都能轻松胜任。软件界面采用极简设计&#xff0c;黑色背景搭配白色文字&#xff0…

Lua > 洛谷

Lua > 洛谷P1000 超级玛丽游戏P1001 AB ProblemP1008 [NOIP 1998 普及组] 三连击P1035 [NOIP 2002 普及组] 级数求和P1046 [NOIP 2005 普及组] 陶陶摘苹果P1047 [NOIP 2005 普及组] 校门外的树P1085 [NOIP 2004 普及组] 不高兴的津津P1089 [NOIP 2004 提高组] 津津的储蓄计划…

小企业环境-火山方舟和扣子

背景说明 并不是说应该怎么办&#xff0c;而是基本配置有这些可以进行使用&#xff0c;具体不同企业使用的时候肯定要个性化配置。 使用了火山方舟和扣子 火山方舟 应用实验室列表 简单使用了提示词的功能&#xff0c;后端服务ARK_API_KEY 应用ID 来对应请求发送http请求…

QT-事件

Qt事件 除了信号和槽通信机制外&#xff0c;Qt中还提供了事件处理机制实现与用户的交互和对象间的通信。Qt捕获底层操作系统消息&#xff0c;进行封装之后转换为Qt事件&#xff0c;事件处理后才发出信号。 一、事件概述Qt中事件是程序内部或外部发生的动作。比如程序外部&#…