我是靠谱客的博主 儒雅烧鹅,最近开发中收集的这篇文章主要介绍MS决策树分析算法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MS决策树分析算法

  1. 决策树算法是分类和回归算法,用于对离散和连续属性进行建模,是一种混合算法。

  2. 决策树根据朝向特定结果发展的趋势进行预测。如购买自行车案例中,10名年轻客户有9名购买,而10名老年客户只有3名购买,则算法推测年龄是购买自行车的关键预测因子。

  3. 它通过在树中创建一系列拆分来生成挖掘模型,每当发现输入列与可预测列密切相关时,改算法吧便向该模型的树中添加一个节点。

  4. 决策树与聚类算法的区别
    决策树:是以目标为导向,分析各属性及其值对目标的影响度来逐步生成决策树的,它最重要的作用是获取输入对输出的想象力的排序。
    聚类:是根据各属性间的关系来对数据进行分类,它最重要的作用是获取各个群体的共有属性

  5. 挖掘结构:挖掘算法要挖掘的数据的结构,就是我们要挖掘的数据的数据模型

  6. 挖掘模型:定义了对挖掘结构的挖掘方式
    6.1. 包含了具体的挖掘算法及其配置
    6.2. 包含了挖掘模型所需的输入、输出列等

  7. 建立数据挖掘项目
    7.1. 打开VS-》新建项目-》商业智能-》Analysis Service-》Analysis Services多维和数据挖掘项目-》项目名“DM-Demo”
    7.2. 建立连接到数据仓库数据源的链接-》使用服务账户

  8. 建立数据源视图(数据挖掘结构视图)
    8.1. 在DW中编写视图如下,该视图获取了所有的会员信息,并通过isBuyer标志标识出是否有过消费记录,(1:是;0:否,必须为数字,不能为字符),目的是挖掘出哪些信息对用户是否购物有比较重要的影响力
    create view v_DM_DecisionTree
    as
    select v.*, ve.active, ve.age, ve.grade, ve.isSMS, ve.type
    ,case
    when exists(
    select 1
    from [dbo].[FactVipSaleAndBonus] vsb
    join [dbo].[DimDate] d on d.dateKey=vsb.dateKey
    where vsb.vipKey=v.vipKey
    ) then 1
    else 0
    end isBuyer
    from [dbo].[DimVip] v
    join [dbo].[DimVipExt] ve on ve.vipKey=v.vipKey
    8.2. 新建数据源视图-》将上面的视图导入-》完成后将vipKey设置为逻辑主键,因为挖掘模型必须有主键,而且不能是复合主键

  9. 建立挖掘结构
    9.1. 右键“挖掘结构”-》新建挖掘结构-》从现有关系数据库或数据仓库-》选择“Microsoft决策树”-》选择上面的数据源视图
    9.2. 指定表类型-》勾选“示例”,这里的意思是将输入表作为挖掘算法的示例表,也就是主表,“嵌套”是只副表,这里不用勾选
    9.3. 指定定型数据,此处指定挖掘模型的“键”、“输入列”、“输出列”-》键,勾选vipKey-》输出列,勾选isBuyer-》输入列,可以点击下方“建议”,会统计出对结果影响力大的字段,然后参考勾选
    9.4. 指定列的内容和数据类型-》点击“检测”,可检测列的内容和数据类型
    9.5. 创建测试集,挖掘算法会将示例按设定的比例随机拆分为定型集合测试集,定型集用来训练挖掘模型,测试集用来验证挖掘模型-》此处可以设定测试集的百分比和最大示例数,两个设定同时起作用
    9.6. 输入挖掘结构和挖掘模型的名称-》勾选“允许钻取”,表示支持决策树的示例是否可以查看

  10. 查看——挖掘结构,没什么好看的,挖掘结构就是要挖掘的数据的数据模型

  11. 查看——挖掘模型,可以看到挖掘所用的算法、键、输入、输出等,右键算法可以配置算法参数

  12. 查看——挖掘模型查看器,执行,报错,原因是没有权限读取数据,于是修改数据源是登录方式,改为sql server身份验证即可

  13. 查看——挖掘模型查看器——决策树
    13.1. 可以看到生成的决策树,上面可以选择背景(就是预测的结果),决策树节点的颜色越深表示概率越高
    13.2. 点击“节点”可以通过“挖掘图例”来查看详细信息-》示例总数,该节点的支撑的示例数据总数-》值,输出(预测)的结果-》概率,对应的概率-》最下面就是该节点的数据筛选条件

  14. 查看——挖掘模型查看器——依赖关系网络,可以查看输出依赖了哪些输入,并且可以查看输出对哪些输入的依赖更强

  15. 查看——挖掘准确性图表
    15.1. 输入选择,此处勾选挖掘模型、预测列、预测值-》勾选我们建立的挖掘模型-》可预测列为isBuyer-》预测值为1,就是预测要购买的人员

  16. 查看——挖掘准确性图表——提升图
    16.1. 提升图是查看挖掘模型准确性的一个图表
    16.2. X轴,为测试集
    16.3. Y轴,为测试集中的目标集(要预测的值)
    16.4. 随机推测线(对角斜直线),因为是随机抽取,所以任何时候的命中率同整体的命中率一致(抽取百分之几的测试集就命中百分之几的目标),它是算法准确性的参考下线
    16.5. 理想推测模型(到了测试集某个点后命中率就一直是100%的线),这是理想的推测效果,是推测算法的上线

  17. 查看——挖掘准确性图表——提升图——挖掘图例
    17.1. 总体百分比:测试集的百分比
    17.2. 分数:对挖掘模型的评分
    17.3. 目标总体:命中目标的百分比
    17.4. 预测概率:命中的准确度

  18. 查看——挖掘准确性图表——分类矩阵,描述了预测结果与实际结果的对比

  19. 最终的有用信息如下
    这里写图片描述
    信息显示
    性别:女
    年龄:35-47
    入会模式为:银行金卡、消费满500
    的会员的消费概率为70.54%

最后

以上就是儒雅烧鹅为你收集整理的MS决策树分析算法的全部内容,希望文章能够帮你解决MS决策树分析算法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部