书城教材教辅医学信息学
48552800000055

第55章 临床决策支持系统(4)

程序化知识表达:以上提到的基于逻辑的知识表达由真或假短句构成,通过标准的逻辑推理机制得出结果。如在逻辑系统中进行如上例贫血类疾病的诊断则需要遍历与MCV 相关的所有逻辑谓词,找到对象中含有“增大”或“减小”的条目。作为程序化的知识表达法采用的是一种较为精确的方法,不需要采取基于逻辑的搜寻方式。如通过程序化知识表达上例得到:

IF MCV 增大,THEN 可以确定恶性贫血。

IF MCV 减小,THEN 可以确定缺铁性贫血。

程序化知识表达法通过概念的逐步递进协助诊断,使用真实数据对结论进行推断。

这些步骤语句以规则的形式进行表达,MYCIN是使用此类知识表达法的典型例子。

网络化知识表达:由节点和弧构成的网络结构来表达知识内容。其中节点表达事实数据、事件、对象、步骤等等内容,弧表示节点间的相互关联。网络法的灵活性在过去的几十年中得到了很大的改善。例如网络中的节点也可以由某种复杂结构组成,如Minsky提出的Frames。更重要的是网络结构可以表达诸如因果、时间、空间等难以模型化的知识内容。其中决策树和人工神经网络也属于网络化表达的范畴。

结构化知识表达:结构化表示法强调知识应按照某种高度组织的方式打包到预先定义好的块中。第一个广泛采用此类知识表达法的是Minsky 开发框架系统Frames。

Frames 的数据结构复杂,包含数据概念和相关过程化信息,后者用来描述框架内容如何随时间变化的情况。以“食品杂货购买”概念为例,通过此种方法可以表达如下:

概念:食品杂货购买

地点:超级市场

行为:商品选取(过程)

付钱(过程)

除此之外,我们较为熟悉的数据库管理系统(DBMS)提供了另外一种用于知识表达的结构化形式。在临床领域,比较常见的两种数据库是关系数据库和面向对象数据库。

前者基于记录结构,每条记录都包含许多字段。系统会设定一个字段为主键,记录中的其他字段与主键直接关联。一条疾病记录可能由以下若干字段组成:疾病名称,器官,诊断检验,受感人群性别。

数据表中包含多条记录,表中的每一行都包含具有惟一性的一条记录,相应的字段描述此条记录的不同属性,且关系记录中每个字段都包含特定类型的数据,如字符型、数字型、日期型等。

12.5.4知识提取

何为数据、信息和知识?数据作为一种描述,是不具有背景和意义的数字、图像或声音。如19800101只是一个数字,或者可以看做日期,但就数据来说它只是数字,而不表示其他额外含义。信息则是经过格式化、过滤已经综合处理的数据,即数据和数据之间的交错联合产生了新的意义,如19800101可以是一个人的生日,也可是元旦节日。而我们所讨论的知识则是信息之间交互得到的一般性客观规律描述。

知识工程是面向知识提取的一门科学,也是构建知识库的过程。知识工程化人员需要具备知识表达、工具选择以及人工智能语言等多方面能力,以便与某一领域专家合作获取构建相应知识库的必需信息,进而开发出专业的专家系统。但至今为止,这一系列的工作并没有完善的方法学支持。即便具备了各种需要的环境、语言或其他工具,知识提取的过程仍是十分困难的。

某一领域专家和知识工程人员合作的最大挑战是两者在对方的领域内,即使经过了长时间的学习,前者依然难以掌握知识工程的方法,后者对专业知识的价值和重要性的区分能力与学科专家相比仍然有巨大的差距。因此,在知识提取的过程中,两类人员如何在知识表现形式方面达成一致,确定合适的推理机制,以及系统成功建立后的维护问题则成为了巨大的挑战。由此可见,医学信息学是一门独立的学科,从事该专业人员与一般的医务人员和计算机人员相比,在知识提取专业能力上是无可取代的。

12.5.5知识与本体

