论文名称:Understanding Medical Conversations with Scattered Keyword Attention and Weak Supervision from Responses

论文作者:施晓明,胡海峰,车万翔,孙钟前,刘挺,黄俊洲
原创作者:施晓明
下载链接:http://ir.hit.edu.cn/~car/papers/AAAI2020-Shi-medconv.pdf

转载来自:哈工大SCIR

(本工作完成于腾讯公司实习期间)

1. 医疗对话槽填充任务简介

语音识别和自然语言处理的最新进展促进了口语对话系统(Spoken Dialogue System)作为信息访问自然接口的广泛应用,其中典型的应用包括自动化呼叫中心及智能设备的虚拟助理。口语对话系统中的一个关键组成部分是口语理解(Spoken Language Understanding),旨在将自然语言解析为计算机能够有效处理的逻辑语义表示。槽填充(Slot Filling)是其中一个重要的模块,通常被视为一个结构化预测问题,其中有监督学习算法,特别是递归神经网络(RNN)获得了比较好的效果。传统的槽填充是根据预先设定好的领域词对用户问句进行序列标注,标注其中领域相关的核心词,从而从预测的标注中提取出结构化的语义表示。

在医疗领域,用自然语言与患者交流以询问症状、病史、个人信息等的对话系统也吸引了越来越多的关注[1][2]。本工作将研究重点放在医疗对话系统中的槽填充任务上。医疗对话槽填充旨在将存在口语表述和医学实体的对话解析为逻辑语义表示,如图1所示。

图1 医疗对话槽填充的一个例子

2. 任务挑战

与传统领域的槽填充任务相比,医疗对话槽填充主要面临两个挑战。一是医学对话数据不对齐,即结构化语义表示中槽值在原始问句中没有显式地出现,造成不能以传统的序列标注任务来建模。不对齐的问题主要来自两个方面:患者的口语表达和分散的关键词,具体地说,绝大多数患者不通医术,患者的病情陈述是用口语表述来描述的,表述用词与医学专业术语存在差异,同时患者与患者的表述之间也存在表达习惯和方言上的差异;第二类来源是患者总是以无序的顺序陈述自己的健康状况,从而分散了单一医学术语。如图2中的例子,“腹痛”在用户陈述中被以“肚子”和“痛”这样的口语话表述方式分散表示。

图2 医疗对话数据与标注之间不对齐现象的一个例子

第二个挑战是精标注的医疗对话数据难获取。医疗对话数据标注需要具备专业医学知识的标注人员,这些标注人员必须具备专业的医学知识,导致注释成本高。

3. 方法介绍

由于医疗对话数据和标注不对齐的问题,不能以传统的序列标注任务来建模。因此,我们将该任务定义为多标签分类问题,其中输入为医疗对话数据,输出为该语句的语义结构化表示。此外,为了更好地识别患者口语化表述中的不连续关键词,我们使用了关键词注意力机制,旨在使得模型对医学关键词更加敏感。

面对数据标注成本高的挑战,我们利用大量无标注数据,将回复作为问句的弱标注信息,从而减少对于精标注数据的需求。具体来说,在线医学社区中存在着大量的医学对话,医生总是在他们的回复中用专业化的表达来复述病人的症状,这很容易通过字符串匹配医学知识库中的医学概念来获得医学术语。如图2中的示例,医生提到了槽值“腹痛”,而该术语正是患者陈述的病症。因此,基于医生回复中的医学术语与病人的询问密切相关的直觉,我们提出了一种新的方法,将医生回复中的医学实体作为模型预训练的目标,然后再在标注良好的数据上进行精调。

3.1 关键词注意力机制

本节将介绍关键词注意力机制。关键词注意力机制旨在识别与槽填充任务高度相关的词。模型如图3所示。

图3 关键词注意力机制示意图

为输入陈述的词向量序列, 为候选症状的词向量表示。这两种表示相互作用,以学习两者之间的相似性度量,该度量判别一个单词是否与槽值对相关,然后取最大值:,其中·表示点积,表示X中的第i个句子,表示S中的第j个元素。然后患者陈述词序列可以表示为:

3.2 患者陈述编码及分类

编码器的目的是将自然语言输入请求转换为实值向量。我们使用几类文本分类编码器对输入自然语言序列进行编码,包括TextCNN[3]、RCNN[4],TextRNN[5],DRNN[6],RegionEmbedding[7],和Star-Transformer[8]。

3.3 模型预训练与精调

我们在无标注数据集上对分类器进行预训练,这个过程中将无标注数据回复中的医学实体词作为标签。然后在小量精标注数据集中对所学习的模型进行精调。该模块如图4所示。

图4 模型预训练与精调框架图

3.3.1 弱监督数据用于预训练

医生的回答常常用正式的医学术语复述患者的症状,因此包含了与患者健康状况相关的医学术语。基于这种直觉,可以将医生的回答作为患者病情陈述的弱监督。同时,弱监督方法充分利用了未标注的数据,有助于降低标注成本。尽管使用无标注数据进行预训练可能会导致模型无法学习准确的标签,但它可以帮助模型消除大多数负面标签。在这之后,预训练得到的模型将根据标注良好的数据进行精调。

