该案例的工作流如下:

1、商业目标
业务理解:该案例所用的数据是一份医生诊病的数据,如下:
表1:数据视图
其中,年龄、性别、血压、胆固醇、钠、钾是病人的指标,而药物是医生针对病人的情况开出的药物。
业务目标:建立专家诊病系统,当把病人的指标输入到该系统时,系统会自动输出该给此类病人开出的药物。
数据挖掘目标:建立专家诊病模型,该模型以病人的病例指标为输入,以药物为目标,建立预测模型,该模型可以根据输入指标的值,计算预测值(药物)。
操作实现:
2、新建工作流可以点击文件菜单下的"新建"或者点击工具栏左方的新建按钮(
选中
输入工作流的名字后即可完成创建:
图1:新建工作流
3、导入数据
此时要根据数据存储文件的格式选择相应的导入节点。在这里由于数据源是CSV文件,因此可以选择CSV导入节点(也可以使用平面文件)。将左侧节点库中CSV导入节点拖到右侧的工作流中。双击节点或者右键菜单中选择"配置",弹出如下配置窗口:
图2:CSV节点配置
点击
注意,此处如果数据第一行包含字段名,则选中
节点下方的预警符号从
点击右键菜单的

4、理解数据
使用统计分析菜单下的统计节点可以对数据进行描述,这是建模之前必须要做的工作,一方面是为了设计合理的实施方案,另外一方面也是为了更好的选择合适的算法。从表2中可以看出每种分类变量的取值及每种取值的个数。比如,从这里我们可以看出药物字段一共包含五种取值,且出现最多的是Y药物。在这里目标变量为分类型,因此只能选择分类预测类模型,如决策树、逻辑回归等。
表2:数据描述
5、预建模
接下来便是尝试建模,看看建模效果。
图3:预建模
首先,从数据准备的行菜单中选择分区节点。使用分区节点可以将数据集分成测试集和训练集,训练集用于训练模型,测试集用于测试模型。配置如下:
注意,如果选中使用随机种子(
还有一点要注意,这里分区即把数据集随机分成两份,通常训练集要比测试集大,通常分为5:5,6:4,7:3,8:2,9:1。数据集越小,训练集应该分的更多,原因是要保证模型的稳定性,参与训练的数据要足够多。实际中,各种比例都会尝试,目的有二:一是选择最佳的比例,二是测试模型的稳定性。
其次,选择分类预测节点,因为目标变量(药物)为分类型。此处我们重点学习决策树算法,所以就先选择决策树算法节点。节点连接如上图3所示,在决策树(训练)节点配置中选择目标变量药物。其中,决策树(训练)节点连接分区节点的第一个输出端口(训练集),决策树(预测)节点的数据输入端口连接分区节点的第二个输出端口(测试集),模型输入端口连接决策树(训练)节点的输出端口。决策树训练节点和预测节点的配置分别如下:
最后,使用分类评估节点评估模型的准确性。配置如下图所示:
评估结果:
表3:模型评估1
从表3中可以看出,模型测试准确度为90%,误判10%。预建模的目的是为了从整体判断现有变量与目标变量的相关性,以便可以根据经验预估最终的效果和可操作性。
接下来如何优化模型呢?通常来说有三种办法:第一,增加新数据,以便引入更多重要的影响因素;第二,尝试其他模型,以便找到更适合的模型;第三,优化输入,即基于已有数据派生更多重要的变量,或者过滤不重要的变量。这三者中,第一种最难以实现,一般企业的数据是有限的,企业内部可用数据及外部可用网络数据,在项目需求调研阶段就应该明确,而企业外部行业数据难以获取。第二种最容易尝试,所有可用模型可以快速尝试一遍,这个是每个项目中都必做的,但却不是最重要的方法。而第三种方法才是项目中最可行,也是最重要的办法。
如何优化输入?这是第三种方法的实现目标。而优化输入最重要的环节就是数据探索。
6、数据探索

本文源自:http://wiki.smartbi.com.cn/pages/viewpage.action?pageId=13599812


雷达卡


京公网安备 11010802022788号







