少年帮|利用深度学习生成医疗报告

目录

  1. 了解问题
  2. 要求技能
  3. 数据
  4. 获取结构化数据
  5. 准备文本数据-自然语言处理
  6. 获取图像特征-迁移学习
  7. 输入管道-数据生成器
  8. 编-解码器模型-训练 , 贪婪搜索 , 束搜索 , BLEU
  9. 注意机制-训练 , 贪婪搜索 , 束搜索 , BLEU
  10. 摘要
  11. 未来工作
  12. 引用
1.了解问题图像字幕是一个具有挑战性的人工智能问题 , 它是指根据图像内容从图像中生成文本描述的过程 。 例如 , 请看下图:
少年帮|利用深度学习生成医疗报告一个常见的答案是“一个弹吉他的女人” 。 作为人类 , 我们可以用适当的语言 , 看着一幅图画 , 描述其中的一切 。 这很简单 。 我再给你看一个:
少年帮|利用深度学习生成医疗报告好吧 , 你怎么形容这个?
对于我们所有的“非放射科医生” , 一个常见的答案是“胸部x光” 。
对于放射科医生 , 他们撰写文本报告 , 叙述在影像学检查中身体各个部位的检查结果 , 特别是每个部位是正常、异常还是潜在异常 。 他们可以从一张这样的图像中获得有价值的信息并做出医疗报告 。
对于经验不足的放射科医生和病理学家 , 尤其是那些在医疗质量相对较低的农村地区工作的人来说 , 撰写医学影像报告是很困难的 , 而另一方面 , 对于有经验的放射科医生和病理学家来说 , 写成像报告可能是乏味和耗时的 。
所以 , 为了解决所有这些问题 , 如果一台计算机可以像上面这样的胸部x光片作为输入 , 并像放射科医生那样以文本形式输出结果 , 那岂不是很棒?
少年帮|利用深度学习生成医疗报告2.基本技能本文假设你对神经网络、cnn、RNNs、迁移学习、Python编程和Keras库等主题有一定的了解 。 下面提到的两个模型将用于我们的问题 , 稍后将在本博客中简要解释:
  1. 编解码器模型
  2. 注意机制
对它们有足够的了解会帮助你更好地理解模型 。
3.数据你可以从以下链接获取此问题所需的数据:
  • 图像-包含所有的胸部X光片:
  • 报告-包含上述图像的相应报告:
图像数据集包含一个人的多个胸部x光片 。 例如:x光片的侧视图、多个正面视图等 。
正如放射科医生使用所有这些图像来编写报告 , 模型也将使用所有这些图像一起生成相应的结果 。 数据集中有3955个报告 , 每个报告都有一个或多个与之关联的图像 。
3.1 从XML文件中提取所需的数据数据集中的报表是XML文件 , 其中每个文件对应一个单独的 。 这些文件中包含了与此人相关的图像id和相应的结果 。 示例如下:
少年帮|利用深度学习生成医疗报告
少年帮|利用深度学习生成医疗报告突出显示的信息是你需要从这些文件中提取的内容 。 这可以在python的XML库的帮助下完成 。
注:调查结果也将称为报告 。 它们将在博客的其他部分互换使用 。
import xml.etree.ElementTree as ETimg = []img_impression = []img_finding = []# directory包含报告文件for filename in tqdm(os.listdir(directory)):if filename.endswith(".xml"):f = directory + '/' + filenametree = ET.parse(f)root = tree.getroot()for child in root:if child.tag == 'MedlineCitation':for attr in child:if attr.tag == 'Article':for i in attr:if i.tag == 'Abstract':for name in i:if name.get('Label') == 'FINDINGS':finding=name.textfor p_image in root.findall('parentImage'):img.append(p_image.get('id'))img_finding.append(finding)


推荐阅读