3.3.2 精标注数据用于模型精调

在上个阶段,分类模型已经学习了无标注数据的相关槽值信息(即已预训练),然后将模型训练在精标注数据上进行再训练。无标注数据预训练步骤有助于模型消除大多数负面标签,而精调步骤旨在根据精标注数据,使模型更准确地分类。

4. 实验结果及分析

4.1 实验数据

为了对任务进行更好地研究,我们从在线医疗平台上爬取了大量的医疗问诊对话,并对少量对话数据进行了标注,对于无标注数据,我们将回复与医学知识库匹配得到医学实体词。该数据集统计如表1所示。

表1 数据集统计信息

4.2 实验结果

在该数据集上我们对各分类器都进行了实验,主要结果如表2所示。我们使用10000个无标注的数据进行预训练,并使用所有标注数据进行模型精调。在表中,“A”表示添加关键词注意力机制,“WS”表示使用无标注数据。

表2 主要实验结果

将原始分类器与添加关键词注意力机制的分类器进行比较,可以发现在Micro F1和Macro F1上,添加关键词注意力机制的模型分别比原始分类器的性能提高了3.12%和3.92%。这说明关键词注意力机制可以显著提高模型的性能。此外,关键词注意力机制在Macro F1上比在Micro F1上有更大的提高。这表明关键词注意力机制可以帮助模型在频次低的标签上改进更多。此外,关键词注意力机制使模型的召回率提高了5.27%,说明关键词有助于识别测试时训练数据中看不到的口语表达。这些结果表明,对分散的医学关键词给予更多的权重是提高任务效果的有效途径。

通过对弱监督预训练分类器的性能分析,我们可以发现弱监督预训练方法对Micro F1和Macro F1分别提高了3.36%和6.78%,效果提升显著。无标注数据包含更多的低频标签,这使得Macro F1获得了更大的提升,同时,召回率也得到进一步的提高。原因可能是无标注数据包含了更多不同的口语表达,这些口语表达在标注的数据中没有出现,这导致模型可以识别在训练数据中没有看到的实例。所有这些结果表明,将医生回复作为患者病情陈述的弱监督是有效的。

图5 精标注数据对于结果的影响

我们尝试分析在固定的无标注数据时,精标注训练数据量的影响。如图5所示,红线表示经过预训练的TextCNN分类器的性能,绿线表示训练数据量分别为500、600、700、800、900的原始TextCNN分类器的性能。

结果表明:1)当标注数据量较小时,弱监督会导致更多的提升;2)无标注数据的弱监督信息总是有助于模型获得更好的性能。由此可见,医生回复中的弱监督信息是十分有用的。

5. 总结

本文针对医疗槽填充任务的两个挑战,提出了关键词注意力机制和医生回复弱监督的方案。实验表明,该方法能显著提高模型的性能。今后,我们将从回复弱监督的角度,进一步完善数据,进而尝试更多的方式来提高医疗槽填充任务的性能。

参考文献

[1] Wei, Z.; Liu, Q.; Peng, B.; Tou, H.;Chen, T.; Huang, X.; Wong, K.-F.; and Dai, X. 2018. Task-oriented dialogue system for automatic diagnosis. In Proceedings of ACL 2018,201–207.

[2] Xu, L.; Zhou, Q.; Gong, K.; Liang, X.;Tang, J.; and Lin, L. 2019. End-to-end knowledge-routed relational dialogue system for automatic diagnosis. AAAI.

[3] Lai, S.; Xu, L.; Liu, K.; and Zhao, J.2015. Recurrent convolutional neural networks for text classification. In AAAI 2015.

[4] Liu, P.; Qiu, X.; and Huang, X. 2016.Recurrent neural network for text classification with multi-task learning. arXiv preprint arXiv:1605.05101.

[5] Yin, W., and Schu ̈tze, H. 2018. Attentive convolution: Equipping cnns with rnn-style attention mechanisms. TACL 6:687–702.

[6] Wang, B. 2018. Disconnected recurrent neural networks for text categorization. In Proceedings of ACL 2018, 2311–2320.

[7] Qiao, C.; Huang, B.; Niu, G.; Li, D.;Dong, D.; He, W.; Yu, D.; and Wu, H. 2018. A new method of region embedding for text classification. In ICLR.

[8] Guo, Q.; Qiu, X.; Liu, P.; Shao, Y.;Xue, X.; and Zhang, Z. 2019. Star-transformer. In Proceedings of NAACL-HLT 2019, 1315–1325.

延伸阅读

哈工大SCIR八篇论文被AAAI-20录用

赛尔原创 | AAAI20 基于多任务自监督学习的文本顺滑研究

赛尔原创 | AAAI20 基于选择两方面信息的文档级文本内容改写

本期责任编辑:崔一鸣

本期编辑:冯梓娴


投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

