<学习笔记>数据挖掘原理与运用-sql server2008 数据库

来源:互联网 发布:互联网租车平台知豆 编辑:程序博客网 时间:2024/05/21 14:45

--11.20

学习中遇到挺多困难,建了个群大家可以交流下,欢迎所有像我一样的小白,大家一起探讨应该会有很多收益。群qq:213440333。


--11/18

补充:如果你跟我一样是一个sqlserver数据挖掘的新手,并且在学习此书时经常感动很困惑建议先看《SQL Server 2008商业智能完美解决方案》(为区分,接下来简称《商》),学习一样东西如果一开始从细枝末节开始追究很容易进入死胡同。学习最好自上而下,先要有一个总体架构的认识,《商》就是这个上,而此书是这个下。


开始准备:

microsoft sql server 2008  ---------------------------------------------------这里我使用的是2008r2(就目前来看analysis services可以正常使用)

microsoft office 2007-----------------------------------------------------------http://www.xitongzhijia.net/soft/3825.html

sql server 2008 data mining add-ins for office 2007------------------http://download.csdn.net/download/hehia0070/6743659

AdventureWorksDW2008数据库-------------------------------------------http://download.csdn.net/detail/dz45693/4955757

前言提到的相关数据库备份可以从www.wiley.com/go/data_mining_SQL_2008上获得。


第一章

2016/10/1?

    概念介绍,数据挖掘方法包括:分类,聚类,关联,回归,预测,序列分析,偏差分析。

    数据挖掘项目生命周期:问题行成-数据收集-数据清理和转换(数值转换,分组,聚集,缺失值处理,删除孤立点)-模型构建-模型评估-..


第二章

2016/10/1?

    安装部分如书,我配置的是本地localhost的具有管理权限的analysis services,没碰到问题。

工具包括:   

分析关键影响因素:找出造成指定列的值的影响因素,可以做对比(即指定列的俩个值的影响因素的对比,这里叫区别报表)。

检测类别:ID通常不作为参数,可以指定类别数。筛选每个类别可以获得单独类别的特征。类别配置文件图表现了各选项在该类别中的占比。

从示例填充:指定填充某行或全部行,系统会根据已作出判断的行分析对未作出判断的行进行判断。专家判断的样例数据越多,正确性越高。

预测:可以自动检测周期或指定周期,可指定预测数。

突出显示异常值:阈值越低,异常值越多。可采取俩个窗口的交互操作。

应用场景分析:目标查找:寻找是否能通过更改要更改值使我们的目标达到指定值。

                            假设工具:假设更改更改值为我们设定的值看目标会达到什么效果。

预测计算器:重要的事假正假负成本和真正真负利润的设定,这些决定了最大化利润的阈值。并且能生成一张离线填写的表格对客户进行现场分析。

购物篮分析:捆绑销售+购物篮推荐


第三章

2016/10/18

概念介绍:DMX 数据挖掘扩展。

                    属性:也是现实中的属性,数据库中通常的字段。

                    状态:属性的可选项。如婚姻属性的状态:已婚,未婚。没有的状态用缺失值替换(NULL)。

                    事例:原话:事例表示正在挖掘的实体...(看了好几遍不太能理解,一系列包含可能影响结果因素的组合记录)

                    键:数据库中有主键和外键,数据挖掘中指的是事例键和嵌套键。

                            事例键指出事例表示的实体的标识(可能是编号或者id?反正能表示这个实体就ok。主键通常作为事例键)

                            嵌套键指出嵌套行的命名实体(相反,事例键是表示事例的匿名部分,意思是不能直接从键看出意义,比如id)

                    输入和输出:在训练时,输入和输出都是作为得出算法的因素。在预测时,输入因素提供给算法,得处输出因素。

                    数据挖掘结构:包含所有可能的影响因素。

                    数据挖掘模型:根据算法从数据结构中包含的影响因素中选出一部分做挖掘。


                    使用chapter3.bak还原时遇到问题,2008和2008r2不兼容,要安装sql 2008 才能继续后续操作,估计以后也会使用到 .....23:45

2016/10/19

数据库安装问题


删除“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager”的“PendingFileRenameOperations”项。

继续


数据挖掘支持的

数据类型:LONG,DOUBLE,TEXT,DATE,BOOLEAN,TABLE

内容类型:KEY,DISCRETE,CONTINUOUS,DISCRETIZED,KEY TIME(只用于时序模型),KEY SEQUENCE(只在嵌套表中用于序列聚类模型)


数据挖掘结构语法:



离散列

离散:将连续值变成某些范围或者某些值

DISCRETIZED默认创建5个桶,可以指定。

