医疗数据发布的差分隐私保护方法

文档序号:9844330阅读:1040来源:国知局
医疗数据发布的差分隐私保护方法
【技术领域】
[0001] 本发明涉及数据分类技术领域,具体涉及一种医疗数据发布的差分隐私保护方 法。
【背景技术】
[0002] 目前,我国在各医院已经推广和使用的电子病历信息系统大多是将病患作为处理 对象来提供事务处理,一般包含病患个人信息、疾病名称和手术记录等,是病人在医院诊治 过程中的原始记录,其中既有数值型数据,也有离散型数据。电子病历主要是为了能快速有 效的完成病患的登记和诊疗记录的存储、查询、查看和结算诊疗费用等以病患为服务主体 的各项服务为目的。医院中的各个部门在这样的病历管理系统中能对数据进行有效的管理 和统计,如住院病患的平均治疗费用、某种特殊疾病的住院人数、癌症病患分别在不同阶段 (I期、π期、m期、IV期)的死亡率等。
[0003] 在现今的医疗体系中,依然是一种以经验为导向的治疗。虽然先进的医疗设备能 为医生正确的诊疗提供支持,但医生们往往无法对得出的经验规则进行验证。所以对医务 工作者而言,他们更希望通过统计分析、数据挖掘等不同的技术从大量的电子病历信息中 能够总结出同类疾病的共同病征,在综合分析以前的不同治疗方案、病患状况与临床疗效 效果的基础上对现有的治疗方案进行优化和调整,从而能够为疾病的治愈提供更有力的保 证并且将挖掘结果转化为循证医学的证据。而现实情况是当医院在收集了病人的电子病历 后,需要很多人力物力去存储和管理这些数据却没有能力利用这些病例数据来得到其中隐 藏的医学诊断规则和模式。通过数据挖掘技术可以挖掘出大量病患的病历数据中所隐藏的 医学诊断规则和模式可以验证医疗工作者以前得到的经验规律的有效性同时还能够发现 一些以前没有被医疗工作者发现的规律,这些都推进了循证医疗技术的前进与发展。这些 挖掘出来的医疗诊断规则可以为医生进行疾病诊断治疗提供辅助决策,这有利于提高诊疗 效率、减少病患需要进行的无效检查检查减少病患的花销。所以医院需要将收集到的病患 电子病历记录数据发布给医疗研究机构或数据挖掘公司来利用这些数据,得到数据中隐含 的可用的医疗规则等可用信息。
[0004] 收集医疗数据并将之公开发布对于推动医疗研究和治疗疾病来说有着极其重要 的意义。然而,由于医疗电子病历记录往往带有许多病患的敏感信息,因此医疗数据的收集 和发布往往会带来泄露病患信息的隐患。以往发布数据时,一般的做法是将一些标识符属 性信息(例如:姓名、身份证号码、电话)从需要发布的病例数据表中直接去掉,然后再将经 过处理的数据进行公开发布。但这样做依旧有可能泄露病患的个人信息,他人(攻击者)可 以通过一些准标识符信息(例如:性别、年龄、住址、职业)的组合将某条记录所对应的病患 重新识别出来。而在数据查询过程中,通过改变查询范围他人(攻击者)也能够通过统计信 息的变化得到某个病患的部分信息。

【发明内容】