【工大SCIR Lab】AAAI20 基于关键词注意力机制和回复弱监督的医疗对话槽填充研究...相关推荐

  1. 【工大SCIR】AAAI20 基于反向翻译和元学习的低资源神经语义解析

    论文名称:Neural Semantic Parsing in Low-Resource Settings with Back-Translation and Meta-Learning 论文作者:孙 ...

  2. 【工大SCIR】AAAI20 基于Goal(话题)的开放域多轮对话规划

    论文名称:Knowledge Graph Grounded Goal Planning for Open-Domain Conversation Generation 论文作者:徐俊,王海峰,牛正雨, ...

  3. Talk预告 | 腾讯AI Lab研究员童湛南京大学谈婧:基于注意力机制的视频自监督表示学习和时序动作检测

    本期为TechBeat人工智能社区第465期线上Talk! 北京时间12月22日(周四)20:00,腾讯AI Lab研究员--童湛&南京大学计算机科学与技术系硕士研究生--谈婧的Talk将准时 ...

  4. HAN:基于双层注意力机制的异质图深度神经网络

    「论文访谈间」是由 PaperWeekly 和中国中文信息学会社会媒体处理专委会(SMP)联合发起的论文报道栏目,旨在让国内优质论文得到更多关注和认可. 图神经网络是近年来图数据挖掘领域的热门研究方向 ...

  5. IJCAI 2019 | 为推荐系统生成高质量的文本解释:基于互注意力机制的多任务学习模型...

    编者按:在个性化推荐系统中,如果能在提高推荐准确性的同时生成高质量的文本解释,将更容易获得用户的"芳心".然而,现有方法通常将两者分开优化,或只优化其中一个目标.为了同时兼顾二者, ...

  6. 城市异常事件精确预测:基于交互注意力机制的时空数据预测模型

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 精确实现城市中异常事件的预测,在智能城市中智能交通以及城市公共安全的应用中起着重要的作用.为实现该目的,研究工作从以下两个重要层面对时空 ...

  7. 基于频谱注意力机制和编码解码模型的时间序列分类研究

    文章来源 浙江大学 2021年硕士论文 小论文 IEEE Spectrum Attention Mechanism for Time Series Classification 1 摘要 本文贡献 时 ...

  8. 基于自注意力机制与无锚点的仔猪姿态识别(农业工程学报)

    写在前面的话 该论文于2022年3月底投稿,9月初定稿,1次大改,小改不下10次,暑假几乎都在改论文中度过,非常感谢导师和农工编辑的耐心指导,同时感谢所有对本文作出贡献的实验室同伴,论文可在农业工程学 ...

  9. SIGIR2020|基于自注意力机制和多鉴别器的序列推荐

    Sequential Recommendation with Self-Attentive Multi-Adversarial Network https://arxiv.org/pdf/2005.1 ...

  10. 基于多头注意力机制LSTM股价预测模型

    1.多头注意力机制层的构建 class MultiHeadAttention(tf.keras.layers.Layer):def __init__(self, num_heads, d_model) ...

最新文章

  1. 微信支付报错:app没有获取微信支付权限
  2. 083_html5应用程序缓存
  3. Matlab | MATLAB编辑器:无法使用GBK编码保存文件,请改用UTF-8编码保存文件(问题解决)
  4. 【Python】Pandas中的宝藏函数-apply
  5. matlab如何使音频文件声音变大_如何制作视频课程
  6. 一个工作13年的SAP开发人员的回忆:电子科技大学2000级新生入学指南
  7. ffmpeg for android shared library
  8. CSS串联和后代选择器
  9. 10个理由告诉你为何要学Java编程?
  10. iic总线从机仲裁_I2C总线的仲裁问题
  11. java json返回null_java-JSON jsonObject.optString()返回字符串“ null”
  12. Python机器学习:逻辑回归001什么是逻辑回归
  13. 泉州海事学校计算机,泉州海事学校寝室图片、校园环境好吗?
  14. 杀鸡儆猴!苹果撤销Facebook的iOS企业证书
  15. 受够了碎片化,Salesforce决定只支持部分安卓设备
  16. 脚本录制软件python 按键精灵 tc_喜讯。tc也能录脚本了!录制鼠标键盘,tc脚本录制工具!!...
  17. “自由软件”已过时?
  18. 基于stm32的智能输液系统设计
  19. 云的基本概念(公有云、私有云、混合云, IaaS、PaaS、SaaS)
  20. Python - 列表解析式( List_Comprehension)

热门文章

  1. 超详细的Java面试题总结(二)之Java基础知识篇
  2. swift学习第四章
  3. 收集的正则表达式列子大全,方面他人,自己备用
  4. 火车站(codevs 2287)
  5. 一个DataTable赋值给另一个DataTable的常用方法
  6. LogBack sl4j 通过MDC实现日志记录区分用户Session[以Spring mvc为例]
  7. IE6的3像素神奇bug:缘起与解决方案
  8. java day51【综合案例day03】
  9. Qt: 监听文件夹QFileSystemWatcher;
  10. 时间戳转换为时间格式,时间格式转换为时间戳