http://www.sblb.net/lunwxb13.htm
医疗诊断专家系统开发的新思想与新方法
梁嘉骅 王双惠 李常洪 刘惠生 刘剑波 刘剑锋
摘要 从70年代开始,国内外投入巨大的力量对医疗专家系统进行与开发,但实际能投入临床使用的为数极少.本文分析了过去医疗专家系统开发失败的原因,并提出新的思想和方法——诊断治疗支持系统.
关键词: 医疗诊断专家系统,诊断治疗支持系统
分类号: TP393
THE NEW IDEAS AND METHODS OF THE DEVELOPING OF
MEDICAL DIAGNOSIS SYSTEM
Liang Jiahua Wang Shuanghui Li Changhong
(Shanxi University,Taiyuan 030006)
Liu Huisheng Liu Jianbo Liu Jianfeng
(Shanxi SBLB Insititute of Traditional Chinese Medicine,Taiyuan 030012)
Abstract Great efforts have been laid since 1970's both in domestic and abroad on the study and development of medical expert system(MES) of which,however,only few were put into clinical practice.
This paper analyzes the reasons for the failure of MES in it's previous developing,also put forward the new idea and method-diagnosis and treatment support system(DTSS).
Key words:medical diagnosis expert system(MDES),diagnosis and treatment support system(DTSS)
0 引 言
在70年代,决策支持系统与专家系统在局部领域取得的成功激发了医学、计算机与系统设计等方面的专家对医疗专家系统开发的热潮,在国内外投入了巨大的力量进行研究与开发.过去所研究和开发的医疗专家系统主要有以下4个类型:咨询型医疗专家系统、教学辅助型医疗专家系统、临床诊断与治疗型医疗专家系统和与医疗检测仪结合的自动诊断识别型医疗专家系统,但是真正能为医生所接受并投入实际临床使用的为数极少.医疗诊断领域是信息处理技术的一个前景十分广阔的应用领域.但是,要想在该领域中取得真正有意义的发展,必须认真研究导致过去医疗专家系统失败的根本原因,并提出确实符合医生在临床过程中的需要的新思想与新方法.
1 医疗专家系统所存在的问题
纵观过去医疗专家系统的研究和已开发的成果,其失败的主要原因可以综合为以下几个方面:
1.1 未能把握当代医学发展的根本导向
任何技术要在一个特定的领域中取得有意义的应用和发展,必须与该领域发展的主导方向紧密结合.早在60年代末Rustein在《医学中即将到来的革命》一文中提出现代医学所面临的4个问题:(1) 医疗费用的不断增长,超出了个人和社会的承受能力;(2) 知识爆炸性的增长与混乱,用人工阅读方式无法全面掌握;(3)医疗专家地区分布不均,大部分地区缺少高水平的医生;(4) 需要高水平医疗服务的人越来越多与可能提供的高质量服务产生激烈的矛盾.笔者认为,另外一个更为重要的危机是尽管不断使用高科技的诊断技术,但误诊误治率仍居高不下.解决现代医疗诊断中的五大危机,特别是如何有效地降低医疗诊断费用和误诊误治率,应该是信息技术在医疗诊断领域研究开发的主导方向.但是过去医疗专家系统的开发与研究根本未认真考虑这些方面的问题,而是醉心于总结某个或某些专家的经验去建造所谓专家系统.这样就产生了两个根本性的错误,一是,不了解这些专家的经验也面临着迅速发展的考验,需要不断地进行变革;二是,忽略了医疗诊断过程的复杂性和特殊性.这样的医疗专家系统,自然不符合现代医学革命发展的需要.
1.2 把复杂系统的简单化、机械化
过去医疗专家系统的研究与开发,错误地认为医生在诊断治疗中的思维过程可以形式化,他们致力于研究、整理医疗专家的知识和在临床诊断医疗过程中的推理规则,认为只要把专家知识与推理规则进行形式化、规格化,就可以构造出具有专家水平的医疗专家系统.他们忽视了这样一个重要事实:人类所患的疾病具有多样性、多变性和不确定性;医疗专家对患者进行诊断治疗的过程是一个面对复杂现场的创造性的思维过程,它不是形式化的推理过程,而更需要“直觉”、“顿悟”与 “灵感”.据杜治政《776例误诊(治)原因个案统计分析》等许多研究表明,产生误诊(治)率居高不下的根本原因是医生在临床诊断治疗过程中的思维方式的错误,据统计,由此导致的误诊(治)的病例所占的比例高达69%.思维方式的错误并不是因为缺乏基本知识和简单的推理方法,而是由于缺乏面对复杂的病情在思维中产生“直觉”、“顿悟”与“灵感”的能力与素养.过去专家系统和人工智能的研究,把知识的“表示”和“推理”作为核心,把人的认知过程简单化、机械化.这种简单化和机械化的专家系统根本不能帮助医生对复杂的病情进行分析思考,启发医生的正确思维,甚至把医生的思维误导到错误的方向.针对人工智能过去在处理复杂、多变、动态环境问题中的失败,Brook在1991年在悉尼举办的第十二届国际人工智能大会上提出“没有表示,没有推理”的思想和“现场” AI概念.80年代末,钱学森提出在处理开放性复杂巨系统时必须用“从定性到定量的综合集成法”,强调人的主导作用和经验的重要性,主张人机相结合,计算机发挥计算速度快、擅长逻辑运算的特点,而人则发挥自己的感知、形象思维能力.信息处理技术在医疗诊断领域中的应用,不应也不可能开发出简单形式化、规范化的专家系统去替代医生,根本问题是研究针对现场,帮助医生获得所需要的知识和经验,启发而不是替代医生的思维.
1.3 对医生需求的本末倒置
迄今为止,医疗专家系统的研究与开发,可以说仍停留在80年代中后期如笔者所开发的关于类风湿关节病的“中医诊断专家系统”和“三部六病电子计算机诊疗系统”这类静态或半动态“决断”系统的水平上,这种类型的专家系统只支持“断”,而不支持“诊”,由医生对患者进行“诊”(检查),把检查的结果输入计算机,由所谓专家系统去识别患者的病类(“断”).这类系统结构十分简单,只是由病类症状库、诊断标准库、药方库三个库和一个匹配推理器组合而成.尽管一些系统甚至具有所谓的“自学习”能力和模糊判断的表示方式(如笔者所开发的“中医诊断专家系统”),但是仍然属于“决断”型系统的范畴.这样的专家系统不可能真正在临床医疗诊断过程中发挥作用.很显然,会正确进行“诊”的医生必然会“断”,根本用不着这样的专家系统,不会正确“诊”的医生,这样的系统对于他更是毫无用处.产生误诊误治的根本原因在于漏诊,信息处理技术要在医疗诊断的临床实践中得到真正应用,必须适应医生在临床医疗诊断全程中的需要,实现全程支持,特别是要有效地支持“诊”-“断”的交替思维过程,只有这样的系统才能有效降低“诊断治疗代价”和误诊误治率,获得医生的认可,成为医疗诊断的必要的辅助工具.
2 新思路——诊断治疗支持系统
医疗诊断是信息处理技术大有可为的领域,但是要想在该领域取得有效的发展,绝不能简单地把在一些领域中取得成功的专家系统技术直接移植到医疗领域,正好相反,应从过去的专家系统的概念中解脱出来,从医学发展的主流方向,从医生对患者诊断治疗的实际需要出发,研究信息处理技术在该领域中可能发展的途径,提出新思想、概念、方法和技术.本文提出了“诊断治疗支持系统”的新概念和方法(它已应用于笔者所开发的“多媒体大型关节病诊断治疗支持系统”和“医学统一诊断治疗支持系统”中).
2.1 诊断治疗支持系统
90年代,由于管理信息系统(MIS)、决策支持系统(DSS)和专家系统(ES)各自处理问题的局限性和自身所存在的缺陷,未能在管理领域中同时为处理常规和非常规问题提供有效的帮助,提出了“管理支持系统”(MSS)的概念.MSS是把MIS、DSS和ES有机地融合,希望这种融合体能满足现代管理过程的需要,虽然到目前为止,在理论与实践上未见有什么突破性的进展,但不失为一种有启发性的新思路,本文把这种思想引入诊断治疗领域,提出“诊断治疗支持系统”的概念、思想和实现的方法.
“诊断治疗支持系统”是面向临床诊断治疗全过程的“人-机”交互综合集成系统,它针对的是临床现场中医生对患者诊断治疗的行为过程和医生要求得到的帮助;它通过医生和系统的对话,为医生在诊断治疗的全程中提供所需的知识、经验、方法、模型来帮助医生准确思维,达到有效地降低医疗费用的目的;“诊断治疗支持系统”同时完成在诊断治疗过程中患者病历的自动生成、病历管理、疗效自动分析和统计等常规管理工作,实现患者病历生成和管理自动化.
2.2 临床诊断治疗支持子系统
“临床诊断治疗支持子系统”是诊断治疗支持系统的核心.
2.2.1 系统开发的目的与原则
诊断治疗支持子系统的开发,是要求系统能为医生在临床诊断治疗过程中提供知识、经验、方法、模型来帮助和启发医生的正确思维,达到有效地降低误诊误治率和医疗费用的双重目的,以符合当今医学由“生物医学”向“生物-心理-社会医学”转变的导向的需要.为此,该子系统的研究与开发应遵循以下原则.
①社会价值原则
本系统的研究与过去所开发的专家系统根本不同,它需要研究开发一种新方法,能帮助医生寻找出一条有效降低诊断治疗的社会费用的诊断治疗途径.
②帮助和启发思维原则
本系统对医生的服务宗旨是帮助和启发医生的正确思维.如上文所指出,由于医生思维方式的错误而造成的误诊误治案例占全部案例的69%,因此,帮助和启发医生在临床诊断治疗中正确思维是诊断治疗支持系统研究开发的核心问题.
2.2.2 系统结构
为达到上述的目的和原则,笔者所开发的“多媒体大型关节病诊断治疗支持系统”和“医学统一实验室”中的“诊断治疗支持子系统”由下面7个部分构成:
. 最优启发式逐步搜索“诊”-“断”人-机交互子系统;
. 问题咨询子系统;
. 医疗方案选择支持子系统;
. 诊断结果论证子系统;
. 诊断过程排队与病历自动生成和管理子系统;
. 患者病情与治疗方案动态分析子系统;
. 多患者交替服务子系统.
①最优启发式逐步搜索“诊”-“断”人-机交互子系统
“诊断”是医生对患者进行诊断治疗中最重要的步骤,同时也是医生最需要获得帮助的环节.本文前面已指出过去医疗诊断专家系统失败的重要原因是所开发的系统是决断型系统,它只帮助医生“断”而不帮助“诊”,而医生最需要的却是对“诊”的帮助.在目前的技术条件下不可能实现“诊断”自动化,因此必须密切和医生在临床诊断治疗全过程中的行为,研制开发出一种有效的支持方法.本文提出的“最优启发式逐步搜索‘诊’-‘断’人-机交互”的概念,包含以下几方面内容:
. 逐步搜索“诊”-“断”是对医生对患者“诊断”的行为过程的模拟.医生并不是仅根据患者的主诉就能定出一套完整的“诊”(检查)方案,也不能按照这样确定的检查方案检查,根据检查结果就进行判断.医生对患者进行“诊断”经历:患者主诉——医生对患者的病情进行初“断”——医生确定初步“诊”(检查)方案 ——医生对患者初检——医生对患者的病情进行再“断”——确定再诊方案——最终“决断”.它是一个逐步搜索“诊”-“断”交互的行为过程.诊断治疗支持子系统的主要任务是为医生在这一过程中提供帮助,帮助和启发医生确定“诊”-“断”交互的“检查方案”和“决断”序列.
. 最优是指帮助医生能找到以最低的“诊断”代价获得最佳的决断结果的途径.
. 启发式是指系统对医生在诊断治疗全过程中的帮助是启发医生的正确思维,而不是替代医生的作用.
本文将在以后对该子系统作更详细的介绍.
②诊断结果论证子系统
为了达到有效地防止漏诊误断,诊断治疗支持系统应对医生的诊断结果进行论证.论证系统为医生提供可能否定“判断”结果的信息提示.
③医疗方案选择支持子系统
它根据“检查”和“判断”的结果,为医生选择治疗方案提供以下信息:
. 适合患者情况的各种可选治疗方案信息;
. 按疗效可选治疗方案排队信息;
. 按费用可选治疗方案排队信息;
. 可选方案禁忌信息.
④问题咨询子系统
它为医生在诊断治疗过程中所遇到的疑难问题提供咨询服务,该子系统包括:
. 诊断标准咨询;
. 检查方法与症状判断标准咨询;
. 典型案例咨询;
. 药理咨询.
⑤病历自动生成与管理子系统
一个完整的诊断治疗支持系统,必须具有病历生成与管理子系统,保存患者的病历,为医生和系统自身的自我完善提供:
. 为医生对患者复诊提供患者病情变化和治疗效果动态分析信息;
. 为医生提供典型案例信息;
. 为系统自学习提供信息;
笔者所开发的治疗支持系统中的病历生成和管理子系统,具有不需要医生填写病历的智能化的病历自动生成功能.
⑥患者病情变化与治疗效果分析子系统
它为医生对患者进行复诊和治疗提供患者病情变化与治疗效果的动态信息.
⑦多患者交替服务子系统
过去所开发的医疗专家系统不被医院和医生所接受的而导致失败的一个不可忽视的原因是不了解医生对患者诊断治疗服务过程是一个多患者交替服务的过程.医生对患者只进行常规检查,当患者需要进行非常规检查时,系统需暂时中断,转而为其他患者服务,待到原患者得到非常规检查结果后系统应能复位,继续为原患者服务.多患者交替服务子系统正是为了满足这种需要而设计的.笔者开发的该系统可以为任意多个患者,在时间流程上进行随机交替离位一复位服务的功能.
图1给出临床诊断治疗支持子系统的结构和工作流程.
图1 临床诊断治疗支持子系统结构与工作流程
2.3 最优启发式逐步搜索“诊”-“断”人-机交互系统的方法与模型
2.3.1 最优启发式逐步搜索程序
它具有以下结构:
①医生请求患者讲述就诊原因,i=0(现场信息收集),并获得患者症状集Ai;
②医生把Ai输入系统(医生请求系统帮助);
③系统通过对Ai的分析,为医生提供一个最佳继续检查项目方案集Ci和患者可能所患疾病的独立可信度和总体可信度两个权数的集合Di(系统通过分析对医生的请求进行回答);
④医生对Ci和Di进行分析,确定是否可以对患者所患疾病进行确诊(医生的思考和判断),如果认为可以则诊断结束,否则转⑤;
⑤医生对Ci和Di进行分析(包括调用咨询子系统),确定继续检查排序项目方案集Bi(医生决策);
⑥医生根据Bi排序对患者进行逐项检查,j=1(现场信息收集);
⑦医生把逐项检查结果输入系统(请求系统帮助);
⑧系统进行分析,并给出患者可能所患疾病权集Di的新权集Dji(系统分析、判断和回答);
⑨医生根据Dji判断是否可以确定患者所患疾病,若可以则程序结束,否则转?10?(医生判断);
?10?若i=ni(ni为Ci项目个数),即Ci检查项目全部检查完毕,系统自动 i=i+1,Ai+l=Ai∪Ci,转③,否则,医生请求系统帮助分析,系统自动Ai+l=Ai∪Bi,i=i+1,转③.
2.3.2 Ci与Di的表示
首先介绍几个基本概念
①症状诊断贡献
症状诊断贡献是指该症状对各种疾病的区别能力和对某种特定病的确定能力.
记
Gj——第j种病症对诊断的贡献
Pij——第i种疾病第j种病症出现的概率
Fij——第j种病症对第i种疾病确诊的贡献
其中lognQij是物理学上的熵,表示系统的不确定性测度表示系统的确定性测度,在这里用表示第j种病症对各种病的区分能力;max(Pij)表示对某种特定病的最大确定能力;分别称之为区分度和确定度.贡献率被定义为区分度和确定度的乘积.
②症状检查代价
症状检查代价分为医生检查代价和患者支付费用,在系统中只用患者支付费用作为检查代价,记为Di.
③症状诊断价值
症状诊断价值定义为
Zj=Gj/Dj
④症状判断可信度
设检查出患者呈现的症状集合为A=(a1,…,an),疾病b的诊断标准包含A中的某些症状,研究由A判断而疾病b的可信度.任何疾病的判断都是以诊断标准为依据的,疾病的诊断标准分为两类:一类为必备标准;另一类为选择标准.选择标准只需满足其中若干条则可认为满足.设疾病b的诊断标准中有n1条必备标准,并必须满足n2条选择标准.若症状集满足m1条必备标准和m2条选择标准,则定义由A判断b的独立可信度为
α(A;b)=[(m1+m3)/(n1+n2)]×100
记A中的症状中有n3个症状不属于b的诊断标准,则定由A判断b的总体可信度为
β(A;b)=[(m1+m2)/(n1+n2+n3)]×100
Ci=(ai1,…,ain;zi1,…,zin)
ait为系统建议继续检查病症,zi为相应诊断价值;
⑥Di表示
Di={bi1,…bik;αi1,…,αik;βi1,…,βik}
bit为病名,αit、βit分别为相应的独立可信度和总体可信度.
Di中若αit=βip=100,显然,完全可确定bip为唯一疾病.使用独立可信度和总体可信度的概念和表示法可以有效地帮助医生判断患者的疾病情况.
2.3.3 最佳继续检查集Ci的构建模型
设E={b1,…,bn}为系统研究的疾病集;
G={a1,…,am}为对应的全体病症;
Ai为上述中患者所检查出的病症;
Di={bi1,…,bik;αi1,…,αik;βi1…βik}为与Ai对应有关的疾病集;
Gi为Di的全体症状集;
Wi=Gi/Ci-1为消除独立疑度而需作继续检查的全体项目,为简单起见,记Wi={w1,…,wk}最优启发式逐步搜索“诊”-“断”中的Ci并不是Wi(即不是作无目的的全面检查),而要从Wi中选若干继续检查项目满足:
①诊断总价值最大;
②项目个数最少;
③消除疑度需要达到的相对规定水平.
该问题归结为下面规划问题:
Fit(Ci;bit)表示若选择Ci时可能增加的疾病bit的独立可信度;
θit表示若选择Wi可能增加的疾病bit的独立可信度;
Q为选定的相对规定水平.
作者简介:梁嘉骅 男,教授.male,prof.
作者单位:梁嘉骅 王双惠 李常洪(山西大学环境科学系系统工程研究室,太原 030006)
刘惠生 刘剑波 刘剑锋(山西三部六病中医研究所,太原 030012)
参 考 文 献
1 戴汝为.从现代科学技术体系看今后智能系统的工作.系统研究,浙江:浙江教育出版社,1996.143~156
2 汪成为.以系统思维初探信息工程中的面向对象技术.系统研究.浙江:浙江教育出版社,1996.157~165
3 柳克俊.系统观念与信息系统工程,系统研究.浙江:浙江教育出版社,1996.166~169
4 陈 信.创建人体科学.系统研究.浙江:浙江教育出版社,1996.351~363
5 梁嘉骅,张志耀.决策支持系统发展反思与若干新思想方法.系统工程理论与实践,1990;10(5):10~16
6 梁嘉骅等.系统论、计算机科学与中医学结合对类风湿关节炎病机的探讨.系统工程理论与实践,1988;8(1):63~67
7 张希涛,梁嘉骅.类风湿关节炎病理分析与诊断专家系统.山西大学学报,1993;16(1):40~41
本文原载于《系统工程学报》1999年第1期 |