论文:PhenoBlocks: Phenotype Comparison Visualizations
作者:Michael Glueck ; Peter Hamilton ; Fanny Chevalier ; Simon Breslav ; Azam Khan; Daniel Wigdor; Michael Brudno
发表:TVCG 2016
这篇文章中,Michael Glueck 等人提出一种可以用于比较患者之间不同的表征,来进行罕见遗传病诊断的可视化系统——PhenoBlocks,医生可以通过该系统比对患者和其他典型患者或正常人的临床表现,从而得出患者可能患有的罕见遗传疾病并能够获得合理的诊断方向。
介绍
在医疗领域,医生对于遗传疾病的诊断是一件非常困难的事情,临床患者表现出的表征数据是异构的。医生对于同一类疾病不同患者的医疗记录具有很强的不一致性,不完整性,和粒度不统一性。之前的诊断工具大都是基于文本的。并且没有强调如何保证诊断的一致性,完整性和粒度统一性。本文提出的系统能够通过一个一目了然的可视化界面,使得医生能够对临床患者和典型患者之间进行比较,从而得到完整的具有一致性的诊断过程。
文章还通过两位医疗专家对系统进行非正式的试用,发现该系统可以有效地引导医疗诊断,并可以有效地通过提示诊断的方向帮助医生实现诊断的完整性。
相关工作
现有的对于遗传疾病的诊断流程是(诊断-得到表征-假设-验证-诊断):
(1)医生通过对患者的描述,和对患者的观察,患者的化验单据进行诊断
(2)通过诊断得到患者的临床表征
(3)医生通过临床表征,得到对患者可能患的疾病的假设
(4)医生根据假设,通过化验等验证患者的其他表征是否符合假设的疾病。
(5)回到步骤(1)
诊断的流程会有很多阻碍,首先对于遗传疾病的诊断过程中,医生需要通过比对典型案例来得到对患者所患遗传病的假设。但是由于遗传病数据的不一致性和不完整性,影响了诊断过程中医生对患者所患疾病的假设。其次医生没有获得对所有可能患的疾病的提示,这可能会使得医生遗漏一些罕见的遗传疾病。还有,现有的技术都是基于文本的,医生很难对于临床患者和典型病例进行一目了然的比较,这一点随着表征数量的增多尤为明显起来,医生往往在比较过程中顾此失彼。
可视化设计
本文设计的可视化希望达到:
- 能够对临床的表征数据进行收集并总结
- 能够提示医生患者最可能患的几种病症
- 能够通过可视化界面使得医生能够对临床患者和典型患者做出一目了然的比较,并能根据比较出的不同点得到诊断方向
- 能够随着诊断的进行,实时的更新患者的某些表征,从而达到诊断流程能够随着诊断进行,达到“诊断-得到表征-假设-验证-诊断”的循环
本文使用的典型患者数据是来自 47 位遗传病患者的医疗记录。这些患者分别患有 6 种不同的遗传疾病,每种遗传疾病的患者大约有 3 到 11 人。数据记录了每一位患者出现的和未出现的临床表征。医生可以通过系统输入诊断的临床病人的表征,得到与数据库中典型患者的可视化的比较图。
本文首先对表征进行了分类。对于每一个表征大类下可以有不同的表征。例如“耳”,属于“耳”的表征有听觉异常和失聪。在系统中使用了不同的图标来分类不同的表征,并分配在比较图中,从而达到对于错综复杂的临床表征的合理语意布局,使得医生能够有效地查看想要关注的某一类表征。
为了能够比较临床患者和典型病例之间的表征差异,本文采用了医疗本体论(Human Phenotype Ontology)中的表征分类树结构。医疗本体论总的来说可以看做一个大的多节点有向图,每一个节点是一个表征,箭头表示某一表征是另一表征的细化表征,例如咳嗽是呼吸道异常。
临床患者和典型患者对于某一表征分别有出现,未出现和不明三种情况。为了能够对他们进行比较,系统设计了一个 9*9 的矩阵,并对每一个位置进行了颜色的编码。当比较双方同时具有或不具有某一表征,则显示为绿色,如果比较双方不同则显示成蓝色,如果临床患者或典型患者对于该表征还没有记录则分别显示成紫色和橘黄。
方法计算了每一个表征比较的分数,表征分数的计算考虑了两种因素,首先是表征的相似性,这里采用了 PhenoTips 的算法来计算表征相似性,然后考虑了该表征在该病症中发病的频率,然后根据表征分数对颜色深浅进行编码。在此之外对于那些临床患者具有的表征颜色永远比临床患者不具有的表征颜色深。
每当医生输入一个临床患者的表征,如图 A。医疗本体论有向图可以表示成树结构,如下图的 B。系统可以根据患者和典型患者分别构建他们的本体树结构图,如图 C。然后求出他们的公共子图,如图 D。然后根据上面所讲的颜色编码对他们进行的比较,如图 EF。
可视化方面,本文的系统界面如下图所示
首先对于诊断的临床患者,医生可以通过图中 F 中的按钮输入临床患者的某些表征,也可以通过图中 G 面板来直接导入数据。
对于输入后的表征,系统计算该临床患者与所有数据库中病症的相似性,并给出病症可能性的排名,如图 A,每一列表示一种病症,从上到下患者患该病的可能性依次降低。每一列中的一个小圆是该临床病患和患该病的一位典型患者的比较树结构图,小圆下方显示病患和该患者的表征分数。
点击图 A 中的某一个小圆可以查看比较的详细视图,如图 B。本文采用了 Sunburst 的树结构布局,按照表征的分类和临床患者和典型患者的对比颜色编码可以得出两患者的详细比较图。可以看出颜色的编码使得比较结果一目了然,绿色部分显示了比较双方的共同部分,紫色部分表示典型患者有该表征而临床患者还不确定,所以医生可以对紫色的表征进行调查,然后验证临床患者是否具有,实时的输入该表征的最新状态,得到新的比较图。橘色部分是临床患者有该表征而典型患者没有,表示该表征在本典型患者的比较中无迹可寻。
医生可以交互式的悬浮在某一个节点上,当鼠标悬浮时,该表征的详细本体论树结构祖先将被显示在图中 D。图中的 E 是图例,并且可以点击来筛选该兴趣的内容,例如医生只想观看那些紫色部分,因为紫色部分可以引导诊断方向,所以他点击了图中 E 的紫色按钮。
总结
这个工作主要提供了一种能够对树结构进行比较的方法,并且能够在诊断的过程中达到可交互的可循环的可视分析目的,对医疗数据进行了可视化编码,能够使得医生对患者之间的表征比较结果一目了然,并得出诊断的方向,丰富诊断的粒度,实现诊断的完整性。系统界面美观而简洁,颜色选取非常漂亮,交互方便。
本文行文流畅,首先提出了文章背景,然后介绍相关工作,同时提出本文想要实现的任务和具体实现的措施,后介绍比较的方法和可视化编码,思路清晰,具有很好的写作借鉴。
个人认为本文的树结构比较方法可能只适用于这个遗传病医疗数据,当树结构数据量扩大时,树结构可能无法显示在圆内。最重要的一点是本文的树结构比较方法要求两个树的总的结构是相同的,他们是同一个大树的两个子树,所以本文的方法可能不能完全应用于普通的树结构比较中去。
✉️ zhaosong_huang@zju.edu.cn