Generating SOAP Notes from Doctor-Patient Conversations Using Modular Summarization Techniques

Link

https://aclanthology.org/2021.acl-long.384/

Motivation

作者提出医疗报告应该是SOAP结构,包含4部分内容:
(S)subjective information reported by the patient(病人自己说的信息)
(O) objective observations(客观的观察,比如说一些化验,CT的结果)
(A) assessments made by the doctor(医生的诊断结果)
§ plan for future care(未来的计划,比如怎么治疗,用什么药物)
这四个部分又可以进一步细分为若干个子部分,比如S部分可以细分为家族患病史、主要症状等等。
这篇文章构造了一个SOAP结构的数据集,包含上千组医患对话以及标注好的SOAP note,每个note包含最多15个子部分,如下图所示,当然,某一子部分也可以没有,每个子部分包含若干个语句,同时标记出了每个子部分中的重要语句,称为 supporting utterances,包含了这部分的关键信息。
然后针对这个问题,提出了四种extractive和abstractive相结合的算法,首先从文本中抽取出一些关键句子,然后再生成最终的摘要。这四种算法对extraction的依赖程度越来越高,效果也越来越好

Method

文章提出了四种方法
(1) CONV2NOTE
完全abstractive的方法,直接从整个对话中生成note,这里使用pointer-generator模型
(2) EXT2NOTE
首先从对话中抽取出关键句子,然后利用这些关键句子生成最终的摘要。这里使用层次化LSTM模型和BERT模型抽取句子,可以看成一个二分类问题,预测每个句子是否是关键句子。使用pointer-generator生成摘要。
(3)EXT2SEC
抽取出每个子部分(sub section)的关键句子,对于每个子部分,利用这些关键句子生成这部分的摘要
抽取器和EXT2NOTE一样,不同点在于这里不是一个二分类问题,而是一个多标签的输出,预测这个句子对于每个子部分是不是关键句子,一个句子可能对于多个子部分都是关键句子。使用T5模型生成摘要,以对应的子部分为条件。
(4)CLUSTER2SENT
对于每个子部分首先抽取出关键句子,然后再对抽取出的关键句子进行聚类,每一类对应于摘要中的一句话。解码器一次生成一个句子,以对应的子部分和聚类为条件。总体流程如下图所示,抽取器和生成器与EXT2SEC一样,聚类采用简单的启发式规则。
这四种模型从abstractive-heavy到extract-heavy,表现越来越好。

Code

https://github.com/acmi-lab/modular-summarization

Summarizing Medical Conversationsvia Identifying Important Utterances

Link

https://www.aclweb.org/anthology/2020.coling-main.63/

Motivation

这篇文章重点关注从医疗对话中抽取出患者的问题以及医生的诊断结果和治疗建议,进而形成高质量的医疗对话摘要。这篇文章通过爬虫构建了一个中文的医疗对话摘要数据集。下图给出了一个示例,每段对话都被切分成多个片段,每个片段都有一个标签,如下图所示,PD代表problem description(问题描述),DT代表diagnosis or treatment(诊断和治疗),OT代表others(其他)。每段对话对应两个摘要,SUM1是患者问题的摘要,是从对话中直接抽取出来的(PD)标签,SUM2是治疗和诊断的摘要,包含两种,SUM2A是直接从对话中提取出来的(DT)标签,SUM2B是医生自己写的概括性比较强。所有的对话都有SUM1和SUM2A,只有一小部分对话有SUM2B
针对这个问题,作者设计了一个hierarchical encoder-tagger model (HET),给对话中的每个句子打上标签,将所有PD的句子拼接在一起得到SUM1,也就是患者问题,将所有DT的句子拼接在一起得到SUM2,也就是治疗和诊断结果。

Method


上图给出了模型的总体架构,输入utterance u=[u1,u2,...un]u=[u_1,u_2,...u_n]u=[u1​,u2​,...un​],首先经过一个Token Encoder编码(BERT),取CLS位置的编码结果hih_ihi​作为uiu_iui​的表示。
然后通过一个Memory NetWork,将与utterance uiu_iui​相关的信息整合在一起。首先把所有的utterance [u1.u2,...un][u_1.u_2,...u_n][u1​.u2​,...un​]映射为memory向量和vector向量,memory向量直接从Token Encoder编码的结果中复制得到,vector向量经过双向LSTM编码得到,通过计算加权和的方式得到最终表示aia_iai​,将hih_ihi​与aia_iai​拼接在一起,再经过Utterance Encoder,tagger layer得到表示oi′o_{i}^{\prime}oi′​,最后通过softmax或者CRF层得到对应的标签。
最后将PD或DT标签对应的句子拼接在一起得到SUM1或者SUM2

Code

https://github.com/acmi-lab/modular-summarization

