一种数据对比方法

文档序号:10535051阅读:723来源:国知局
一种数据对比方法
【专利摘要】本发明实施例公开了一种信息标引和检索方法,所述方法包括:A、确定待对比的数据所在的各个树形结构;B、将所述各个树形结构分别进行一维化抽取,以获取所述各个树形结构的一维原语链表;C、将所述各个树形结构的一维原语链表的叶节点进行相似性匹配,以获取匹配后的相似叶节点组合;D、将所述相似叶节点组合中的数据进行对比。由上,本发明实施例有利于有效提高数据对比效率和准确度,降低后续使用数据的使用成本。
【专利说明】
一种数据对比方法
技术领域
[0001 ]本发明涉及信息技术领域,特别涉及一种数据对比方法。
【背景技术】
[0002] 在互联网医疗领域中,在根据纸质病历进行数据录入时,为了保证录入数据的准 确性,需要通过双盲录入并将病历数据进行结构化处理以能够反映出实际的病历数据结 构。在双盲录入结束后需要对两个录入员录入的数据进行一致性校验。由于医疗行业的领 域特性,录入的病历数据进行结构化后,往往会形成深层嵌套树结构数据。由于深层嵌套树 结构复杂,在对双盲录入数据进行数据比对时,会影响数据对比的对比效率和准确度,增大 了后续使用数据的使用成本。

【发明内容】

