专家系统是什么?把专家经验写成规则的早期 AI
专家系统(Expert Systems)是一种模拟人类专家的知识和经验、在特定领域内解决复杂问题的计算机程序。它是人工智能历史上第一类真正取得商业成功的技术,在 20 世纪 70 到 80 年代盛极一时。
它的组成
一个专家系统通常由几个部分组成:知识库,存储着领域专家的知识,通常以大量“如果……那么……”的规则形式表示,比如“如果细菌是革兰氏阴性、杆状、厌氧,那么它可能是拟杆菌”;推理引擎,根据用户提供的事实,运用知识库中的规则进行推理,得出结论,推理方式有前向链接和反向链接;用户界面,让用户输入问题和信息,并查看结论;解释模块,告诉用户系统是根据哪些规则和事实得出结论的,这让用户能够理解和信任系统的判断;以及知识获取模块,帮助专家和工程师向知识库中添加和修改知识。专门负责从专家那里获取知识并转化为规则的人,被称为“知识工程师”。
著名的专家系统
DENDRAL:20 世纪 60 年代中期由斯坦福大学的爱德华·费根鲍姆、诺贝尔奖得主乔舒亚·莱德伯格等人开始研发,能够根据质谱数据推断有机化合物的分子结构,被认为是第一个专家系统。费根鲍姆因此被称为“专家系统之父”,并在 1994 年获得了图灵奖。MYCIN:20 世纪 70 年代斯坦福大学开发的医疗诊断系统,用于诊断血液感染并推荐抗生素治疗方案,它引入了“可信度”来处理医学诊断中的不确定性。评估显示它的诊断水平与专科医生相当,但由于法律责任和伦理等问题,从未在临床中正式使用。XCON(又名 R1):卡内基梅隆大学为美国数字设备公司(DEC)开发的系统,能够根据客户的订单自动配置计算机系统,据报道每年为公司节省数千万美元,是专家系统商业成功的代表。
兴衰
20 世纪 80 年代,专家系统掀起了热潮,大量的公司投入开发,还出现了专门运行人工智能语言的 Lisp 机器。但人们逐渐发现了专家系统的局限:知识获取非常困难,从专家那里提炼出完整准确的规则费时费力,很多经验专家自己也说不清楚;当规则多达数千条时,维护和更新变得极其困难;系统非常“脆弱”,只能处理规则覆盖到的情况,稍微超出范围就会给出荒谬的结果;它不能从数据中学习,也缺乏常识。再加上专用硬件市场的崩溃,到了 80 年代末,专家系统热潮退去,人工智能进入了又一个“寒冬”。
今天的意义
专家系统的思想并没有消失,它演变成了今天广泛使用的业务规则引擎和决策支持系统。它的经验教训也影响深远:手工编写知识难以规模化,这推动了人工智能转向从数据中自动学习的机器学习路线。而今天的大语言模型从海量文本中自动地学到了大量的知识,某种程度上实现了专家系统当年的愿景,只是方式完全不同。