一种基于链接预测的食源性疾病暴发识别方法和系统转让专利
申请号 : CN202210029619.X
文献号 : CN114049966B
文献日 : 2022-04-08
发明人 : 张鹏 , 叶旭 , 崔文娟 , 杜一
申请人 : 中国科学院计算机网络信息中心
摘要 :
权利要求 :
1.一种基于链接预测的食源性疾病暴发识别方法,其特征在于,包括以下步骤:对食源性疾病暴发事件数据进行数据处理,获取暴发事件维度和病例维度的相关信息;
对数据处理之后的病例数据进行采样,得到正负样本对集合;
对正负样本对集合中的各个正负样本对进行特征提取;
将特征提取后的正负样本对输入基于神经网络构建的链接预测模型,以学习病例与病例之间的关联关系;
根据链接预测模型得到的病例与病例之间的关联关系构建病例关系网络,病例关系网络中的节点表示病例实体,边表示病例之间的关联关系,边权值反映病例间关联强度;
根据病例关系网络,采用社区发现算法得到食源性疾病暴发事件;
所述对数据处理之后的病例数据进行采样,得到正负样本对集合,包括:采样的全集为全体病例样本集,由正采样与负采样组成;
正采样每次从同一暴发事件中采样两个病例作为一个病例对,正采样病例对标签为1,表示两个病例间联系密切,属于同一暴发事件;
负采样包含两种采样方法,第一种采样方法每次从不属于任意暴发事件的病例样本集合中采样两个病例作为负样本对,第二种采样方法每次从某一暴发事件的病例集合以及不属于任意暴发事件的病例集合分别采样一个病例作为负样本对;负采样的病例组合标签为
0,表示两个病例间无联系,不属于同一暴发事件;
所述对正负样本对集合中的各个正负样本对进行特征提取,其提取的特征包括病例自身基本信息特征和病例的互特征,所述互特征包含食品特征、时间特征、空间特征。
2.根据权利要求1所述的方法,其特征在于,所述获取暴发事件维度和病例维度的相关信息,其中暴发事件维度包含病例编号、病例数、暴发产生地点、暴发产生时间,病例维度包含病例基本信息、进食信息、病例症状、初步诊断、就诊时间。
3.根据权利要求1所述的方法,其特征在于,所述病例自身基本信息特征包括患者职业代码、初步诊断代码、症状代码,采用one‑hot编码方法提取特征;所述空间特征包括病例住址、食品购买地点和就餐地点,将字符串表示的地区和县转换为相应的纬度和经度坐标,并计算病例之间的欧氏距离;所述时间特征包括进食时间、发病时间和就诊时间,将年、月和日格式的日期转换为时间戳,使用差值来表示两病例间时间维度的差异;所述食品特征包括食物名称,采用字符串匹配的思想,提取食物名称的字符串的特征,返回0‑100之间的值表示两个字符串之间的相似程度,取值越大,相关性越高。
4.根据权利要求1所述的方法,其特征在于,所述链接预测模型表示为:T T T
x=concat([x1 ,x2 ,z])y=sigmoid(w2(w1x+b1)+b2)其中,x是所述链接预测模型的输入,x1与x2分别为两个病例的病例自身基本信息特征,z为病例间的食品特征、时间特征、空间特征;w1,w2,b1,b2为神经网络模型参数,在训练过程中通过梯度后向传播更新,y表示病例间存在联系的可能性,y∈(0,1);为经Bagging方法i
模型集成后最终的输出,N为基模型总数,y为第i个基模型。
5.根据权利要求1所述的方法,其特征在于,所述根据病例关系网络,采用社区发现算法得到食源性疾病暴发事件,是采用并查集算法得到食源性疾病暴发事件,并应用路径压缩与合并优化对所述并查集算法进行优化;路径压缩是在查找父节点的操作时将父节点设置为树的根节点从而限制树的深度;合并优化是记录每个节点作为根节点时树的深度,在合并操作中将深度较小的树合并到深度较大的树,从而使树的结构更加合理。
6.一种采用权利要求1~5中任一权利要求所述方法的基于链接预测的食源性疾病暴发识别系统,其特征在于,包括:
数据处理模块,用于对食源性疾病暴发事件数据进行数据处理,获取暴发事件维度和病例维度的相关信息;
病例样本采样模块,用于对数据处理之后的病例数据进行采样,得到正负样本对集合;
特征提取模块,用于对正负样本对集合中的各个正负样本对进行特征提取;
链接预测模块,用于将特征提取后的正负样本对输入基于神经网络构建的链接预测模型,以学习病例与病例之间的关联关系;
暴发生成模块,用于根据链接预测模型得到的病例与病例之间的关联关系构建病例关系网络,病例关系网络中的节点表示病例实体,边表示病例之间的关联关系,边权值反映病例间关联强度;进而根据病例关系网络,采用社区发现算法得到食源性疾病暴发事件。
7.一种电子装置,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1~5中任一权利要求所述方法的指令。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现权利要求1~5中任一权利要求所述的方法。
说明书 :
一种基于链接预测的食源性疾病暴发识别方法和系统
技术领域
背景技术
球范围内造成经济损失。2015年,世界卫生组织指出,食源性疾病在全球范围内造成了沉重
负担。全世界每年发生约6亿例食源性疾病,造成42万人死亡。因此,研究食源性疾病的监测
和预防是必要的。食源性疾病暴发事件识别作为食源性疾病监测和预防的重要环节,合理
应用数据挖掘与机器学习方法将有效提高食源性疾病暴发识别的准确率,达到监测与预防
食源性疾病的目的。
发事件的发生。当某地区或出现食源性疾病暴发事件时,医院就诊人数将产生极大的波动。
因此,一些异常检测方法被用来根据发病率的变化来检测疾食源性病的暴发。此类方法需
要发病率的历史基线作为依据(Wong W K, Moore A, Cooper G, et al. Rule‑based
anomaly pattern detection for detecting disease outbreaks[C]//AAAI/IAAI.
2002: 217‑223.)。由于食源性疾病在时间与空间维度都呈现出明显的聚集性,另一类研究
把疾病的暴发识别定义为聚类问题,在现有聚类问题的基础上进行改进以适应特定的问题
场景。Neil(Neill D B, Moore A W. Rapid detection of significant spatial
clusters[C]//Proceedings of the tenth ACM SIGKDD international conference on
Knowledge discovery and data mining. 2004: 256‑265.)等人使用时空扫描的统计学
方式对流行病学的暴发进行了检测。基于已有的时空聚类疾病簇的监测方法,Daniel等人
(Neill D B, Moore A W, Sabhnani M, et al. Detection of emerging space‑time
clusters[C]//Proceedings of the eleventh ACM SIGKDD international conference
on Knowledge discovery in data mining. 2005: 218‑227.)也提出了一种针对新兴时
空聚类的监测方法,用于新兴时空聚类的快速检测,发现由新出现的疾病暴发导致的疾病
病例的时空群集。文中提出时空扫描统计的方法,通过时间与空间维度的建模,找到给定的
空间区域集进行搜索,判断这些区域是产生的新型聚类还是长期存在的与疾病监测无关的
聚类。这些方法在快速完成监测任务和准确检测新兴疾病流行方面取得了成功。Xiao等人
(Xiao X, Ge Y, Guo Y, et al. Automated detection for probable homologous
foodborne disease outbreaks[C]//Pacific‑Asia Conference on Knowledge
Discovery and Data Mining. Springer, Cham, 2015: 563‑575.)提出了一种用于在线
系统的同源食源性疾病暴发自动监测方法。文中将预测疾病暴发的任务分为聚集性食源性
疾病暴发(LFDO)与散发性食源性疾病暴发(SFDO)两类。作者采用DBSCAN进行聚集性暴发
(LFDO)检测,并解决了DBSCAN中的参数自适应问题,提出K‑CPS (模式相似的K‑Means聚类)
方法来检测散发性食源性疾病暴发(SFDO)。
外,食源性疾病具有实时性和突发性,食源性疾病发病率的统计需要依赖省市县各个级别
的医院,不同医院之间发病率的上报需要时间,这也导致了该方法具有一定的时间滞后性。
些方法并不完全适用于食源性疾病暴发的识别。
在不同之处:在聚类问题场景中,聚类类别需要预先设定,并且所有样本都会被归属于某一
类,而在暴发识别的问题场景下,真实数据中的类别(暴发事件)不可预知,而且可能包含不
确定比例的离群点,所谓离群点即不属于任何一起暴发事件的病例。除此之外,不同暴发事
件所包含的病例数变化范围较大,以上特点均增加了直接使用传统聚类算法解决当前问题
的难度。
发明内容
到暴发事件识别的目的。
计实现的模型不再依赖于食源性疾病检测报告系统生成的疑似暴发事件,直接从病例维度
出发,以病例作为输入,输出为包含病例的食源性疾病暴发事件集合,完成了端到端的食源
性疾病暴发识别任务。如前文所述,直接使用传统聚类算法在该问题场景下效果不佳。本发
明针对当前具体问题场景,将传统聚类问题转化为病例间关联关系预测与图网络中社区发
现的问题,从而取得了比传统聚类算法更好的暴发事件识别效果。
息、病例症状、初步诊断、就诊时间等。
及不属于任意暴发事件的病例集合分别采样一个病例作为负样本对;负采样的病例组合标
签为0,表示两个病例间无联系,不属于同一暴发事件。
间特征。
点,将字符串表示的地区和县转换为相应的纬度和经度坐标,并计算病例之间的欧氏距离;
所述时间特征包括进食时间、发病时间和就诊时间,将年、月和日格式的日期转换为时间
戳,使用差值来表示两病例间时间维度的差异;所述食品特征包括食物名称,采用字符串匹
配的思想,提取食物名称的字符串的特征,返回0‑100之间的值表示两个字符串之间的相似
程度,取值越大,相关性越高。
训练过程中通过梯度后向传播更新,y表示病例间存在联系的可能性,y (0,1);为经
Bagging方法模型集成后最终的输出,N为基模型总数, 为第i个基模型。
法进行优化;路径压缩是在查找父节点的操作时将父节点设置为树的根节点从而限制树的
深度;合并优化是记录每个节点作为根节点时树的深度,在合并操作中将深度较小的树合
并到深度较大的树,从而使树的结构更加合理。
映病例间关联强度;进而根据病例关系网络,采用社区发现算法得到食源性疾病暴发事件。
上的并查集算法的暴发生成模型,该模型对于食源性疾病暴发识别问题取得了显著的效
果。
关联关系。由此将食源性疾病暴发识别任务转化为链接预测与有权图的社区发现问题。
大提升。
附图说明
具体实施方式
正负采样,得到病例对集合作为正负样本。将特征提取后的正负训练样本输入基于神经网
络构建的链接预测模型,该模型可以学习到病例与病例之间的关联关系。此后暴发生成模
型根据链接预测模型的输出构建病例关系网络,网络中节点表示病例实体,边表示病例间
的关联关系,边权值反映了病例间关联强度,即两个病例有多大的可能来自于同一暴发事
件。在构建病例关系网络后,尝试应用社区发现等算法最终得到食源性疾病暴发事件。
息、病例症状、初步诊断、就诊时间等。对于特征缺失的处理,首先计算特征缺失数据所占比
例,当缺失数据超过数据总量的一定比例时删除该特征,其余情况采用默认值填补缺失部
分。对于数值型数据的处理包含数据归一化处理(最大‑最小归一化)与离散化处理(等宽法
分箱操作)。对于文本数据,采用Jieba分词及去停用词技术对文本数据进行初步清洗。
全集为全体病例样本集,由正采样与负采样组成,采样过程如图2所示。正采样每次从同一
暴发事件中采样两个病例作为一个病例对,正采样病例对标签为1,表示两个病例间联系密
切,属于同一暴发事件;负采样包含两种采样方法,第一种采样方法每次从不属于任意暴发
事件的病例样本集合中采样两个病例作为负样本对,第二种采样方法每次从某一暴发事件
的病例集合以及不属于任意暴发事件的病例集合分别采样一个病例作为负样本对。这样的
病例组合标签为0,表示两个病例间无联系,不属于同一暴发事件。
病例自身基本信息特征、食品特征、时间特征、空间特征四类。下游链接预测模型的输入由
两部分组成,其中一部分是两个病例的病例自身基本信息特征的向量表示,另外一部分则
是样本对中两个病例的互特征(mutual feature),其中包含了食品特征、时间特征、空间特
征。
如下为 两点之间欧氏距离计算公式。
个病例的时间格式表示,abs表示绝对值函数,time_stamp为时间戳转化函数,将时间格式
表示转化为时间戳。
函数返回0‑100之间的值表示两个字符串之间的相似程度。取值越大,相关性越高。
器的泛化能力。Bagging 算法又称为装袋算法,可与其他分类或回归算法结合,提高其准确
率和稳定性,并且通过降低结果的方差避免过拟合的发生。对于分类与回归任务,最终模型
结果为多个模型的集成平均。基模型采用的是两层前馈神经网络,在基模型中加入drop‑
out层从而增强神经网络模型的泛化性。drop‑out层在训练时,随机选择一部分神经元使其
失活,不参与本次训练过程。因为神经元在训练时会以一定概率而被随机失活,使得每个神
经元不能过分依赖于某些神经元,从而降低神经元之间的依赖程度,增强神经元提取特征
的鲁棒性。
输入可以表示为 ,其中x1与x2分别为两个病例的特征表示(即病例
自身基本信息特征),z为附加特征(即病例间的食品特征、时间特征、空间特征), 表
示将特征向量拼接。基模型最终输出y的计算过程可表示为公式y, , , , 为神经网
络模型参数,在训练过程中通过梯度后向传播更新, 函数将神经网络的输出转化为
概率形式。y表示病例间存在联系的可能性,y (0,1),作为下游暴发生成模型中图网络的
边权重。经Bagging方法模型集成后最终的输出可表示为 ,其中N为基模型总数, 为第i
个基模型。链接预测模型的基模型神经网络选择交叉熵(binary crossentropy)作为损失
函数,选择均方根优化(RMSProp)作为优化器,drop‑out比例为0.2,模型训练迭代轮次
(epoch)为10,实验中基模型个数为10时取得最好模型效果。
别的问题转化为图结构中的社区发现问题。
在本发明的问题场景下,基于神经网络实现的链接预测模型充分学习到了病例与病例间的
关联关系,神经网络模型的输出可以表示两个病例之间的关联程度。我们把有关联的两个
病例表示为两个病例间有边连接。由此暴发事件识别模型可以采用并查集算法的思想得以
解决。在算法实现部分,主要涉及到两个重要的操作,分别为查找操作与合并操作。并查集
算法实现了一种树状结构,并为每个元素引入父节点的概念。查找操作递归地寻找元素的
父节点,合并操作先找到需要合并的两个元素的父节点,将其中一个元素的父节点设置为
另一个元素。合并的过程可以认为是构建树的过程,因此通过设置合并规则可以对树进行
优化,使得树的结构更加合理,使得算法更加高效。本方法应用路径压缩与合并优化两种方
法优化并查集算法。路径压缩在查找父节点的操作时将父节点设置为树的根节点从而限制
树的深度,合并优化记录每个节点作为根节点时树的深度,在合并操作中将深度较小的树
合并到深度较大的树,从而使树的结构更加合理。
素,浅色节点为根节点,深色节点为非根节点。首先,六个元素的父节点指向自身。元素b与
元素a属于同一集合,元素c与元素b属于同一集合,所以将元素b的父节点设置为元素a,由
于路径压缩方法将父节点设置为根节点,所以元素c的父节点为a而不是b。其次,元素e与元
素d属于同一集合,元素d与元素f属于同一集合,所以将元素e,元素f的父节点设置为元素
d。最后,元素d与元素a属于同一集合,由于合并优化方法规定将深度较小的树合并至深度
较大的树,将元素d的父节点设置为元素a时树深度最小,所以将元素d的父节点设置为元素
a而不是元素b或元素c。
是直接分析聚类结果,称为内部指标。由于本发明的数据集是有标记的数据,采用选择外部
指标评价模型的效果。
实际意义。最终的评价指标召回率(recall)、精确率(precision)、F1‑score由上述经过重
新定义的真正例(True Positive)、真负例(True Negative)、假正例(False Positive)、假
负例(False Negative)计算得到。召回率、精确率、F1‑score的计算方式如下:
及标签传播算法(Label Propagation)。除此之外,也将提取到的病例向量直接经过归一
化,采用传统机器学习聚类算法进行聚类,得到聚类结果。对传统机器学习聚类算法,对于
需要预先设定类别的方法,聚类的类别设置为验证集中真实包含的暴发事件数目,并对其
他参数进行调优,确保实验结果为当前模型下的最佳结果。实验结果如表2所示,采用链接
预测模型与暴发识别算法的思路模型效果比直接使用传统聚类算法更好。其中,使用链接
预测模型与基于并查集思想的暴发生成模型F1‑score得分最高为0.9540。结果表明将聚类
任务转化为链接预测并构建病例图网络的想法取得显著成效,神经网络实现的链接预测模
型从数据中学习到了病例之间的关联关系,并且对后续暴发生成算法奠定了基础。
相互特征。实验在保留链接预测模型的结构和参数等其他因素不变的前提下,对比了在验
证集上各种互特征对模型最终暴发事件识别效果的影响。如图5所示,不加入附加特征以及
加入单一附加特征的模型最终效果普遍较差,食品、时间、空间维度的附加特征都对提升模
型效果起到了正向的影响,其中食物特征的添加对模型效果的正向影响更大,使用全部食
品、时间、空间特征的模型在特定阈值下具有最高的得分。一方面反映了本发明中特征提取
方法的有效性,另一方面也反映了先验领域知识的重要性以及食源性疾病在时间空间上的
聚集性特点。
如图6所示,模采用型集成思想的链接预测模型效果优于单模型的链接预测模型。
映病例间关联强度;进而根据病例关系网络,采用社区发现算法得到食源性疾病暴发事件。
为由所述处理器执行,所述计算机程序包括用于执行本发明方法中各步骤的指令。
行时,实现本发明方法的各个步骤。
修改都是可能的。本发明不应局限于本说明书的实施例所公开的内容,本发明的保护范围
以权利要求书界定的范围为准。