[0003] 有鉴于此,本发明的主要目的在于提供一种数据对比的方法,有利于有效提高数 据对比效率和准确度,降低后续使用数据的使用成本。
[0004] 本发明实施例提供一种数据对比方法,包括以下步骤:
[0005] A、确定待对比的数据所在的各个树形结构;
[0006] B、将所述各个树形结构分别进行一维化抽取,以获取所述各个树形结构的一维原 语链表;
[0007] C、将所述各个树形结构的一维原语链表的叶节点进行相似性匹配,以获取匹配后 的相似叶节点组合;
[0008] D、将所述相似叶节点组合中的数据进行对比。
[0009] 优选地,所述步骤B包括:
[0010]获取各个树形结构中从根节点到叶节点的路径;
[0011] 生成所述路径上的每级节点对应的抽取原语,并将所述抽取原语串联成一维原语 链表;
[0012] 其中,当所述叶节点为同质结构体数据时,为所述叶节点生成指定原语。
[0013] 优选地,所述步骤B还包括:
[0014] 根据唯一,性哈希对所述一维原语链表进行哈希,以获取结构一致的哈希值。
[0015] 优选地,当所述叶节点为同质结构体数据时,所述步骤C包括:
[0016] 根据所述哈希值和数据点加权因子对所述各个树形结构的一维原语链表的叶节 点进行相似性匹配,以获取匹配后的相似叶节点组合。
[0017] 优选地,所述步骤C还包括:
[0018] 若所述各个树形结构的一维原语链表的对应位置的叶节点不匹配,则将所述对应 位置的相邻位置的指定数量的叶节点进行匹配。
[0019] 优选地,所述步骤C还包括:
[0020] 在每获取到一组匹配的相似叶节点组合后,对所述叶节点组合进行排除标记。
[0021] 优选地,所述步骤C还包括:
[0022] 将所述相似性匹配结束时未获得匹配的叶节点进行缺失标记。
[0023] 优选地,所述步骤D还包括:
[0024] 将所述数据对比结果中具有差异的部分进行数据差异标记。
[0025] 由上可以看出,本发明提供了一种数据对比的方法,有利于有效提高数据对比效 率和准确度,降低后续使用数据的使用成本。
【附图说明】
[0026] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其它的附图。
[0027] 图1为本发明实施例提供的一种树形结构数据对比方法流程示意图;
[0028] 图2为本发明实施例提供的一种树形数据结构示意图。
【具体实施方式】
[0029]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0030] 为克服现有技术中的缺陷,本申请实施例提供一种树形结构数据对比的方法,有 利于有效提高数据对比效率和准确度,降低数据后续的使用成本。
[0031] 实施例一
[0032] 如图1所示,为本发明实施例中提供的一种树形结构数据对比的方法,具体步骤如 下:
[0033] S101,确定待对比的数据所在的各个树形结构。
[0034] 在本实施例中,根据用户输入的数据对比指示确定待比对的数据集合,并进一步 获取该数据集合所在的树形结构。例如,用户输入W数据对比指示后,系统分别获取双盲录 入中两个录入员录入的W数据所在的树形结构,假设该树形结构分别为A树和B树。如图2所 示,为A树和B树的结构示意图。
[0035] S102,将所述各个树形结构分别进行一维化抽取,分别获取所述各个树形结构的 一维原语链表。
[0036]在本实施例中,分别对S101中的A树和B树进行一维化抽取,具体为:
[0037] A、分别获取A树和B树中根节点到达各个叶节点的各条路径;
[0038] B、为各条路径上的各个节点生成对应的抽取原语,并将所述抽取原语分别串联成 一维原语链表;其中,若某一路径上的叶节点为同质结构体数据时,为该同质结构体数据生 成特殊的具有标记性的SSD原语,以方便后续进行对比。该路径上的其他节点的原语的生成 按照常规生成方法生成,在此不再赘述。若某一路径上的叶节点不是同质结构体数据时,则 该路径上的节点的原语的生成都按照常规生成方法生成,在此不再赘述。例如,如图2所示, 其中,对于A树中al. 2其下子节点为一组同质结构体数据,即,叶节点Ml、M2、M3为同质结构 体数据。对于B树中al.2其下子节点同样为一组同质结构体数据,即,叶节点M3、M1为同质结 构体数据。
[0039] C、根据唯一,性哈希对该一维原语链表进行哈希,获取结构一致的哈希值,以方便 后续进行相似链表的匹配。
[0040] 由上,分别获取得到了 A树和B树的结构一致的一维原语链表集合A'和B'。具体如 下所示:
[0041 ] A树的一维原语链表为:
[0042] aalal. 1
[0043] aalal. 2M1
[0044] aalal.2M2
[0045] aalal.2M3
[0046] aalal. 3
[0047] aa2
[0048] B树的一维原语链表结构类似,为:
[0049] aalal. 1
[0050] aalal.2M3 [0051 ] aalal.2M1
[0052] aalal. 3
[0053] aa2
[0054] S103,将一维原语链表集合A'和B'中的一维原语链表中的叶节点进行相似匹配。
[0055] 在本实施例中,根据哈希值和数据点加权因子,分别将一维链表集合A'中的一维 链表与一维链表集合B'中的一维链表中的叶节点进行匹配,以获取到匹配后的叶节点组 合。
[0056] 具体地,根据所述一维原语链表中是否有指定原语,可以判断该一维原语链表中 是否包含SSD结构。其中,若一维原语链表中不含有SSD原语,则说明该一维原语链表中不包 含SSD结构,则可以根据路径信息和哈希值直接找到两个集合的链表中对应的叶节点进行 字符串对比即可。
[0057] 若一维链表中若一维原语链表中含有SSD原语,则说明该一维原语链表中包含SSD 结构,则需要进行相似性匹配;具体如下:
[0058]例如,当对A树中的a 1.2下的子节点与B树中的a 1.2下的子节点进行相似性匹配 时,具体为:
[0059] 首先,将A树中的Ml中的al. 2.1分别对比B树中的Ml和M3中的al. 2.1,并分别产生 一个分数si和sr,以及点位加权值为wi和wr。
[0060] 其次,将A树中的Ml中的al. 2.2分别对比B树中的Ml和M3中的al. 2.2,并分别产生 一个分数S2和S2',以及点位加权值为W2和W2'。
[0061] .....
[0062]假设M结构体中一共有n个点位,以此类推,一共对比产生Sm个分数,点位加权值为 ffn〇
[0063] 那么相似性结果分别为:
[0064] TotalScore(S*)l = SlXWl+S2XW2+S3XW3+....SnXWn
[0065] TotalScore(总分)2 = S1,XW1+S2, XW2+S3, XW3+. ? ? .Sn,XWn
[0066]为了保证匹配后的相似度,设定一个分数阈值。最终totalScore分数最高,且超过 设定的分数阈值时,则配对的数据结构体相匹配。例如TotalScore(总分)1分数最高,且 Total Score (总分)1大于设定的分数阈值,贝ijA树中的Ml和B树中的Ml相匹配。匹配完成后, 则将相匹配的A树中的Ml和B树中的Ml进行匹配成功标记,以便后续配对时不再进行调用, 提尚对比效率。
[0067]同理,可以将A树中的M2与B树中剩余的M3进行配对。假设得到的该配对的 TotalScore分数低于设定的分数阈值,则匹配不成功,则进行缺失标记,例如标记为B树中 的M2缺失,以便后续进行进一步的处理。
[0068] 同理,可以将A树中的M3与B树中的M3进行配对。假设得到的该配对的TotalScore 分数高于设定的分数阈值,则匹配成功。
[0069] 上述两个示例树A树和B树,按上述算法匹配后,最终匹配结果如下:
[0071] 考虑到在实际应用中,录入项的排序不会发生大的变化,所以在遍历时,只遍历两 个树对应位置的元素以及该位置相邻位置的元素,例如,假设A树和B树中M结构体的点位较 多时,当A树中Ml与B树中对应位置的M3不匹配,则进一步将A树中Ml与B树中对应位置的M3 的相邻位置的几组数据进行匹配。其中,为了提高对比的准确性和效率,对前述的相邻位置 的数据的组数设定一个组数阈值,例如该组数阈值可以是5。
[0072] 需要说明的是,若B树SSD叶节点的数量比A树SSD叶节点的数量多,在相似性匹配 结束后,将B树中剩余的未获得匹配的叶节点进行缺失标记,以便后续进行处理。
[0073] S104,对相似叶节点组合中的数据进行对比。
[0074] 在本实施例中,通过对匹配到的相似链表的叶节点的数据的精确字符串进行对 比,即可得到双盲录入时的差异性。
[0075]将对比得到的具有差异性的部分进行标记,以备后续的进一步的处理。
[0076]综上所述,本申请实施例提供了一种树形结构数据对比的方法,有利于有效提高 数据对比效率和准确度,降低数据后续的使用成本。
[0077]实施例二
[0078]为了进一步说明本申请,本实施例中提供了一种具体应用场景下的树形结构数据 对比的方法,具体步骤如下:
[0079] S201,根据用户输入的数据对比指示确定待比对的数据集合,并进一步获取该数 据集合所在的树形结构。例如,用户输入患者Z的在W医院的某次住院治疗中喉镜检查的数 据对比指示后,系统分别获取双盲录入中两个录入员录入的患者Z在W医院的某次住院治疗 中喉镜检查的数据所在的树形结构,如图2所示,假设该树形结构分别为树A和树B,则待对 比的数据为树A和树B的数据。
[0080] S202,将所述各个树形结构分别进行一维化抽取,以获取所述各个树形结构的一 维原语链表。
[0081 ]在本实施例中,分别对S201中的A树和B树进行一维化抽取,具体为:
[0082] A、分别获取A树和B树中根节点到达各个叶节点的各条路径;
[0083] B、为各条路径上的各个节点生成对应的抽取原语,并将所述抽取原语分别串联成 一维原语链表;其中,若各条路径上的节点中为同质结构体数据时,为该同质结构体数据生 成特殊的具有标记性的SSD原语,方便后续进行对比。该路径上的其他节点的原语的生成按 照常规生成方法生成,在此不再赘述。若某一路径上的叶节点不是同质结构体数据时,则该 路径上的节点的原语的生成都按照常规生成方法生成,在此不再赘述。如图2所示,其中,对 于A树中al. 2其下子节点为一组同质结构体数据,即,叶节点M1、M2、M3为同质结构体数据。 对于B树中al. 2其下子节点同样为一组同质结构体数据,即,叶节点M3、M1为同质结构体数 据。
[0084] 其中,A树中的叶节点Ml、M2、M3分别对应X录入员录入的3组信息,具体为:
[0086] 其中,B树中的叶节点M3、M1分别对应Y录入员录入的2组信息,具体为:
[0088] 对于两个录入员录入的A树和B树中的其他叶节点的信息,由于可以直接进行相关 对比,所以在此不再赘述。
[0089] 根据唯一性哈希对该一维原语链表进行哈希,获取结构一致的哈希值,以方便后 续进行相似叶节点的匹配。
[0090] 由上,分别获取得到了 A树和B树的结构一致的一维原语链表集合A'和B'。具体如 下所示:
[0091] A树的一维原语链表为:
[0092] aalal. 1
[0093] aalal. 2M1
[0094] aalal.2M2
[0095] aalal.2M3
[0096] aalal. 3
[0097] aa2
[0098] B树的一维原语链表结构类似,为:
[0099] aalal. 1 [0100] aalal.2M3
[0101] aalal.2M1
[0102] aalal. 3
[0103] aa2
[0104] 需要说明的是,图2仅为示意图,其中的[1213中的&1.2.1、&1.2.2、 &1.2.3仅示 意性的表示录入员录入的信息。
[0105] S203,将一维原语链表集合A'和B'中的叶节点进行相似匹配。
[0106] 具体地,根据所述一维原语链表中是否有指定原语,可以判断该一维原语链表中 是否包含SSD结构。其中,若一维原语链表中不含有SSD原语,则说明该一维原语链表中不包 含SSD结构,则可以根据路径信息和哈希值直接找到两个集合的链表中对应的叶节点进行 字符串对比即可。
[0107] 若一维链表中包含SSD结构则需要根据哈希值和数据点加权因子匹配相似叶节 点;具体如下:
[0108]例如,当对A树中的al. 2其下的子节点与B树中的al. 2其下的子节点进行相似性匹 配时,具体为:
[0109]首先,将A树中的Ml中的"时间"分别对比B树中的Ml和M3中的"时间",并分别产生 一个分数si和sr,以及点位加权值为wi和wr。
[0110]其次,将A树中的Ml中的"部位"分别对比B树中的Ml和M3中的"部位",并分别产生 一个分数S2和S2',以及点位加权值为W2和W2'。
[0111] .....
[0112]假设M结构体中一共有n个点位,以此类推,一共对比产生Sm个分数,点位加权值为 ffn〇
[0113]那么相似性结果分别为:
[0114] TotalScore(S*)l = SlXWl+S2XW2+S3XW3+....SnXWn
[0115] TotalScore(总分)2 = S1,XW1+S2, XW2+S3, XW3+. ? ? .Sn,XWn
[0116]为了保证匹配后的相似度,设定一个分数阈值。最终totalScore分数最高,且超过 设定的分数阈值时,则配对的数据结构体相匹配。例如TotalScore(总分)1分数最高,且 Total Score (总分)1大于设定的分数阈值,贝ijA树中的Ml和B树中的Ml相匹配。匹配完成后, 则将相匹配的A树中的Ml和B树中的Ml进行匹配成功标记,以便后续配对时不再进行调用, 提尚对比效率。
[0117] 同理,可以将A树中的M2与B树中的M3进行配对。假设得到的该配对的TotalScore 分数低于设定的分数阈值,则匹配不成功,则进行缺失标记,例如标记为B树中的M2缺失,以 便后续进行进一步的处理。
[0118] 同理,可以将A树中的M3与B树中的M3进行配对。假设得到的该配对的TotalScore 分数高于设定的分数阈值,则匹配成功。
[0119] 上述两个示例树A树和B树,按上述算法匹配后,最终匹配结果如下:
[0122]考虑到在实际应用中,录入项的排序不会发生大的变化,所以在遍历时,只遍历两 个树对应位置的元素以及该位置相邻位置的元素,例如,假设A树和B树中M结构体的点位较 多时,当A树中Ml与B树中对应位置的M3不匹配,则进一步将A树中Ml与B树中对应位置的M3 的相邻位置的几组数据进行匹配。其中,为了提高对比的效率,对前述的相邻位置的数据的 组数设定一个组数阈值,例如该组数阈值可以是5。
[0123] 需要说明的是,若B树SSD叶节点的数量比A树SSD叶节点的数量多,在相似性匹配 结束后,将B树中剩余的未获得匹配的叶节点进行缺失标记,以便后续进行处理。
[0124] S204,对相似叶节点组合中的数据进行对比。
[0125] 在本实施例中,通过对匹配到的相似链表的叶节点的数据的精确字符串进行对 比,即可得到双盲录入时的差异性。
[0126] 将对比得到的具有差异性的部分进行标记,以备后续的进一步的处理。
[0127] 综上所述,本申请实施例提供了一种树形结构数据对比的方法,有利于有效提高 数据对比效率和准确度,降低数据后续的使用成本。
[0128] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种数据对比的方法,其特征在于,包括以下步骤: A、 确定待对比的数据所在的各个树形结构; B、 将所述各个树形结构分别进行一维化抽取,以获取所述各个树形结构的一维原语链 表; C、 将所述各个树形结构的一维原语链表的叶节点进行相似性匹配,以获取匹配后的相 似叶节点组合; D、 将所述相似叶节点组合中的数据进行对比。2. 根据权利要求1所述的方法,其特征在于,所述步骤B包括: 获取各个树形结构中从根节点到叶节点的路径; 生成所述路径上的每级节点对应的抽取原语,并将所述抽取原语串联成一维原语链 表; 其中,当所述叶节点为同质结构体数据时,为所述叶节点生成指定抽取原语。3. 根据权利要求2所述的方法,其特征在于,所述步骤B还包括: 根据唯一1性哈希对所述一维原语链表进行哈希,以获取结构一致的哈希值。4. 根据权利要求3所述的方法,其特征在于,当所述叶节点为同质结构体数据时,所述 步骤C包括: 根据所述哈希值和数据点加权因子对所述各个树形结构的一维原语链表的叶节点进 行相似性匹配,以获取匹配后的相似叶节点组合。5. 根据权利要求4所述的方法,其特征在于,所述步骤C还包括: 若所述各个树形结构的一维原语链表的对应位置的叶节点不匹配,则将所述对应位置 的相邻位置的指定数量的叶节点进行匹配。6. 根据权利要求4所述的方法,其特征在于,所述步骤C还包括: 在每获取到一组匹配的相似叶节点组合后,对所述叶节点组合进行排除标记。7. 根据权利要求4所述的方法,其特征在于,所述步骤C还包括: 将所述相似性匹配结束时未获得匹配的叶节点进行缺失标记。8. 根据权利要求1所述的方法,其特征在于,所述步骤D还包括: 将所述数据对比结果中具有差异的部分进行数据差异标记。
【文档编号】G06F17/30GK105893601SQ201610249104
【公开日】2016年8月24日
【申请日】2016年4月20日
【发明人】侯波林, 官昌战, 罗立刚
【申请人】零氪科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1