最近与一个客户的开发团队探讨和学习SQL Server的数据挖掘及其应用。有几个比较有意思的问题,整理出来
关于数据挖掘的基本知识和学习资料,可以参考http://msdn.microsoft.com/zh-cn/library/bb510517.aspx
上一篇:SQL Server数据挖掘中的几个问题之理解列的用法
这一篇我们来探讨一下两个有时候会引起混淆的算法:聚类和顺序聚类
聚类算法是使用非常多的一种算法,它的作用是对数据进行分组,将特征相近的实体组织在一起,以便帮助我们对于目标实体分类决策。典型的情况,例如人口分析,客户分析。
聚类算法大致的效果如下(下面的分类名都可以修改,定义成我们更加容易理解的,例如“金牌客户”,“银牌客户”等等)




有关聚类算法,有一个常见的问题就是:同一个实体会不会出现在不同的类里面呢 也就是说是否有可能会有重叠的情况
这个问题的答案是:是否有重叠的情况,取决于算法的设置,默认情况下,是可能重叠的。
下面这个算法参数列表中,有一个CLUSTERING_METHOD,默认为1.就是所谓的EM(Expectation Maximization)这种算法,这是允许重叠的。

假如设置为3或者4,则不允许重叠。至于是否可以伸缩(Scalable)表示的是该算法读取数据的规则,假如可伸缩,则表示会先读取50000条记录作为种子进行建模,假如足够,则停止读取。否则继续读取下50000个。而不可伸缩则每次都读取所有的实体。
那么,什么是“顺序聚类”呢 其实它的完整名称应该是”Microsoft 顺序分析和聚类分析”,也就是结合了顺序分析和聚类分析的一种特殊的算法。

这个算法建立模型之后,大致看到的效果是下面这样的




最近与一个客户的开发团队探讨和学习SQL Server的数据挖掘及其应用。有几个比较有意思的问题,整理出来
关于数据挖掘的基本知识和学习资料,可以参考http://msdn.microsoft.com/zh-cn/library/bb510517.aspx
上一篇:SQL Server数据挖掘中的几个问题之理解列的用法
这一篇我们来探讨一下两个有时候会引起混淆的算法:聚类和顺序聚类
聚类算法是使用非常多的一种算法,它的作用是对数据进行分组,将特征相近的实体组织在一起,以便帮助我们对于目标实体分类决策。典型的情况,例如人口分析,客户分析。
聚类算法大致的效果如下(下面的分类名都可以修改,定义成我们更加容易理解的,例如“金牌客户”,“银牌客户”等等)




有关聚类算法,有一个常见的问题就是:同一个实体会不会出现在不同的类里面呢 也就是说是否有可能会有重叠的情况
这个问题的答案是:是否有重叠的情况,取决于算法的设置,默认情况下,是可能重叠的。
下面这个算法参数列表中,有一个CLUSTERING_METHOD,默认为1.就是所谓的EM(Expectation Maximization)这种算法,这是允许重叠的。

假如设置为3或者4,则不允许重叠。至于是否可以伸缩(Scalable)表示的是该算法读取数据的规则,假如可伸缩,则表示会先读取50000条记录作为种子进行建模,假如足够,则停止读取。否则继续读取下50000个。而不可伸缩则每次都读取所有的实体。
那么,什么是“顺序聚类”呢 其实它的完整名称应该是”Microsoft 顺序分析和聚类分析”,也就是结合了顺序分析和聚类分析的一种特殊的算法。

这个算法建立模型之后,大致看到的效果是下面这样的



