腾讯分分彩组三杀号 > 数据挖掘 >

数据挖掘操作实务教程之一:专家诊病系统

2018-07-13 14:13

  专家系统典型的大数据和人工智能结合的计算机程序系统,其内部含有大量的某个领域专家水平的知识与经验,能够利用人类专家的知识和解决问题的方法来处理该领域问题。也就是说,专家系统是一个具有大量的专门知识与经验的程序系统,它应用人工智能技术和计算机技术,根据某领域一个或多个专家提供的知识和经验,进行推理和判断,模拟人类专家的决策过程,以便解决那些需要人类专家处理的复杂问题,简而言之,专家系统是一种模拟人类专家解决领域问题的计算机程序系统。

  专家系统的发展已经历了3个阶段,正向第四代过渡和发展。第一代专家系统(dendral、macsyma等)以高度专业化、求解专门问题的能力强为特点。但在体系结构的完整性、可移植性、系统的透明性和灵活性等方面存在缺陷,求解问题的能力弱。第二代专家系统(mycin、casnet、prospector、hearsay等)属单学科专业型、应用型系统,其体系结构较完整,移植性方面也有所改善,而且在系统的人机接口、解释机制、知识获取技术、不确定推理技术、增强专家系统的知识表示和推理方法的启发性、通用性等方面都有所改进。第三代专家系统属多学科综合型系统,采用多种人工智能语言,综合采用各种知识表示方法和多种推理机制及控制策略,并开始运用各种知识工程语言、骨架系统及专家系统开发工具和环境来研制大型综合专家系统。在总结前三代专家系统的设计方法和实现技术的基础上,已开始采用大型多专家协作系统、多种知识表示、综合知识库、自组织解题机制、多学科协同解题与并行推理、专家系统工具与环境、人工神经网络知识获取及学习机制等最新人工智能技术来实现具有多知识库、多主体的第四代专家系统。

  本案例使用SmartMining,以决策树算法为背景,通过生动有趣的过程讲解,帮助读者了解依托大数据如何构建专家诊病模型,以及如何通过可视化方式来理解决策树算法!

  其中,年龄、性别、血压、胆固醇、钠、钾是病人的指标,而药物是医生针对病人的情况开出的药物。

  业务目标:建立专家诊病系统,当把病人的指标输入到该系统时,系统会自动输出该给此类病人开出的药物。

  数据挖掘目标:建立专家诊病模型,该模型以病人的病例指标为输入,以药物为目标,建立预测模型,该模型可以根据输入指标的值,计算预测值(药物)。

  此时要根据数据存储文件的格式选择相应的导入节点。在这里由于数据源是CSV文件,因此可以选择CSV导入节点(也可以使用平面文件)。将左侧节点库中CSV导入节点拖到右侧的工作流中。双击节点或者右键菜单中选择“配置”,弹出如下配置窗口:

  。红色表示节点尚未配置或者配置有误,此时节点不可执行;黄色表示节点可以执行。点击右键菜单的

  使用统计分析菜单下的统计节点可以对数据进行描述,这是建模之前必须要做的工作,一方面是为了设计合理的实施方案,另外一方面也是为了更好的选择合适的算法。从表2中可以看出每种分类变量的取值及每种取值的个数。比如,从这里我们可以看出药物字段一共包含五种取值,且出现最多的是Y药物。在这里目标变量为分类型,因此只能选择分类预测类模型,如决策树、逻辑回归等。

  首先,从数据准备列转换菜单下选择类型转换节点。由于性别、血压、胆固醇三个字段实际存储类型该是字符型,但这里是整型,因此为了便于以下分析,使用类型转换节点将它们的类型从整型转化为字符型。配置如下:

  其次,从数据准备的行菜单中选择分区节点。使用分区节点可以将数据集分成测试集和训练集,训练集用于训练模型,测试集用于测试模型。配置如下:

  ),则每次运行分区结果将会是一样的,否则每次运行的结果将会不同,进而建模的结果也会不同。通常是选择选中该项,使得训练集和测试集都固定。另外,此处还有个很重要的用途,不选中

  还有一点要注意,这里分区即把数据集随机分成两份,通常训练集要比测试集大,通常分为5:5,6:4,7:3,8:2,9:1。数据集越小,训练集应该分的更多,原因是要保证模型的稳定性,参与训练的数据要足够多。实际中,各种比例都会尝试,目的有二:一是选择最佳的比例,二是测试模型的稳定性。

  然后,选择分类预测节点,因为目标变量(药物)为分类型。此处我们重点学习决策树算法,所以就先选择决策树算法节点。节点连接如上图3所示,在决策树(训练)节点配置中选择目标变量药物。其中,决策树(训练)节点连接分区节点的第一个输出端口(训练集),决策树(预测)节点的数据输入端口连接分区节点的第二个输出端口(测试集),模型输入端口连接决策树(训练)节点的输出端口。决策树训练节点和预测节点的配置分别如下:

  从表3中可以看出,模型测试准确度为90%,误判10%。预建模的目的是为了从整体判断现有变量与目标变量的相关性,以便可以根据经验预估最终的效果和可操作性。

  接下来如何优化模型呢?通常来说有三种办法:第一,增加新数据,以便引入更多重要的影响因素;第二,尝试其他模型,以便找到更适合的模型;第三,优化输入,即基于已有数据派生更多重要的变量,或者过滤不重要的变量。这三者中,第一种最难以实现,一般企业的数据是有限的,企业内部可用数据及外部可用网络数据,在项目需求调研阶段就应该明确,而企业外部行业数据难以获取。第二种最容易尝试,所有可用模型可以快速尝试一遍,这个是每个项目中都必做的,但却不是最重要的方法。而第三种方法才是项目中最可行,也是最重要的办法。

  如何优化输入?这是第三种方法的实现目标。而优化输入最重要的环节就是数据探索。

  数据探索最核心的一项工作就是探索输入变量与目标变量的相关性。分析变量的相关性可以使用相关性计算,也可以使用图形化分析,而后者最直观常用。分析两个分类型变量可以使用条形图、网络图或者交叉表。分析两个数值型变量可以使用散点图。分析一个数值型变量和一个分类型变量可以使用直方图。

  通过分析,血压和药物字段有着强相关性,因为从图中可以看出使用药物B和药物A的人都是高血压(3表示高血压,2表示正常,1表示低血压),使用药物C的人都是低血压,这种很明细的规律反映出两个字段间存在很强的相关关系,如下图所示:

  同理,胆固醇和选择药物之间也有一定相关性,而性别和选择药物相关性不大,如下图所示:

  接下来分析数值型字段的相关性,从图中可以看出血液中的钠和钾相关性很弱或者没有。从图形化的方式判断相关性强弱的方法就是看图形中的规律,规律越明显,相关性就越强,否则越弱。

  就此图来说,散点图中的每一个点表示一个病例,而我们最想知道的还不是钠和钾的相关性,而是两者与药物的相关性,因为药物才是我们分析的目标。所以我们还想知道散点图中的每个病例使用的什么药物。因此,我们使用药物作为颜色区分,重新修正散点图。如下:

  从图中可见,上三角区都是浅红色,说明这部分病例使用的都是Y药物。这是很明显的规律,说明这里面有一种很强的关联。用数学的语言来描述,就是钠和钾的比例与药物有很强的相关性。因此,我们发现了一个很重要的变量就是钠和钾的比例。因此,我们可以派生一个变量:钠钾比例。

  首先,使用派生字段节点或者Java代码段节点生成钠钾比例字段。配置如下:

  其次,使用列过滤节点过滤钠和钾字段,否则它们的重复存在会导致多重共线性问题。配置如下:

  从表4中可看出,模型精度从原来的90%提升带了100%。当然实际中如果遇到预测精度为100%的情况一定就是错的。下面我们再来解读一下得到的决策树模型。如下图所示,

  如果病人血液中钠和钾的比例大于14.8285,则选择服用Y药物,准确率为100%;

  如果病人血液中钠和钾的比例不大于14.8285,若全部判成X药物准确率只有47.5%,因此再看病人的另外一个指标血压;

  如果血压为1,全部判为C药物,准确率仅50%。再看另外一个指标胆固醇,若胆 固醇的值为1,全部判为X药物,则准确率为100%。若胆固醇的值为2,全部判为C 药物,则准确率为100%。

  如果血压为3,全部判为A药物,则准确率仅56.8%。再看另外一个指标年龄,若 年龄大于50.5岁,判为B药物,则准确率100%。若年龄不大于50.5岁,判为A药物, 准确率为100%。

  第一,在建模中,应该注意过拟合问题。在商业中建模的目的是为了商业应用,因此不仅要保证模型的准确性,更要保证模型的稳定性。

  第二,模型应用的核心是模型的风险控制。只有可以控制风险的模型才可以使用,否则不管理论模型建的多么漂亮都是没有实际意义的。

  第三,数据挖掘的成果并不只是数学模型,数据挖掘也不等价于高级模型(如决策树、神经网络等)。数据挖掘最重要的不仅是得到一个模型,还有分析得出最合理的输入变量以及给出数据质量管理的建议。

  第四,数据挖掘的一个核心工作就是图形化探索,貌似很简单却又最为重要。因为这是你数据挖掘思路的源泉。

  --

  比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。

  比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!

  比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。

  比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。

  比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。

  比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。

  新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。

  比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。

  比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。

  IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。

  X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。