The Schema-Guided Dialogue Dataset 的数据集卡片
数据集概要
Schema-Guided Dialogue 数据集(SGD)是为Eights Dialogue Systems Technology Challenge(dstc8)的 Dialogue State Tracking 任务而开发的。SGD 数据集包含超过18K个注释的多领域任务导向对话,涉及人类与虚拟助手之间的交互。这些对话涉及与17个领域的服务和API的交互,涵盖银行、事件、媒体、日历、旅行和天气等多个领域。对于这些大多数领域,SGD 数据集包含多个不同的API,其中许多API具有重叠的功能但具有不同的接口,这反映了常见的现实场景。
支持的任务和榜单
该数据集旨在为大规模虚拟助手的意图预测、槽位填充、状态追踪(即估计用户目标)和语言生成等任务提供有效的测试平台:
- 生成对话建模或对话建模:对话文本可用于训练序列模型。在此任务中,通常使用词汇化的指标(
BLEU
),信息传递速率和请求成功率来评估性能。
- 意图状态追踪,一个多类分类任务:预测对话中用户一方的信念状态,性能通过(
F1
)来评估。
- 动作预测,一种解析任务:将话语解析为系统要使用的对话行为。通常报告(
F1
)。
语言
数据集中的文本为英文(en)。
数据集结构
数据实例
- dialogues配置(默认):每个对话被表示为一个轮次序列,每个轮次包含用户或系统话语。每个轮次的注释被分组为帧,每个帧对应一个服务。用户轮次的注释包括活动意图、对话状态和轮次中提到的不同槽位值的范围。对于系统轮次,我们有表示系统话语语义的系统行为。每个系统行为使用带有可选参数的对话行为来表示
- schema配置:除了对话之外,对于数据集中使用的每个服务,提供其所公开的接口的规范化表示作为模式。模式包含了服务的名称、服务支持的任务(意图)列表和服务使用的实体(槽位)的属性。模式还包含可用于基于模式条件预测的模型的服务、意图和槽位的自然语言描述
数据字段
每个对话实例有以下字段:
- dialogue_id:对话的唯一标识符。
- services:对话中存在的服务列表。
- turns:注释的系统或用户话语的列表。每个轮次包含以下字段:
- speaker:轮次的说话者,可以是USER或SYSTEM。
- utterance:包含自然语言话语的字符串。
- frames:帧的列表,每个帧包含对单个服务的注释,包含以下字段:
- service:与该帧对应的服务的名称。下面的字段中使用的槽位和意图取自此服务的模式。
- slots:话语中的槽位跨度的列表,仅对非类别槽位提供。每个槽位跨度包含以下字段:
- slot:槽位的名称。
- start:对应于槽位值在话语中开始的字符索引。
- exclusive_end:对应于话语中槽位值后面的最后一个字符的索引。
- actions:对应于系统的行为的列表。每个行为具有以下字段:
- act:行为的类型。
- slot:(可选)某些行为的槽位参数。
- values:(可选)赋给槽位的值的列表。如果values列表非空,则必须存在槽位。
- canonical_values:(可选)服务使用的槽位值的规范化形式。它是一个与values长度相同的字符串列表。
- service_call:(仅用于系统轮次,可选)发送给服务的请求。它包含以下字段:
- method:正在执行的服务或API的意图或函数的名称。
- parameters:长度相同的两个列表的对:parameter_slot_name包含槽位名称,parameter_canonical_value包含相应的规范化值。
- service_results:(仅用于系统轮次,可选)包含从服务获得的结果的实体列表。它仅适用于进行服务调用的轮次。每个实体表示为两个长度相同的列表对:service_slot_name包含槽位名称,service_canonical_value包含相应的规范化值。
- state:(仅用于用户轮次)对应于服务的对话状态。它包含以下字段:
- active_intent:当前由系统满足的帧的服务对应的意图。如果没有意图处于活动状态,则采用“NONE”值。
- requested_slots:用户在当前轮次中请求的槽位的列表。
- slot_values:两个长度相同的列表的对:slot_name包含槽位名称,slot_value_list包含相应的字符串列表。对于类别槽位,此列表包含分配给槽位的单个值。对于非类别槽位,此列表中的所有值都是彼此的口语变体,并且是等效的(例如,“下午6点”,“晚上6点”等)。