离散方法包括:等面积(EQUAL_AGEAA),聚类(CLUSTERS),自动化(AUTOMATIC(默认,先等面积再聚类))

语法如:[AgeDisc] LONG DISCRETIZED(EQUAL_AGEAS,3),表示的是Age的离散列。


嵌套表写法(其中嵌套键可以顺带到这个例子中理解下)



用于测试集(百分30或者10000个事例用于测试,先取哪个值?)



创建简单挖掘模型


所有列都是输入列,没有输出列,仅适合于不需要定义输出的聚类,因为聚类算法默认会生成类标签作为输出。


标记说明:PREDICT表示既是输入列又是输出列,PREDICT_ONLY表示只是输出列。没写表示是输入列。(输入列的意思是用来预测的列,输出列意思指被预测的列)



就目前看来挖掘结构和挖掘模型的区别在于:

1、挖掘结构有数据类型和内容类型,而挖掘模型没有。

2、挖掘模型建立在挖掘结构的基础上。

3、PREDICT用于挖掘模型。

4、各自语法。


关于嵌套表中的列的理解见下图



(sql server2008安装好后却找不到2008系列的工具。??)


值属性



-------------------写到这,我还是感觉这些概念对我来说很抽象其实,----------------------------------------------------------------------

复杂的嵌套场景

判别是否创建无值属性:每当表列的用法标记不能与嵌套表中任何值列的用法标记匹配时,创建无值属性。

这句话的理解如下:


不过这样看来的话之前的假设有点问题:嵌套键应该不是值列。


过滤器(结尾加筛选条件)


格式:WITH FILTER(筛选条件) 这个筛选条件写的是我们平常sql语句where后的部分。


填充挖掘结构(需要一个数据源,然后填充)



嵌套表的填充


我们这里可以将PEOPLE看成主表,Purcharses ORDER和MovieRatings ORDER 看成子表。子表的custid和主表的key关联。

SHAPE:填充方和被填充方连接的关键字。

APPEND:追加(子表通常)

RELATE:主子表连接条件的关键字。(筛选作用)

AS:命名


查询挖掘结构的数据



(17:44 感觉需要结合实践才能更好理解,后面的翻了下实践多了些,相信不会像前面这样晦涩难懂了。现在先解决下我的数据库问题,不然没法实践)

(18:08 其实安装不冲突,但是管理工具什么的安装的时候检测到有08r2的它好像就不安装了,毕竟在同一个目录下,我竟然没办法改目录?!只能修改实例名,卸载08r2还是在虚拟机上安装08,卸载搞不好将来.. 虚拟机跑起来其实感觉有点卡。)

不浪费时间了。卸载!(卸载不干净就呵呵了)    。。。想起来手头有一台阿里云,搭上面!开工。


(23:34 宣讲会回来,完成阿里云服务器上2008的安装,结果还是出现一样问题,然而事实的真相竟是,选项里的还原选项的覆盖现有数据库要√!)


2016/10/20



暂时不知道在哪里,怎么使用dmx语句,我们先认为它就是单纯的语法语句吧。


程序清单:





预测

基本预测查询:



嵌套源数据查询


语法能看懂,但是感觉挺麻烦,到目前为止还没用它解决过实例,不懂这玩意厉不厉害,要是没什么实际用途就尴尬了。


实时预测(指定值预测):

       简单:


       嵌套:



退化预测:没有数据源的预测(可以看做只有一行数据但是数据都是缺失状态下进行的预测)

预测函数:PredictHistogram()函数返回一个表,表包含了标量列预测可用的所有信息。

返回的列:

<Target>:被预测的值。

$Support:多少事例支持这一事实。

$Probability:计算的分类输出的概率。对于连续值,此概率表示某个值出现的可能性。

$AdjustedProbability:修正的概率,用来 提高罕见事件的可能性,常常用于预测嵌套表。

$Variance:连续预测的偏差,0表示分类预测。

$Stdev:连续预测的标准偏差,0表示分类预测。

快捷函数:PredictSupport...(Predict+上面列出的含$的英文串)


PredictHistogram()函数生成表的查询清单:



PredictNodeID:从模型内容返回节点的标识符。

嵌套表的推荐预测: PredictAssociation()函数



嵌套值预测清单


第三章结束:评价1:没有介绍这些DMX在什么环境下执行的,也没有介绍相关环境,导致只能看鼓噪代码无实际效果,效果很差。

2、专业术语过多,生动例子太少,看得懵逼,不像是数据挖掘的入门书籍。中间很多跳跃性感觉不像指导书,倒像一个人看书的随笔。

0 0
原创粉丝点击