论文笔记 - Memory-assisted prompt editing to improve GPT-3 after deployment
1. Information
Title: Memory-assisted prompt editing to improve
GPT-3 after deployment
Link: MemPrompt Paper
Source: Empirical Methods in Natural Language
Processing (EMNLP)
Date: 2022.01.16
2. Summary
MemPrompt 是一种用于增强 GPT-3 部署后性能的新方法,旨在通过用户反馈的记忆模块改进模型输出而无需重新训练。核心思想是利用用户提供的交互式反馈,通过动态调整提示内容,解决模型误解用户意图的问题。在四种任务(词汇关系、单词重组、高级伦理推理两种变体)中,MemPrompt 显著提高了 GPT-3 的任务准确率。
3. Background
现有的大规模语言模型(如 GPT-3)虽然具有强大的生成能力,但仍会因缺乏常识而导致误解用户意图。例如,GPT-3 可能将 "What word is similar to good?" 理解为寻找同音词,而用户实际想要寻找同义词。传统解决方案如重新训练模型成本高昂,因此需要一种低成本的后部署优化方法。
MemPrompt 利用递归记忆理论和用户反馈,动态调整提示以避免重复错误,从而实现模型行为的低成本改进。
4. Research Objective
目标是通过交互式用户反馈提高 GPT-3 在不同任务中的表现,具体包括:
- 利用记忆模块存储用户反馈,并将其应用于新问题。
- 动态更新提示以改进模型对用户意图的理解,而不需要重新训练模型。
5. Method
MemPrompt 方法包括以下关键组件:
- 内存 (M):一个不断增长的键值对表,其中键是误解的问题,值是用户提供的澄清反馈。
- 查找函数 (M(x)):一个函数,将新查询与内存中的所有键进行匹配(使用余弦相似度),以找到类似的问题。
- 组合器 (C(x, M(x))):一个门控函数,如果相关,则将检索到的反馈与新查询连接起来。
- 少样本提示:该方法使用 GPT-3 的少样本提示,其中提示由几个输入输出示例组成,后跟新查询。提示通过从内存中检索到的相关反馈进行丰富。
系统的工作原理如下:
- 给定一个新查询 \(x\),模型生成一个输出 \(y\) 和一个句子 \(u\),表达其对任务的理解。
- 用户可以对 \(u\) 提供反馈 \(fb\),该反馈存储在内存中。
- 对于后续查询,系统从内存中检索相关反馈,并将其附加到提示中,帮助模型避免类似的误解。
6. Conclusion
MemPrompt 提供了一种无需重新训练的低成本优化方法,通过记忆模块和用户反馈显著提高了 GPT-3 的性能。这种方法在实际部署中具有广阔应用前景,同时为交互式模型调试和动态提示优化提供了新思路。
7. Notes
7.1 举例说明 MenPrompt 的工作流程。
1. 模型初始错误与用户反馈
用户输入问题:
1
What word is similar to "good"?
- 输入 \(x_1\):
What word is similar to "good"?
GPT-3 的初始错误回答:
- 输出 \(y_1\):
The homophone of "good" is: wood.
- 任务理解 \(u_1\):
The question is asking for a homophone.
用户提供反馈:
- \(fb_1\):
"Similar to" means "with similar meaning."
处理:此时,用户发现 GPT-3 错误地理解了任务(认为需要找“同音词”),并给出明确的反馈 \(fb_1\),该反馈表明问题实际是找“同义词”
2. 记忆模块更新
存储用户反馈:
- 记忆模块 \(M\) 中记录以下键值对: \[ M = \{ x_1 : fb_1 \} \] 即,问题 \(x_1\)(用户输入的问题)作为键,反馈 \(fb_1\) 作为值存储到记忆中。
3. 第二次用户输入(反馈检索)
新问题输入:用户问:
1
What word is similar to "surprised"?
- 输入 \(x_2\):
What word is similar to "surprised"?
检索相关反馈:
- 检索模块 \(M(x_2)\) 在记忆中查找与 \(x_2\) 相似的问题。
- 检索到的反馈:
"Similar to" means "with similar meaning."
4. 动态提示更新
动态拼接提示:将检索到的反馈 \(fb_1\) 附加到新问题中,构造新的提示: \[ p_{new} = x_2 + fb_1 \] 即,新的提示变为:
1
2
What word is similar to "surprised"?
Similar to means with similar meaning.GPT-3 输出改进:
- 使用更新后的提示,GPT-3 正确回答:
The synonym of "surprised" is: amazed.