知识库就是客观世界中的事实数据依照某种规则进行编码组合而成的集合。但是复杂的CDSS 不仅需要此类数据,还需要某一领域包含的较为深层次的关键概念。如阐明疾病的时间过程或是血液在血管内流动的状况就需要较为深奥的知识,而不仅仅用简单描述的词汇。本体知识工程正是为了解决此种高层次词汇变换的问题而诞生的,所得到的知识架构我们就称其为本体(ontology)。Gruber 把本体定义为一种对共享概念、正规、精确、详细的说明。因此,在知识领域中,本体被认为是实现信息沟通、计算机推理与重用、以及知识管理的基础。

为加强本体用户和构建者间的信息沟通,术语和概念需要有清晰的定义并实现标准化。为能合理使用所有的概念术语和关联,概念术语间需要有关联属性的定义及存取算法规则。通过编码本体中的知识内容,软件设计者可以更容易理解如何与知识库打交道,以创建智能系统。在创建本体过程中,逐步搭建出来的框架内容,由于其机制和视角层次较高,这一框架可以使知识管理任务变得相对容易,实现逐步扩展知识内容并维护知识内容的目的。

本体试图以一种层级化的方式表达某专门领域乃至整个世界。依据领域涉及的基础概念,通过标准化的方式提取相应的对象、时间和处理流程。层级化概念的最高层级也是最抽象层级被称之为“高阶本体”。它是得出最终运行本体的概念基础。下图就是一个有关生物的简单的高阶本体。在生命体这一最高层级中,包括动物、植物和微生物。如果我们所设计的系统要求定义“人类的食物”,我们就会利用该本体便捷、灵活地从动物、植物和微生物中找到“非人类”,“可食用植物”、“可食用真菌”等等。

据此,利用本体快速、有效地生成有关生命体的各种概念组配。

让我们先明确一些关于本体的基本概念。

继承:特定的人或植物可以被认为是一类对象,并从其所有源类中继承属性。

关联:指类之间的连接,用于定义不同两类内容之间的相互作用。

到目前为止,基于本体的CDSS 还不多见,但的确有一些CDSS 已经使用本体的方法表达并管理生物医学方面的知识内容。其中比较着名的是一体化医学语言系统(unifying medical language system,UMLS)。作为美国国家医学图书馆(NLM)投资管理的项目,UMLS旨在改进医学相关资源知识共享交互的问题。它成为多种词汇编码系统之间的交互桥梁,这些系统中比较着名的包括ICD 9,CPT,SNOMED和MeSH。而与UMLS类似的构建于本体之上的系统还包括GALEN,SNOMED CT 等。

事实上,目前已经有一些比较优秀的本体开发与编辑工具,如protégé,可以用来构建以本体为基础的决策支持系统,达到知识库内容共享的目的。在某些集成度高的系统中、本体为其子系统提供知识库中的术语和概念、关联以及继承相关系统的属性。如电子病历(EMR)或科研数据库通过本体可以实现数据共享使用。

12.5.6编码、分类、命名法和词汇

通过计算机来管理数据需要依据某些方法来获取信息,从而帮助所有临床数据的使用者都能够有效地利用数据。美国医学研究院(IOM)在1992年发表的关于电子病历的报告中详细阐述了纸质记录在辅助医疗决策的过程中所面临的问题。纸质记录在内容和功能方面出现的问题必须要在电子系统中得到有效解决。报告称如何获取详细的、可供分析的电子化临床信息是医学信息学领域普遍存在的疑问。目前公认,术语集尚未得到广泛应用,而且缺乏对术语集的标准化定义。为有利于进一步讨论,我们首先要明确编码、分类、命名以及可控词汇之间的异同。

编码:用于概念沟通的过程中,以减少信息总量。

分类:为某领域内的概念规则系统。它包括暗含或明确的顺序规则,如ICD 9分类。

命名:允许通过术语组合的方式形成新的概念,如SNOMED的编码。如果分类与命名不同,可控临床词汇(CCV)的概念是难以定义的。依据Cimino 的“可控临床词汇的必备要素”所述,CCV可以被看做是粒度非常小的术语集,按照预先定义的层级结构进行排列,以此来捕获和表达详细的临床数据。尽管目前尚未有关于CCV精确的定义,Cimino的“可控临床词汇的必备要素”仍然提供了非常实用的方法,这篇文章对于帮助理解和分析构建系统所应具备的特性、功能和结构有着指导作用。Cimino 所提出的标准满足了在设计、管理以及使用临床词汇的要求,对于术语技术的使用者提供了有益的指导。