[0005] 本发明所要解决的技术问题是医疗数据的直接发布所带来的病患信息泄露的风 险,提供一种医疗数据发布的差分隐私保护方法,其能够对电子病历记录数据进行隐私保 护的同时最大化的保护数据的可用性。
[0006] 为解决上述问题,本发明是通过以下技术方案实现的:
[0007] 医疗数据发布的差分隐私保护方法,包括如下步骤:
[0008] 步骤1、通过数据预处理,得到所有属性的属性值均泛化到最高的属性值组合数据 表和属性状态层次树;
[0009] 步骤2、用户设定最大分裂次数h和匿名隐私保护参数k;
[0010] 步骤3、将预处理得到的属性值组合数据表的属性值加入到被泛化属性值集合中, 并利用每个属性的状态层次树来统计每个被泛化属性值的信息增益Scored);
[0011] 步骤4、从被泛化的属性值集合中选取待分裂的被泛化的属性值,并对被选出的被 泛化的属性值进行分裂;
[0012]步骤5、对分裂后得到的新的属性值组合进行k-匿名验证;即
[0013] 如果每个新得到的属性值组合均满足k-匿名要求,即该属性值组合的计数大于匿 名隐私保护参数k,表明此次分裂成功,则重新计算信息增益Sc 〇re(Rv),并且实际分裂次数 η增加1;
[0014] 如果其中有一个新得到的属性值组合不满足k_匿名要求,即该属性值组合的计数 小于等于匿名隐私保护参数k,表明此次分裂失败,则将选中的待分裂属性值从被泛化的属 性值集合中删除;
[0015] 步骤6、重复步骤4-5的分裂过程,直到没有能继续分裂的被泛化的属性值或者分 裂次数等于最大分裂次数h;
[0016] 步骤7、完成分裂过程后,对得到的满足k-匿名的属性值组合数据表中每个属性值 组合的计数进行差分隐私加噪处理,得到含有噪声的属性值组合;
[0017] 步骤8、根据含有噪声的属性值组合数据表进行数据重构,最后将重构得到满足差 分隐私和k-匿名的匿名数据集,并将之发布。
[0018] 步骤4中,仅在检测被泛化的属性值集合中被泛化的属性值个数m>0且实际分裂 次数n<最大分裂次数h时,才从被泛化的属性值集合中选取待分裂的被泛化的属性值,并 对被选出的被泛化的属性值进行分裂;而在属性值个数m < 0或实际分裂次数η 2最大分裂 次数h时,则跳转到步骤8。
[0019] 步骤4中,被泛化的属性值的选取过程如下:
[0020] 首先,产生一个范围在[0,1]内的随机数R;
[0021] 其次,在被泛化的属性值集合中,按照下述概率公式从第一个被泛化的属性值开 始计算,如果生成的随机数则将该被泛化的属性值作为待分裂的属性值;如果 则表示该被泛化的属性值不能作为本次分裂的属性值,则重新产生一个随机数 R,并选取被泛化的属性值集合Μ中的下一个被泛化的属性值进行评估;
[0022] 上述概率公式为:
[0023]
[0024] 式中,ε为差分隐私保护参数,DA为所有属性的个数,DNS数值型属性的个数,h为最 大分裂次数,Scored)代表信息增益,j为当前需要评估的被泛化的属性值R v在被泛化的属 性值集合Μ中的序号。
[0025] 步骤7中,根据下述拉普拉斯公式对属性值组合数据表加入统计噪声:
[0026]
[0027]式中,Lap〇是一个函数称之为拉普拉斯函数,ε为差分隐私保护参数,|DA|则分别 代表所有属性的个数。
[0028] 与现有技术相比,本发明将K-匿名技术与差分隐私技术进行有效结合,其能够避 免单独使用K-匿名技术无法保证数据的统计信息不被泄露,而单独使用差分隐私技术只在 保护统计信息的同时会引入大量的噪声,让数据失真程度变大,而降低数据的可利用性的 问题;从而可以在保证医疗数据可用的前提下,有效防范医疗数据在收集和发布时所带来 的病患信息泄露的风险,进而发挥医疗数据在统计和挖掘时的效用。
【附图说明】
[0029] 图1为医疗数据发布的差分隐私保护方法的流程图。
[0030] 图2为年龄的属性值层次图。
[0031]图3为性别的属性值层次图。
[0032]图4为疾病的属性值层次图。
[0033]图5为职业的属性值层次图。
【具体实施方式】
[0034]下面结合具体实施例,对本发明进行进一步详细说明。
[0035]本发明所使用的相关名词解释:
[0036] 1.属性:数据表中的每一列是一个属性,例如年龄、性别、职业、疾病等。
[0037] 2.属性值:在每一个属性对应的属性值层次树中,每一个节点都可以作为该属性 的属性值,只是不同层次的节点所代表的语义范围不同。例如,在职业的属性值层次树中, 蓝领的两个子节点分别为技工和非技工,则我们可以将属性值技工和非技工泛化为蓝领 (即通过泛化可以用属性值层次图中的上层节点的属性值代表与之关联的下层属性值);同 样也可以通过分裂过程,用属性值层次树的其中一个下层节点属性值来取代上层属性值。 [0038] 例如:两条经过预处理的记录如下:
[0039]表 1

L〇〇4iJ 则只对职业这个属性向上泛化一层可将两记录表示为:
[0042]表 2 「00431 L0044J 分裂过程刚好是泛化过程的逆过程
,在上表2中对职业属性进行一次分裂则可以 得到表1。
[0045] 3.被泛化的属性值集合:该处想表达的意思是用多个小的属性值表示语义范围更 大的属性值。
[0046] 例如,用技工和非技工表示蓝领这个属性值,在实际代码实现过程中就是直接将 属性值层次树中多个最底层的属性值(即叶节点)进行组合用来代表上层的不同属性值。
[0047] 4.属性值组合:通过不同属性的不同属性值之间的组合可以表示不同的数据。如 下表3四个属性的属性值分别为[1,99)、性别、职业、疾病,则{[ 1,99),性别,职业,疾病}就 是一个属性值组合,若四个属性的属性值(1-37]、男、白领、外科疾病,则{(1-37],男,白领, 外科疾病}也是一个属性值组合。而属性值组合所代表的记录的条数则是表3中对应的计数 2,而通过表3可以表示原始数据集中表4所代表的两条数据记录。每一次的分裂过程实际上 是对某一个泛化的属性值按照属性层次树进行划分,形成新的属性值组合的过程,最后通 过不同的属性值组合及其计数重构出满足隐私匿名要求的发布数据集。
[0048] 表3 「00491
属性值。例如,经过预处理后得到的最原始的被泛化的属性值集合可以表示为{[1,99),性 另IJ,职业,疾病};经过对属性性别进行了一次分裂后得到的被泛化的属性值集合可以表示 为{[1,99),职业,疾病},此处不表示为{[1,99),男,女,职业,疾病}是因为属性值男、女是 最原始未经过泛化的属性值,因而无法进行分类操作所以不加入其中;如果再对年龄进行 一次分裂则被泛化的属性值集合可以表示为{[1,37),[38,99),职业,疾病}。
[0054] 5.属性值组合数据表:该数据表用来保存每个属性值组合所代表记录的条数,上 表3和4均可以认为是分裂过程中的一个属性值组合数据表。
[0055] 6.状态层次树:不同属性的状态层次树存放原始数据集中该属性不同属性值的统 计信息。该树依据原始数据集构建。例如,数据集如表4,则属性年龄、性别、疾病和职业的状 态层次树如图2-5。
[0056] -种医疗数据发布的差分隐私保护方法,如图1所示,包括如下步骤:
[0057] 步骤1、通过数据预处理,得到所有属性的属性值均泛化到最高的属性值组合数据 表和属性状态层次树。
[0058] 在处理过程中需要将电子记录中的标识符进行删除,并按照用户需求去掉部分无 关的属性并生成合适的预处理数据集,具体包括如下步骤:
[00
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1