Large Language Models are Contrastive Reasoners

本文研究了对比提示(CP)如何增强大型语言模型(LLM)的复杂推理能力。通过在LLM作答前提供正确和错误答案,实验显示CP能显著提高算术、常识和符号推理任务的性能,例如GPT-4模型在GSM8K和AQUA-RAT任务上的准确率分别提升至88.8%和62.2%。此方法可与现有提示技术无缝集成,并在多数任务中超越零样本和小样本对比推理解法。

本文是LLM系列文章,针对《Large Language Models are Contrastive Reasoners》的翻译。

摘要

提示方法在增强预训练的大型语言模型(LLM)的能力方面发挥着至关重要的作用。我们探讨了对比提示(CP)如何显著提高大型语言模型执行复杂推理的能力。我们通过在LLM提供答案之前简单地添加“让我们给出正确和错误的答案”来证明LLM是不错的对比推理机。在各种大型语言模型上的实验表明,零样本对比提示提高了一系列算术、常识和符号推理任务的性能,而无需任何手工制作的小样本示例,例如使用最先进的GPT-4模型,将GSM8K和AQUA-RAT的准确率从35.9%提高到88.8%,将41.3%提高到62.2%。我们的方法不仅在大多数算术和常识性推理任务中超越了零样本CoT和小样本CoT,而且可以与现有的提示方法无缝集成,与现有的方法相比,得到了改进或可比的结果。我们的代码可在以下GitHub存储库中获得:https://github.com/yao8839836/cp

1 引言

2 相关工作

3 对比提示

4 实验

5 局限性和未来工作

6 结论

我们提出了一种基于模板的对比推理提示方法。定量和定性结果表明,Zero-ShotCoT在各种推理任务中都表现出显著的改进。我们的方法可以通过在LLM提供答案之前加入触发句,与任何提示技术无缝集成。CP不仅在大多数算术和常识性推理任务

### 关于Contrastive Language-Image Pre-training (CLIP) 的论文下载与阅读 #### CLIP的核心概念 CLIP(Contrastive Language-Image Pre-training)是一种基于对比学习的多模态模型,其主要目标是通过大量的文本-图像对来训练一个能够理解视觉和语言之间关系的通用表示[^3]。该模型利用对比学习的优势,在预训练过程中无需精确预测某个特定的文本描述,而是专注于判断哪些文本更可能与给定的图像相关联[^5]。 #### 论文获取途径 CLIP的相关研究由OpenAI团队完成,原始论文名为《Learning Transferable Visual Models From Natural Language Supervision》。可以通过以下几种方式进行下载: 1. **官方链接**: OpenAI通常会公开发布其研究成果,可以直接访问OpenAI官网并搜索“CLIP”或“Learning Transferable Visual Models From Natural Language Supervision”,找到PDF版本进行下载。 2. **学术资源平台**: 使用Google Scholar或其他学术搜索引擎输入关键词“Contrastive Language-Image Pre-training”或“CLIP paper”。这些平台上可能会提供免费的PDF下载选项。 3. **第三方存储库**: 如果无法直接从官方网站获得,则可以尝试在arXiv上查找是否有上传的版本。大多数机器学习领域的最新进展都会第一时间发布在此处。 #### 阅读建议 为了更好地理解和吸收CLIP的内容,推荐按照如下结构展开阅读: - **摘要部分**:快速了解整个工作的背景意义以及取得的主要成果。 - **方法论章节**:重点掌握如何构建损失函数实现对比学习机制;具体到正样本负样例的选择策略等方面[^4]。 - **实验分析**:注意作者是如何验证零样本迁移能力的有效性的,并且观察跨多种下游任务的表现情况。 以下是Python代码片段用于加载已发布的CLIP模型作为示例: ```python import clip import torch device = "cuda" if torch.cuda.is_available() else "cpu" model, preprocess = clip.load("ViT-B/32", device=device) image = preprocess(Image.open("example_image.jpg")).unsqueeze(0).to(device) text = clip.tokenize(["a diagram", "a dog", "a cat"]).to(device) with torch.no_grad(): image_features = model.encode_image(image) text_features = model.encode_text(text) logits_per_image, logits_per_text = model(image, text) probs = logits_per_image.softmax(dim=-1).cpu().numpy() print(f"Label probs: {probs}") ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UnknownBody

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值