Zero-shot、One-shot 和 Few-shot
机器学习中描述模型在不同数据量下完成任务能力的术语,核心区别在于任务执行时提供的示例数量和是否需要额外训练
1. Zero-shot(零样本学习)
- **定义**:模型在没有任何任务相关示例的情况下,直接根据预训练知识完成任务。
- **特点**:
- 依赖模型预训练时学到的泛化能力。
- 无需任何特定任务的标注数据。
- 任务通过自然语言描述(Prompt)传达给模型。
- **示例**:
```text
用户输入:将句子翻译成德语:"Hello, how are you?"
模型输出(无需示例):"Hallo, wie geht es dir?"
- **适用场景**:
- 任务简单、定义明确(如翻译、分类)。
- 缺乏标注数据,但信任模型的预训练知识。
2. One-shot(单样本学习)
- **定义**:模型在仅提供一个任务示例后,参考该示例完成任务。
- **特点**:
- 通过单例演示任务格式和预期输出。
- 帮助模型快速理解任务模式。
- **示例**:
```text
用户输入(示例):
输入:"这部电影很棒!" → 情感:正面
输入:"这个产品很糟糕。" → 情感:?
模型输出(参考示例):负面
```
适用场景:
- 任务有一定复杂性,但一个示例足以说明规则。
- 需要平衡效果与数据收集成本。
3. Few-shot(少样本学习)
- **定义**:模型在**少量示例(通常3-5个)**的引导下完成任务。
- **特点**:
- 提供更多上下文,帮助模型捕捉任务规律。
- 显著提升复杂任务的准确性。
- **示例**:
text
用户输入(示例):
输入:"这家餐厅服务很好,但食物一般。"
→ 情感:中性
输入:"虽然贵,但体验超值!"
→ 情感:正面
输入:"风景美,但人太多了。"
→ 情感:中性
输入:"剧本无聊,演员演技差。" → 情感:?
模型输出(参考多例):负面
适用场景:
任务复杂或存在隐含规则(如情感分析、逻辑推理)
需要更高准确率,且有少量标注数据可用
#有意思的 prompt#