专家系统
概述
本章主要介绍专家系统的概念、原理,创建过程,并补充知识发现与数据挖掘内容
**重点:**专家系统的工作原理和体系结构,知识获取的过程和模式
**难点:**如何设计和创建专家系统
AI第2次高峰(60年代) - 费根鲍姆
1968年,爱德华·费根鲍(Edward Feigenbaum)提出首个专家系统DENDRAL,并对知识库给出了初步定义,这也孕育了后来的第二次人工智能浪潮。
该系统具有非常丰富的化学知识,可根据质谱数据帮助化学家推断分子结构。
专家系统(Expert Systems)是AI的一个重要分支,同自然语言理解,机器人学并列为AI的三大研究方向。
定义:使用人类专家推理的计算机模型来处理现实世界中需要专家作出解释的复杂问题,并得出与专家相同的结论。
可视作“知识库(knowledge base)”和“推理机 (inferencemachine)” 的结合。
专家系统 - 起源、演进发展
研究目的:不是研制AI专家代替人类专家,而是研制人类专家的AI助手
开始时间 | 突出成果、里程碑事件 | 发展程度 |
---|---|---|
20世纪60年代中期 | •DENDRAL系统(斯坦福大学费根鲍 ): 用于推断化学分子结构 •MYCSYMA系统(MIT): 用于数学运算 | 单问题专业系统 |
20世纪70年代中期 | •MYCIN系统(斯坦福大学): 用于血液感染病诊断 •PROSPCTOR系统(斯坦福研究所): 辅助矿藏探测 | 单学科专业系统 |
20世纪80年代中期 | •RI(XCON)系统(DEC公司、卡内基梅隆大学) 辅助制定计算机系统硬件配置方案 •Siri系统(苹果公司): 苹果公司研发的语音识别接口专家系统 | 多学科专业系统 |
2022年-未来 | 基于人工智能大模型,引入多学科协同求解与并行推理机制,可以调用海量现有知识库 | 大型多专家协作系统 |
专家系统 - 定义
常规定义:是一类具有专业知识和经验的计算机智能程序系统,能凭借人工智能中的知识表示和知识推理来解决复杂问题,基于海量知识库,在功能上可以达到甚至超越同领域中人类专家的水平。
让计算机系统像人类专家一样根据自身知识对问题进行逻辑推理、解释说明、给出解决方案,帮助人类解决问题是理解专家系统的基本出发点。
专家系统 - 特点
特点 | 内容 |
---|---|
具有专家水平的专业知识 | 这是专家系统的最大特点。专家系统具有的知识越丰富,质量越高,解决问题的能力就越强 |
能进行有效的推理 | 不仅能根据确定性知识进行推理,而且能根据不确定的知识进行推理,其解决问题的方法都是经验性的,仅以一定的可能性存在 |
具有启发性 | 能根据某些条件选定一个假设,使推理继续进行,能依据经验来对求解 的问题做出多个假设。 |
具有灵活性 | 知识库和推理机相互独立,保证了当知识库做适当修改和更新时,推理 机部分可以不变,使系统易于扩充,具有较大的灵活性。 |
具有透明性 | 具有解释机构,向用户解释推理过程,给出推理过程 |
具有交互性 | 具有较好的人机交互界面。1)需要与领域专家和知识工程师进行对话以获取知识;2)也需要不断地从用户那里获得所需的已知事实,并回答用户的询问。 |
专家系统与传统系统的比较
传统系统 | 专家系统 | |
---|---|---|
编程思想 | 数据结构+算法 | 知识+推理 |
知识存储方式 | 求解问题的知识隐含在程序中 | 知识存储在知识库,与推理机分离 |
处理对象 | 数值计算和数据处理 | 符号处理 |
解释说明功能 | 不具备解释说明功能 | 具备解释说明功能 |
答案的可靠性 | 数学逻辑准确的情况下能产生正确答案 | 通常产生正确答案 有时产生错误答案 |
解决问题能力 | 较弱 | 较强,更灵活,可处理具有挑战性的决策问题并提供解决方案 |
系统体系结构 | 算法+主程序 | 推理机+知识库+用户接口+解释器 |
专家系统-系统分类、特点与应用
专家系统类型 | 任务 | 特点 | 举例 |
---|---|---|---|
解释型 | 通过对已知信息和数据的分析 与解释,确定它们的含义 | •处理的数据量大,不准确 •能从不完全的信息中得到解释,并从数据中做 出假设 | 语音理解、图像分析 |
预测型 | 通过对过去和现在的已知状况的分析,推断可能发生的情况 | •处理的数据随时间变化 •有适应时间变化的动态模型 | 气象预报、军事预测 |
诊断型 | 根据观察到的数据来推测出某 个对象出现故障的原因 | •了解诊断对象或客体各组成部分的特性以及它们之间的联系。 •能够向用户提供测量的数据,并从不确切信息 中得出尽可能正确的诊断。 | 医疗诊断、电子机械和软件故 障诊断 |
设计型 | 分解设计要求,求出能够满足设计问题约束的目标配置 | •善于从多方面的要求中得到符合要求的设计结果 •系统需要检索较大的可能解空间 | 电路设计、土木建工设计 |
规划型 | 寻找某个能够达到给定目标的多做序列或寻找步骤 | •目标可能是动态的或静态的,需要对未来做出预测 •处理好各个子目标的关系和不确定数据信息 | 机器人规划、交通运输调度 |
监视型 | 任务在于对系统、对象或过程进行不断观察,并把观察到的行为与其应当有的行为进行比较,以发现异常并作警报 | •具有快速反应能力,在造成事故之前及时发出警报 •系统能够随时间和条件的变化而动态地处理输入信息 | 防空监视与警报、国家财政监控 |
… | … | •… | … |
专家系统-未来趋势展望
专家系统 - 基本结构、工作原理
网络环境下的专家系统
专家系统 - 工作机制
专家系统-逻辑组成和名词解释
专家系统的组成思路:理解问题+思考问题+逻辑推理+给出并解释方案
名词 | 功能 |
---|---|
人机交互界面 (人机接口) | 用户输入基本信息,系统输出推理结果及相关的解释 |
知识库 | 知识库中知识的质量和数量决 定着专家系统的质量水平 |
推理机 | 针对当前问题的条件或已知信息,反复匹配知识库中的规则 |
解释器 | 人机交互的一部分,向专家系统解释问题,向人解释专家系统的解决方案 |
综合数据库 | 存储推理过程中所需的原始数据、中间结果和最终结论 |
知识获取 | 扩充和修改知识库中的内容 |
专家系统-知识获取的过程与模式
知识获取:指把领域专家解决问题的经验和知识,变为专家系统解决问题所需的专门知识。
专家系统的开发-明确开发前提、评价标准
明确需求:1)该问题是否能用专家系统解决?2)专家系统是否有市场需求?3)是否有开发专家系统的能力?
开发前提 | 说明 |
---|---|
开发专家系 统是可能的 | 主要依靠经验性知识,不需运用大量常识性知识就可解决的任务。 存在真正的领域专家。 有明确的开发目标,且任务不太难实现。 |
开发专家系统是合理的 | 具有较高经济收益 人类专家稀缺 人类专家经验不断丢失 危险场合需要专业知识 |
开发专家系统是合适的 | 本质:问题能通过符号操作和符号结构求解,且需要使用启发式知识、经验规则才能得到答案 l较为复杂,需要专家级知识才能解决 范围:所选任务大小可驾驭、任务有实用价值 |
一个好的专家系统 | |
---|---|
正确性 | 有用性 |
•设计思想正确 •设计方法正确 •开发工具正确 | •推理结论、求解结果、咨询建议回复准确 •系统知识水平和可用范围易于拓展和更新 •问题求解能力强,运用场景和环境 广 •良好的人机交互 •运行可靠、易于维护、易于移植 •经济性 |
•测试目的、方法、条件正确 •测试结果、数据、记录正确 | |
•推理结论、求解结果、咨询建议正确 •推理解释及可信度估 算正确 •知识库知识储备正确 |
专家系统的开发-了解开发工具与环境
专家系统开发环境(专家系统开发工具包):可为专家系统的开发提供多种方便的构件,例如知识获取的辅助工具、适用各种不同知识结构的知识表示模式、各种不同的不确定 推理机制、知识库管理系统等。
骨架型 | 通用型 | 工具箱型 | |
---|---|---|---|
面向AI的 语言 符号处理) | •以成功应用的专家系统为基础,去掉知识内容,保留推理机制,再补充相应知识库 •MYCIN系统是诊断血液感染病的专家系统,当抽去血液感染病的知识、增强知识获取中的人机对话功能后,就形成了开发工具,称为EMYCIN,利用它装入肺功能的有关知识,就构成了用于诊断肺功能的专家系统,称PUFF | •提供一种较为通用的知识表达语言,并为这类语言配置相应的推理机构 •OPS-5是面向产生式系统 的语言 •PROLOG语言是面向一阶谓词逻辑的语言,只要输入一阶谓词形式的知识和事实,系统就能自动求出若干个解 | •提供几种专家系统的框架组件(如推理框架,黑板框架等),每个框架又由若干模块组成 •ADVISE、AGE、 EXPERT-EASE和 RULEMASTER等就属 于这一类工具 |
面向对象的语言 | Python | C语言 | C++语言 |
专家系统的开发过程
专家系统的开发过程:设计初始知识库->原型系统开发与实验->知识库的改进与归纳
知识库是专家系统中最重要的组成部分,其设计和建立过程如下:
- 原型系统的开发与实验:当知识表示方式确定后,即可建立原型系统,包括整个模型的典型知识,而且只涉及与实验有关的简单的任务和推理过程
- 知识库的改进和归纳:在原型系统的基础上,对知识库和推理机反复进行改进试验,归纳出更完善的结果,如此进行下去,不断提高专家系统的水平,直到满意
专家系统的设计分析—以KAS骨架系统为例
以KAS系统为骨架(骨架型开发),加上相应的知识库和推理算法,就可以较低成本完成简单专家系统的设计
知识发现与数据挖掘
- 背景:随着计算机和网络技术的迅速发展,出现了以数据库和数据仓库为存储单位的海量数据,如何从海量数据中筛选出有价值的数据?
- 知识发现:从数据库中发现知识(knowledge discovering from database,KDD),主 要流行于人工智能和机器学习领域。在研究中通常将知识发现和数据挖掘同时列出。
- 数据挖掘:从数据库中挖掘知识(data mining,DM),主要流行于数据库领域。
- 知识发现和数据挖掘目的:都是从海量的数据中抽取和简化一般规律或模式。
知识发现流程图:
知识发现 - 流程解释
数据准备
- 数据选取:根据需要确定好目标数据
- 数据预处理:消除噪声,推导计算缺值数据消除重复记录,完成数据类型转换等
- 数据变换:消减数据维数,减少变量
数据挖掘
- 确定挖掘任务和目的: 进行数据总结、分类、聚类?关联规则或序列模式?
- 确定挖掘算法:考虑不同数据特点及用户实际需求
对结果的解释和评价
数据挖掘阶段发现的知识模式中是否存在冗余或无关的模式?
对知识发现的模式进行可视化:把结果转化为用户易懂的表示
知识发现-任务概述
任务 | 解释 |
---|---|
数据总结 | 对数据进行浓缩,从数据泛化的角度来讨论,给出它的紧凑描述。把数据从底层抽象到高层次上 |
概念描述 | 从学习任务相关的数据中提取总体特征,具体分为特征描述(数据集的总体特征)和判别描述(多个类之间的差异) |
分类 | 提出一个分类函数或分类模型(也常常称作分类器),该模型能把数据库中的数据项映射到给定类别中的一个,从而可以l立用于数据预测。 |
聚类 | 根据数据的不同特征,将其划分为不同的类。包括统计方法、机器学习方法、神经网络方法和面向数据库的聚类方法等 |
相关性分析 | 发现特征之间或数据之间的相互依赖关系 |
偏差分析 | 寻找观察结果与参照量之间的有意义的差别 |
建模 | 通过数据挖掘,构造出能描述一种活动、状态或现象的数学模型 |
知识发现-方法分类及概述
方法 | 解释 |
---|---|
统计方法 | 常见的统计方法有回归分析、判别分析、聚类分析及探索分析等。其统计方法就是从事物的外在数量表现去推断事物可能的规律性。 |
粗糙集 | 由 Zdziskew Pawlak 于1982年提出,粗糙集是一种具有三值隶属函数的模糊集,即是、不是、也许。常与规则归纳、分类和聚类方法结合起来使用。 |
可视化 | 把数据、信息和知识转化为图形的过程。使抽象的数据信息形象 化,直观地对大量数据进行考察分析。 |
传统机器学习 | 包括符号学习和链接学习 |
知识发现的对象
方法 | 内容 |
---|---|
数据库 (短期+分散) | 当前研究比较多的是关系数据库(海量的数据经过代数处理后得到的数据库)的知识发现 |
数据仓库 (长期+集成) | 数据挖掘为数据仓库提供深层次数据分析的手段,数据仓库为数 据挖掘提供经过良好预处理的数据源。 |
Web信息 | Web知识发现主要分内容发现和结构发现。内容发现是指从Web文档的内容中提取知识;结构发现是指从Web文档的结构信息中推导知识。 |
图像和视频数据 | 图像和视频数据中也存在有用的信息。比如,地球资源卫星每天 都要拍摄大量的图像或录像。 |
数据挖掘 - 数据的定义、类型与组织形式
定义:是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合,是可识别的、抽象的符号。
对比项 | 数据 | 信息 |
---|---|---|
层次 | 微观 | 宏观 |
概念 | 是构成信息的基本单位,离散的数据没有任何实用价值。 | 由数据的有序排列组合而成,传达给读者某个概念方法等。 |
价值:Data被称为“未来的石油”;人类进入了Data时代(马云)。
类型:
- 组织形式:计算机系统中的数据组织形式主要有两种,即文件和数据库。
- 文件:计算机系统中的很多数据都是以文件形式存在的,比如一个WORD文件、一个文本文件、一个网页文件、一个图片文件等等
- 数据库:计算机系统中另一种非常重要的数据组织形式就是数据库,数据库已经成为计算机软件开发的基础和核心。
数据挖掘 - 数据的演进、大数据出现
大数据时代-第三次信息化浪潮
根据IBM前首席执行官郭士纳的观点,IT领域每隔15年就会迎来一次重大变革。
三次信息化浪潮
信息化浪潮 | 发生时间 | 标志 | 解决问题 | 代表企业 |
---|---|---|---|---|
第一次浪潮 | 1980年前后 | 个人计算机 | 信息处理 | Intel、AMD、IBM、苹果、 微软、联想、戴尔、惠普等 |
第二次浪潮 | 1995年前后 | 互联网 | 信息传输 | 雅虎、谷歌、阿里巴巴、百度、腾讯等 |
第三次浪潮 | 2010年前后 | 物联网、云计算和大数据 | 信息爆炸 | 将涌现出一批新的市场标杆 企业 |
大数据时代-数据产生方式的变革、发展历程
大数据发展的三个阶段
阶段 | 时间 | 内容 |
---|---|---|
第一阶段(萌芽期) | 上世纪90年代至本世纪初 | 随着数据挖掘理论和数据库技术的逐步成熟,一批商业智能工具和知识管理技术开始被应用,如数据仓库、专家系统、知识管理系统等。 |
第二阶段(成熟期) | 本世纪前 10年 | Web2.0应用迅猛发展,非结构化数据大量产生,传统处理方法难以应对,带动了大数据技术的快速突破,大数据解决方案逐渐走向成熟,形成了并行计算与分布式系统两大核心技术,谷歌的 GFS和MapReduce等大数据技术受到追捧,Hadoop平台开始大行其道 |
第三阶段(大规模应用期) | 2010年以 后 | 大数据应用渗透各行各业,数据驱动决策,信息社会智能化程度大幅提高 |
大数据时代 - 概念与特征
定义:大数据(big data)是这样的数据集合:数据量增长速度极快,用常规的数据工具无法在一定的时间内进行采集、处理、存储和计算的数据集合。
大数据技术将被设计用于在成本可承受(economically)的条件下,通过非常快速(velocity)的采集、发现和分析,从大数据量(volumes)、多类别(variety)的数据中提取价值(value),将引起IT 领域新一轮的技术与架构的变革。
大数据技术 - 发展历史
数据仓库出现
20世纪90年代,商业智能(BI)诞生,它将企业已有的业务数据转化成为知识,帮助管理人员进行经营决策。BI离不开数据分析,它聚合多个业务系统的数据(比如交易系统、仓储系统),再进行大数据量的范围查询。而传统数据库都是面向单一业务的增删改查,无法满足此需求,这样就促使了数据仓库概念的出现。数据仓库第一次明确了数据分析的应用场景,并采用单独解决方案去实现,不依赖业务数据库。
Hadoop诞生(数据湖)
- 2000年左右,PC互联网时代带来海量信息,数据仓库无法支撑起互联网时代的BI。
- 2003 年, Google 公布 3 篇鼻祖型论文(「3驾马车」),奠定理论基础。
- 2005年, Yahoo资助Hadoop 按照这3篇论文进行了开源实现,正式拉开序幕。
- 2010年的Hadoop世界大会上,提出「数据湖」的概念。企业可基于Hadoop构建数据湖,将数据作为核心资产。由此,数据湖拉开了Hadoop商业化的大幕。
数据工厂时代 (大数据平台兴起)
商用Hadoop包含上10种技术,数据研发流程非常复杂。数据需求开发, 涉及到 “数据抽取、数据存储、数据处理、构建数据仓库、多维分析、数据可视化”等一整套流程。大大制约大数据技术的普及。
此时,大数据平台(平台即服务的思想,PaaS)应运而生,它是面向研发场景的全链路解决方案,大大提高数据的研发效率,让数据像在流水线上一样快速完成加工,原始数据变成指标,出现在各个报表或者数据产品中。
数据价值时代 (数据中台)
2016年左右,移动互联网时代催生大量大数据应用场景。
此时开始暴露出新问题:为快速实现业务需求,烟囱式开发模式导致了不同业务线的数据是完全割裂的,这样造成了大量数据指标的重复开发,不仅研发效率低、同时还浪费了存储和计算资源,使得大数据的应用成本越来越高。
阿里巴巴此时喊出「数据中台」的概念,提倡「One Data,One Service」,其核心是:避免数据重复计算,通过数据服务化,提高数据共享能力,赋能业务。
大数据 - 关键技术
定义:是指伴随着大数据的采集、存储、分析和结果呈现,而使用的一系列数据处理技术;是使用非传统的工具来对大量的“结构化、半结构化、非结构化”数据进行处理,从而获得预测结果的一系列数据处理和分析技术。
技术层面 | 功能 |
---|---|
数据采集 | 利用ETL工具将分布的、异构数据源中的数据如关系数据、平面数据文件等,抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础; l或者也可以把实时采集的数据作为流计算系统的输入,进行实时处理分析 |
数据存储和管理 | 利用分布式文件系统、数据仓库、关系数据库、NoSQL数据库、云数据库等,实现对结构化、半结构化和非结构化海量数据的存储和管理 |
数据处理与分析 (数据挖掘) | 利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析; l对分析结果进行可视化呈现,帮助人们更好地理解数据、分析数据 |
数据隐私和安全 | 在从大数据中挖掘潜在的巨大商业价值和学术价值的同时,构建隐私数据保护 体系和数据安全体系,有效保护个人隐私和数据安全。 |
数据中心 - 起源与发展
大数据-影响
图灵奖获得者、著名数据库专家Jim Gray博士观察并总结人类自古以来,在科学研究上,先后历经了“实验、理论、计算和数据”四种范式。
新的决策方式:在社会发展方面,大数据决策逐渐成为一种新的决策方式,大数据应用有力促进了信息技术与各行业的深度融合,大数据开发大大推动了新技术和新应用的不断涌现。
新的职业:就业方面,大数据兴起使得数据科学家成为热门职业。
在思维方式方面,大数据完全颠覆了传统的思维方式:
- 全样而非抽样
- 效率而非精确
- 相关而非因果