在Qure,我们建立了深度学习模型来检测放射影像中的异常。这些模型需要大量的标记数据来学习诊断异常。因此,我们从医院和门诊放射中心收集了一个大型数据集。这些数据集包含相关的临床放射学报告。
目前,当我们训练深度学习算法以识别放射学图像的异常情况时,我们使用放射科的医师报告作为最佳标准。这是目前最好的方式,因为这可以提供以百万计的图像以实现高精度的分类算法。
这些报告通常以自由格式文本而不是结构化格式编写。所以,为了从这些非结构化报告中自动提取结果,我们设计了一个基于规则的自然语言处理(NLP)系统。如下所示:
CT SCAN BRAIN - PLAIN STUDY
Axial ct sections of the brain were performed from the level of base of skull. 5mm sections were done for the posterior fossa and 5 mm sections for the supra sellar region without contrast.
OBSERVATIONS:
- Area of intracerebral haemorrhage measuring 16x15mm seen in left gangliocapsular region and left corona radiate.
- Minimal squashing of left lateral ventricle noted without any appreciable midline shift
- Lacunar infarcts seen in both gangliocapsular regions
- Cerebellar parenchyma is normal.
- Fourth ventricle is normal in position and caliber.
- The cerebellopontine cisterns, basal cisterns and sylvian cisterns appear normal.
- Midbrain and pontine structures are normal.
- Sella and para sellar regions appear normal.
- The grey-white matter attenuation pattern is normal.
- Calvarium appears normal
- Ethmoid and right maxillary sinusitis noted
IMPRESSION:
- INTRACEREBRAL HAEMORRHAGE IN LEFT GANGLIOCAPSULAR REGION AND LEFT CORONA RADIATA
- LACUNAR INFARCTS IN BOTH GANGLIOCAPSULAR REGIONS
这是一篇简短的放射学报告,从中我们可以提取如下结果:
{
"intracerebral hemorrhage": true,
"lacunar infarct": true,
"mass effect": true,
"midline shift": false,
"maxillary sinusitis": true
}
为什么是基于规则的NLP系统?
基于规则的NLP系统可以解析无组织内容并对其进行组织。另一方面,基于机器学习(ML)的NLP系统则在大型数据集上训练时自动生成规则。
与基于ML的方法相比,基于规则的NLP系统具有多重优势:
1.临床知识可以手动合并到基于规则的NLP系统中。然而,在基于ML的NLP系统中捕获这些知识,需要大量的注释。
2.基于ML的NLP系统自动生成的规则难以解释。
3.基于规则的NLP系统可以容易地添加或修改,以适应系统中新目标的发现。4.以往的临床报告分析报告表明,基于ML的NLP系统的结果不如基于规则的NLP系统。
基于规则的NLP开发
由于从多个中心收集了报告,因此有多个报告标准。因此,我们在手动读取大量报告后构建了一组规则来捕获这些变化。其中,我举两种常见的规则类型例子:
1.发现检测
在报告中,同样的发现可以用几种不同的格式来记录,这些包括同义词的定义。例如,blunted CP angle可以通过以下任一方式表示:
1.CP angle is obliterated
2.Hazy costophrenic angles
3.Obscured CP angle
4.Effusion/thickening
我们收集了可用于报告调查结果的所有措辞,并为每项调查结果制定了一条规则。以下是blunted CP angle的规则。
((angle & (blunt | obscur | oblitera | haz | opaci)) | (effusio & thicken))
另外,研究结果可以有一个层次结构。例如,如有任何像edema, groundglass, consolidation等其他近似blunted CP angle的病理情况都可以被认为满足规则。因此,我们还创建了一个关于处理这个层次结构的规则。
[opacity]
rule = ((opacit & !(/ & collapse)) | infiltrate | hyperdensit) hierarchy = (edema | groundglass | consolidation | ... )
2.否定检测
上述规则用于检测报告中的发现。但这些不足以理解报告。例如,考虑以下句子:
1. Intracerebral hemorrhage is absent.
2. Contusions are ruled out.
3. No evidence of intracranial hemorrhages in the brain.
虽然intracerebral hemorrhage, contusion 和intracranial hemorrhage等词语都是在上述句子中提到的。但是它们是不确定的,实际上应该不满足上述我们提到的规则,可是由于存在相应的关键字,会造成干扰。因此,除了发现之外,我们还需要否定一些句子。
我们手动读取几个表示否定的句子,并根据它们的结构对这些句子进行分组。检测否定的规则是基于这些句子创建的。其中一个如下所示:
(<finding>) & ( is | are | was | were ) & (absent | ruled out | unlikely | negative)
Intracerebral hemorrhage is absent ⟶ intracerebral hemorrhage negative.
Contusions are ruled out ⟶ contusion negative.
结果:
我们在一个数据集上测试了我们的算法, 其中包含1878份头部 CT 扫描的临床放射学报告。我们手动阅读所有的报告用来创造最佳标准。我们用灵敏度和特异性作为评价指标。所得结果如下表所示。
查找 |
结果 |
敏感度 |
特异度 |
颅内出血 |
207 |
0.9807 |
0.9873 |
实质内出血 |
157 |
0.9809 |
0.9883 |
脑室内出血 |
44 |
1.0000 |
1.0000 |
硬膜下出血 |
44 |
0.9318 |
0.9965 |
硬膜外出血 |
27 |
1.0000 |
0.9983 |
蛛网膜下腔出血 |
51 |
1.0000 |
0.9971 |
断裂 |
143 |
1.0000 |
1.0000 |
颅骨骨折 |
89 |
0.9888 |
0.9947 |
中线轮班 |
54 |
0.9815 |
1.0000 |
质量效应 |
132 |
0.9773 |
0.9933 |
数十款阿里云产品限时折扣中,赶紧点击领劵开始云上实践吧!
本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。
文章原标题《Teaching Machines to Read Radiology Reports》,译者:黄小凡,审校:袁虎。
文章为简译,更为详细的内容,请查看原文。