通常,填写临床问题列表和下达检验医嘱是相对简单的数据录入任务,可以通过列表选取的方式实现。但是在初级医疗阶段中,通过此种方法录入患者完整的病史和所有的检查内容是相当冗长乏味的。这时就需要在效率和表达能力方面进行权衡,作出某些牺牲。比如通过使用模板的方法能够加速数据录入,但同时可能导致临床描述内容的极大相似以及某些细节内容的消失。反之,开发智能化的术语录入提示模块确实能够为用户的录入提供相当大的帮助,但编程逻辑显然会变得更加复杂,同时会带来对于录入内容进行再次确认的工序。另外自动化录入可能造成术语选取错误。

除此之外,由两个或多个原子概念组合而成的复合概念能够极大地增强词汇的表达能力,这种复合概念被称之为组配性。为了保证概念组合的有效性,避免无意义复合概念的出现,需要构建相应的术语服务器,以提供字典匹配、词汇组合等关键功能,如GALEN术语服务系统。然而,即使在大量术语工具的支持下,词汇管理过程中依然会出现许多意料之外的情况,为用户提供有用且有保障的词汇服务并不像设计临床术语那样简单。

另一个问题是统一术语集与区域使用习惯术语之间的冲突问题。不同区域,如省市,地区乃至不同医院间表达同一个临床概念时所用的词汇很可能并不相同。在这种情况下,如何保障术语共享的一致性和灵活性就成了两难的问题。通过某个中央机制完全统一全部用词显然并不现实。目前指定的相对可行的方法是建立术语服务器,统一的把标准术语和地方习惯术语相映射起来。但是在对照过程中仍然会出现两映射术语含义不一致的情况。

词条的组配同时给系统设计人员在数据库设计层面带来了另一个问题。某些复杂的概念在术语集中是原子化存在的,所以很容易通过选择对应代码的方式在临床信息系统中记录相应的概念内容,也就是所谓的先组式。在接口和数据库的层面,先组式降低了复杂性,在对概念进行编码的过程中没有存疑的部分。所有的用户,无论身处何地都会使用同样的方法进行编码。但是,在无法通过独立的原子概念进行表达的情况下,就需要通过组合原子概念的方法实现复杂概念的表达,被称之为后组式。尽管后组式具有更强的表达能力,但可能会出现使用不同的原子概念组合表达同一复杂概念的情况发生,甚至在使用相同含义的代码时,没有关于代码排序的规定也是一个问题。举例来说,如果使用4个代码来表达1个概念,那这4个代码的全排列可能有24个,存储在数据库中会导致数据存取多入口的问题。除非有一个权威的数据库可以管理所有的概念和术语,否则很容易产生不同机构都在按照自身的意愿创建同一概念的不兼容的组合版本,从而为数据分析带来困难。这也是为何要有一个标准的临床术语集的原因。

12.5.7人机交互

根据Wyatt 等人的研究,决策支持技术之所以未能得到广泛采用,很大程度上是因为绝大多数的系统设计目标与临床实际需要解决的问题不一致。比如一些系统只是严格限制了诊断假设的数量,很少有系统可以帮助临床人员鉴别诊断和建议治疗方案。相比较而言后者具备的特点恰恰是临床人员易于且愿意接受的。事实上对于系统设计者,正确识别问题并解决才是CDSS 的重点。

除此之外,Wyatt 还针对CDSS 系统设计者提出了几个需要注意的问题。首先是不要在计算机设备和与CDSS 无关的软件上占用太多的精力。在项目开始初期就要把主要力量用在解决潜在使用者最关心的内容,而不是过多考虑诸如使用何种语言、机器配置或者开发环境之类的问题,以免喧宾夺主,忽略了最重要的技术和问题处理流程。其次,设计者应该偏重于解决方案模型设计,与未来使用者清晰明确地交流。最后一点,除了系统本身,设计者还需要考虑系统实施所在机构。因为机构的态度和支持力度至关重要,尤其是当考虑到CDSS 可能造成各种机构内部的变化、人员变动、资金、管理的变化的情况。

所以,CDSS 成功实施的保障需要有机构内部强有力政策的支持。