当前位置: 代码迷 >> 综合 >> 对话系统 | (5)《Task-oriented Dialogue System for Automatic Diagnosis》
  详细解决方案

对话系统 | (5)《Task-oriented Dialogue System for Automatic Diagnosis》

热度:42   发布时间:2024-01-15 00:04:46.0

本篇博客分享一篇来自ACL2018的论文《Task-oriented Dialogue System for Automatic Diagnosis》

文章目录

      • 1. Abstract
      • 2. Introduction
      • 3. Model

1. Abstract

本文首次构建了一个任务型对话系统来做医疗自动诊断。该系统可以通过和病人进行对话,在病人self-reports的基础上,收集一些额外的症状,来做自动诊断,提高诊断的准确率。此外,本文通过提取在线医学平台上病人self-reports和病人与医生对话中的症状,构建了第一个该领域数据集。

2. Introduction

基于electronic health records(EHRs)进行自动诊断近年来收到了广泛关注。一些机器学习的方法在一些症状和疾病的识别上取得了一些进步,但是现有模型大多针对特定类型的疾病,且很难将模型从一种疾病迁移到另一种疾病上。

EHRs包含了诊断测试、个人信息、医学影像以及生命体征等信息。它需要通过临床诊断程序进行收集,包括医生与病人之间的交互和一些复杂的医学测试。因此,为不同的疾病收集EHRs代价很高。如何自动收集病人信息是自动诊断领域的一大挑战。

任务型对话系统在订票、在线购物和查找餐馆等多个领域有广泛的应用。本文认为将任务型对话系统应用在医学领域可以减少从病人那收集数据的代价。

应用任务型对话系统做自动诊断有两大挑战。一是缺乏标注的医学对话数据集;二是没有可用的对话系统框架来做疾病识别。因此,本文首次构建了一个对话系统利用自动收集的信息来做医疗领域的自动诊断。

3. Model

本文标注的医学对话数据集包括两部分,病人的self-report以及病人与医生之间的对话。
在这里插入图片描述
任务型对话系统通常包含自然语言理解(NLU)、对话管理(DM)和自然语言生成(NLG)三个组件。NLU包括用户意图检测和语义槽填充;DM包括对话状态追踪和对话策略学习;给定系统动作,NLG生成自然语言句子。

本文NLU和NLG使用模版实现,重点在于对话管理。此外,还设计了一个用户模拟器于对话系统进行交互。对话开始后,用户模拟器采样一个用户目标(如下图所示),agent试图为用户做自动诊断。系统在每个时间步,通过最大化长期reward,学习选择一个最好的回复动作。
在这里插入图片描述
对话策略学习
把对话系统转化为马尔可夫决策过程,通过强化学习训练对话策略。本文的对话策略使用DQN来进行参数化(并使用了experience replay trick),输入是对话状态 s t s_t st?,输出是在所有动作a上的分布 Q ( s t , a ; θ ) Q(s_t,a;\theta) Q(st?,a;θ).

  相关解决方案