医疗对话摘要论文阅读笔记相关推荐

  1. Low Resource对话摘要论文阅读笔记

    Low Resource也是对话摘要任务中的一个研究重点,因为对话摘要的数据集相对偏少,最多也只有一万条数据,而且现实生活中也难以为长对话标注对应的摘要.这里记录两篇low resource对话摘要方 ...

  2. Recognition Emotion Cause in Conversations 论文阅读笔记

    Recognition Emotion Cause in Conversations 论文阅读笔记 1.第一遍阅读 1.1 标题 Recognition Emotion Cause in Conver ...

  3. 语音情感识别领域-论文阅读笔记1:融合语音和文字的句段级别情感识别技术

    语音情感识别领域-论文阅读笔记1 Fusion Techniques for Utterance-Level Emotion Recognition Combining Speech and Tran ...

  4. 论文阅读笔记:《EIGENGAME: PCA AS A NASH EQUILIBRIUM》(特征博弈:主成分分析就是纳什均衡)

    论文阅读笔记:<EIGENGAME: PCA AS A NASH EQUILIBRIUM>(特征博弈:主成分分析就是纳什均衡) 声明 摘要 1 简介 2 PCA as an Eigen-G ...

  5. 论文阅读笔记(五)——狐猴识别系统:一种便于狐猴个体识别的面部识别系统

    论文阅读笔记(五)--狐猴识别系统:一种便于狐猴个体识别的面部识别系统 论文简介 论文中文翻译:狐猴识别系统:一种便于狐猴个体识别的面部识别系统 论文名称:<LemurFaceID: a fac ...

  6. 论文阅读笔记——VulDeePecker: A Deep Learning-Based System for Vulnerability Detection

    本论文相关内容 论文下载地址--Engineering Village 论文中文翻译--VulDeePecker: A Deep Learning-Based System for Vulnerabi ...

  7. [论文阅读笔记15]Recognizing Complex Entity Mentions:A Review and Future Directions

    一,题目 Recognizing Complex Entity Mentions:A Review and Future Directions 识别复杂实体mentions:回顾与未来方向 Dai X ...

  8. (论文阅读笔记)OLE:正交低秩嵌入,即插即用的几何损失

    论文阅读笔记:OLE: Orthogonal Low-rank Embedding, A Plug and Play Geometric Loss for Deep Learning 摘要 简介 2 ...

  9. 论文阅读笔记:《一种改进的图卷积网络半监督节点分类》

    论文阅读笔记:<一种改进的图卷积网络半监督节点分类> 文章目录 论文阅读笔记:<一种改进的图卷积网络半监督节点分类> 摘要: 引言 非欧几里得数据 1 深度池化对偶图神经网络 ...

  10. 《Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs》论文阅读笔记

    <Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs>论文阅读笔记 主要挑战贡献: KG上的推理挑战主要 ...

最新文章

  1. C#socket之TCP开发详解(一)
  2. CI框架中pdo的使用方法
  3. php大马免杀技巧 | bypass waf
  4. Hibernate学习(二)持久化类,主键生成策略、一级缓存、事务
  5. java 垃圾回收 参数_JVM实用参数(五)新生代垃圾回收
  6. python对象的相关术语
  7. Python如果or运算的两个参数都等同于False,返回后一个值
  8. Linux文件打包与压缩
  9. 了解计算机的配置及价格行情,最新电脑配置清单及价格的详细介绍
  10. 母牛的故事【HDOJ2018】
  11. JAVA计算机毕业设计班级网站计算机(附源码、数据库)
  12. 洛谷P2058 海港(模拟,优先队列)
  13. 微信小程序weui的使用
  14. 汉语是世界上最好的语言
  15. latex中biblatex参考文献的标点、分隔符、本地化字符串中英文切换
  16. 苹果iOS 5限制应用本地存储问题
  17. python中级11面向对象中
  18. 从了解Linux开始
  19. 千变万化的ViewPager指示器-MagicIndicator
  20. ssh备考-03hibernate各种查询方式

热门文章

  1. ppt如何替换其他mo ban_“华南师范大学”专属PPT模板来了!华南师大同学们的PPT我们承包了!...
  2. 库克开怼谷歌和Facebook:自己搞的烂摊子,要会自己收拾
  3. 判断是否发生塑性变形的条件:von Mises屈服准则
  4. Java反射机制详解上篇
  5. c语言括号表示法画树怎么画,各种树的画法,这篇文章写得太详细了,值得收藏!...
  6. 十二首《临江仙》,说尽心中无限事
  7. Elastic Stack
  8. Mysql命令大全——转自博客园 宁静.致远博客
  9. 深入理解Magento第五章 – Magento资源配置
  10. magento 开发 -- 入门深入理解第五章 – Magento资源配置