Page 198 - 《软件学报》2020年第10期
P. 198

3174                                  Journal of Software  软件学报 Vol.31, No.10, October 2020















                   Fig.3    Weights of symptoms in the domain semantic knowledge base for disease diagnosis
                                  图 3   领域语义知识库中症状于疾病诊断的权重
         3.2   疾病相关度的计算
             基于知识库中每个症状 s 的 w s ,可以计算知识库中疾病 d i 与患者输入症状集 S 的相关度,从而为医生或患
         者推荐可能的疾病列表及其相关度排名.
             假定知识库中的症状数为 M,疾病数为 N;患者输入的症状集为 S =                  { , ,..., },1s s  s  ≤  j ≤ M ; 知识库中与该症
                                                                   1  2  j
         状集 S 中的一个或者多个症状具有语义关联的疾病构成的集合为 D =                      {,dd 2 ,..., },1d i  ≤≤ N ; 其中,疾病 d i 在知
                                                                              i
                                                                   1
         识库中关联的症状集合为 S i , S ′ =    S ∩  ; S 疾病 d i 与患者输入症状集 S 的相关度为 w i ,那么 w i 的计算方法如下:
                                 i   i
                                                   ∑   w s
                                                     ∈
                                               w =   sS i ′                                   (2)
                                                   ∑ sS i  w s
                                                i
                                                     ∈
             公式(2)的分子仅考虑了症状集 S 中和疾病 d i 相关联的症状,因为其他症状于 d i 的相关度计算没有作用.而
         分母考虑到了知识库中与疾病 d i 关联的所有症状,因为它们共同作用于疾病 d i 的诊断.
             假定患者输入“咽部异物感”症状,基于公式(2)可以计算出知识库中与此症状关联的疾病的相关度,如后文
         的图 4(a)所示.
         3.3   相关症状推荐
             在筛查出与患者输入症状集 S 相关联的疾病集合 D 以后,还需要对集合 D 中的疾病进行回顾性验证,即根
         据筛查出的疾病集合 D 评估和推荐与患者输入症状集 S 中的症状最相关的其他症状,供医生或患者确认;进而
         基于初始收集到的患者症状集 S 和患者再次确认的症状结果对疾病筛查结果集进行调整,并重新计算调整后
         疾病集 D 中疾病的相关度.
             与患者输入症状集 S 中的症状最相关的症状集 S rel 的推荐算法描述如下.
             输入:患者初次输入的症状集 S.
             输出:与患者输入症状集 S 中的症状最相关的 Top-6(这里仅保留 6 个,可以根据需要调整)个症状组成的症
         状集 S rel .
             S-1:首先从记录的历史输入症状组合中进行推荐.系统自动对不同患者输入和选择的历史症状组合进行记
         录,记录方式为{, ,..., } ,ss 2  s i  f  症状组合中的症状不分先后顺序,f 表示该症状组合发生的频率.如果患者输入的症
                      1
         状集 S 落入某一个或者多个历史症状组合中,则按 f 值从高至低,从某一个或者多个历史症状组合中选取除集合
         S 中的症状以外的 Top-6 个症状作为 S rel ,转到步骤 S-6;如果不够 6 个症状,则以实际可选择的症状数目作为 S rel ,
         转到步骤 S-6;如果没有多余的症状或者 S 未落入任何一个历史症状组合,则转到步骤 S-2.注意,这个步骤选取症
         状时,不考虑症状的权重,而是按症状出现的先后顺序依次选取.
             S-2:从知识库中查询与症状集 S 中的一个或者多个症状具有语义关联的疾病集合 D =                               {,dd 2 ,..., },d i
                                                                                        1
            i
         1≤≤   N , N 表示领域语义知识库中的疾病数量.
             S-3:设疾病 d i 在领域语义知识库中关联的症状集合为 S i ,求 S′ =         S ∪  1  S ∪  2  ...∪  S i .
   193   194   195   196   197   198   199   200   201   202   203