摘要
基于RNN对序列EHR进行建模存在三个问题:
1、 无法捕捉患者病情的细粒度发展模式
2、 没有考虑患者人口统计数据和历史诊断的影响
3、 RNN中隐藏的状态向量难以解释。
本文提出CAMP模型,将历史诊断、细粒度状况、统计数据与共注意力紧密结合,模型通过一个关键值记忆网络扩充RNN,同时将疾病分类合并到记忆网络中,实现细粒度分析,实例化了记忆网络的读/写操作。关键值记忆网络是将不同类别的信息分别储存在不同的存储槽中,相比RNN有更长的记忆能力。
CAMP模型
主要有记忆增强序列编码器和基于共同注意的相互增强两个组件。
记忆增强序列编码器是由诊断嵌入,RNN,记忆网络构成。诊断嵌入用于对于疾病嵌入时的嵌入矩阵的构造。RNN用于短期内的疾病进展捕捉。记忆网络对RNN得到的短期特征进行擦除层和加法层的操作得出长期特征。
基于共同注意的相互增强主要是注意记忆槽和注意患者统计。注意记忆槽用于去除不易患病人群。注意患者统计使用长期特征来判断患者统计中的哪些特征更重要。最后使用短期特征、长期特征、患者人口统计的联合学习来表示。使用交叉熵来计算损失。
实验
数据集:DPH、MIMIC-III数据集
比较了GRU、RNN+、DIPOLE、MCA-RNN、KAME、CRAM。
评估标准:Recall@K、MAP@K
结果
CAMP的表现胜过所有最先进的模型
患者人口统计学是建立诊断序列模型的重要背景信息,有助于提高预测性能
分类意识模型(GRAM和KAME)通常比只考虑历史记录的模型获得更好的性能。
由于共同注意机制和在KV-MN中纳入了疾病分类法,该模型具有很高的可解释性。