当前位置: 首页 > article >正文

【第十三章:Sentosa_DSML社区版-机器学习聚类】

目录

【第十三章:Sentosa_DSML社区版-机器学习聚类】

13.1 KMeans聚类

13.2 二分KMeans聚类

13.3 高斯混合聚类

13.4 模糊C均值聚类

13.5 Canopy聚类

13.6 Canopy-KMeans聚类

13.7 文档主题生成模型聚类

13.8 谱聚类


【第十三章:Sentosa_DSML社区版-机器学习聚类】

13.1 KMeans聚类

1.算子介绍

        KMeans聚类算子(k-means clustering algorithm:k均值聚类算法)是一种迭代求解的聚类分析算法,其步骤是随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。

2.算子类型

        机器学习/聚类算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

k

聚类数目

必填

Int

2

>=2

k-means 聚类最终创建的簇的数目

max_iter

最大迭代次数

必填

Int

20

>0

最大迭代次数

tolerance

收敛偏差

必填

Double

0.0001

>0

收敛偏差

init_mode

初始化算法

必选

String

k-means||

“random”,“k-means||”中的一个

初始化算法类型,可选“random”,“k-means||”

init_steps

k-means||算法的步数

必填

Int

2

>0 并且只在 init_mode 为“k-means||”时让用户设置

“k-means||”算法的步数

Wight

权重列设置

非必填

String

在建模时,有时不同的样本可能有不同的权重。我们需要支持用户在建模时指定权重列。

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        KMeans算子属性界面如图所示

KMeans属性界面

        聚类中心点有两种初始化方法:随机初始化和“k - means||”算法。当使用“k - means||”算法进行中心点初始化时,需要设置“k - means||”算法的步数参数。

(3)算子的运行

        KMeans为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个KMeans算子,右击算子,点击运行,得到KMeans模型。

运行KMeans算子获得KMeans模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

KMeans模型算子流

        右击模型,查看模型的模型信息

KMeans模型信息

        模型的运行结果如图所示

KMeans模型运行结果

        模型的评估结果如图所示

KMeans模型模型评估结果

13.2 二分KMeans聚类

1.算子介绍

        二分KMeans(BuildBKMeansnode)算法是对K-means的改进,防止聚类陷入局部最优解。它的主要思想是:首先将所有点作为一个簇,然后将该簇一分为二。之后选择能最大限度降低聚类代价函数的簇划分为两个簇。以此进行下去,直到簇的数目等于用户给定的数目k为止。

2.算子类型

        机器学习/聚类算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

k

聚类数目

必填

Int

4

>=2

聚类数目

max_iter

最大迭代次数

必填

Int

20

>0

最大迭代次数

min_divisible_cluster_size

最小可分割簇数目

必填

Double

1.0

>0.0

最小可试用集群大小,如果大于1则为最小点数,如果<1则为最小比例

Wight

权重列设置

非必填

String

在建模时,有时不同的样本可能有不同的权重。我们需要支持用户在建模时指定权重列。

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        二分KMeans算子属性界面如图所示

二分KMeans属性界面

(3)算子的运行

        二分KMeans为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个二分KMeans算子,右击算子,点击运行,得到二分KMeans模型。

运行二分KMeans算子获得二分KMeans模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

二分KMeans模型算子流

        右击模型,查看模型的模型信息,如图所示。

二分KMeans模型信息

        模型的运行结果如图所示

二分KMeans模型运行结果

        模型的评估结果如图所示

二分KMeans模型评估结果

13.3 高斯混合聚类

1.算子介绍

        高斯混合模型(BuildGMNode)就是用高斯概率密度函数(正态分布曲线)精确地量化事物,它是一个将事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。高斯混合模型就是用高斯概率密度函数(正态分布曲线)精确地量化事物,它是一个将事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。

2.算子类型

        机器学习/聚类算子。

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

k

高斯函数的数量

必填

Int

2

>1

混合模型中独立高斯函数的个数。必须大于1。默认值:2。

max_iter

最大迭代次数

必填

Double

100

>0

最大迭代次数

tol

收敛偏差

必填

Double

0.000001

>0

收敛偏差

Wight

权重列设置

非必填

String

在建模时,有时不同的样本可能有不同的权重。我们需要支持用户在建模时指定权重列。

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        高斯混合模型属性界面如图所示

高斯混合模型属性界面

(3)算子的运行

        高斯混合模型为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个高斯混合模型算子,右击算子,点击运行,得到高斯混合模型的模型。

运行高斯混合模型算子获得高斯混合模型的模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

高斯混合模型的模型算子流

        右击模型,查看模型的模型信息

高斯混合模型的模型信息

        模型的运行结果如图所示

高斯混合模型运行结果

        模型的评估结果如图所示

高斯混合模型的模型评估结果

13.4 模糊C均值聚类

1.算子介绍

        模糊C均值聚类算法 fuzzy c-means algorithm (FCMA)或称( FCM)。它是一种基于划分的聚类算法,它的思想就是使得被划分到同一簇的对象之间相似度最大,而不同簇之间的相似度最小。它除了给出某一样本的具体分类,还可以给出它隶属于每一样本的隶属度。更方便用户对聚类结果有更深入的判断。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

clusters_num

聚类数目

必选

Integer

3

>2

聚类数目

max_iter

最大迭代次数

必选

Integer

100

>=1

最大迭代次数

epsilon

迭代终止判定准则

必选

Double

0.1

0<x<1

迭代中止判定准则

fuzzyness_coefficient

隶属度因子

必选

Double

2.0

>=2.0

隶属度因子

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        模糊C均值模型属性界面如图所示

模糊C均值模型属性界面

        其中迭代终止判定准则表示迭代后中心点坐标的改变量小于0.1时迭代终止。隶属度因子为代价函数中隶属度的加权指数。

(3)算子的运行

        模糊C均值聚类模型为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个模糊C均值聚类模型算子,右击算子,点击运行,得到模糊C均值聚类的模型。

运行模糊C均值聚类算子获得模糊C均值聚类模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

模糊C均值聚类模型的算子流

        右击模型,查看模型信息

模糊C均值聚类模型的模型信息

        模型的运行结果如图所示

模糊C均值聚类模型的运行结果

        模型的评估结果如图所示

模糊C均值聚类模型的评估结果

13.5 Canopy聚类

1.算子介绍

        Canopy算法也是一种常用的聚类算法,它的一种快速粗聚类算法,优势是用户不用事先指定聚类数目。用户需要指定两个距离阈值,T1,T2,且T1>T2。可以认为T2为核心聚类范围,T1为外围聚类范围。每一个训练样本都属于一个确定的核心聚类范围,但可以属于多个外围聚类范围。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

T1

T1值

必填

Double

100.0

>0.0 且 >=T2

Canopy算法T1值

T2

T2值

必填

Double

1.0

>0.0 且 <=T1

Canopy算法T2值

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作。

(2)算子属性设置

        Canopy聚类算子的属性界面如图所示

Canopy聚类算子属性界面

(3)算子的运行

        Canopy聚类算子为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个Canopy聚类算子,右击算子,点击运行,得到Canopy聚类算子的模型。

运行Canopy聚类算子获得Canopy聚类模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

Canopy聚类模型的算子流

        右击模型,查看模型信息

Canopy聚类模型信息

        模型的运行结果如图所示。

Canopy聚类模型的运行结果

        模型的评估结果如图所示

Canopy聚类模型的评估结果

        常见问题解答

        1. 分类结果过多(超过100种)

        该算子建模后,生成过多的分类结果,造成算子报错。

13.6 Canopy-KMeans聚类

1.算子介绍

        Canopy-Kmeans 是结合Canopy和Kmeans两种聚类算法的优势,首先利用Canopy聚类先对数据进行快速“粗”聚类,得到k值后再使用K-means进行进一步“细”聚类。这样既提高聚类算法性能,也不用用户提前指定聚类具体个数。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

T1

T1值

必填

Double

100.0

>0.0 且 >=T2

Canopy算法T1值

T2

T2值

必填

Double

1.0

>0.0 且 <=T1

Canopy算法T2值

max_iter

最大迭代次数

必填

Int

20

>0

最大迭代次数

tolerance

收敛偏差

必填

Double

0.0001

>0.0

收敛偏差

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作。

(2)算子属性设置

        Canopy-KMeans聚类算子的属性界面如图所示

Canopy-KMeans聚类算子属性界面

        Canopy-KMeans聚类算子用Canopy算法确定聚类的初始中心点,再用KMeans算法进行细聚类。

(3)算子的运行

        Canopy-KMeans聚类算子为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个Canopy-KMeans聚类算子,右击算子,点击运行,得到Canopy-KMeans聚类算子的模型。

运行Canopy-KMeans聚类算子获得Canopy-KMeans聚类模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

Canopy-KMeans聚类模型的算子流

        右击模型,查看模型信息

Canopy-KMeans聚类模型信息

        模型的运行结果如图所示

Canopy-KMeans聚类模型的运行结果

        模型的评估结果如图所示

Canopy-KMeans聚类模型的评估结果

13.7 文档主题生成模型聚类

1.算子介绍

        文档主题生成模型聚类(BuildLDANode)也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。所谓生成模型,就是说,我们认为一篇文章的每个词都是通过“以一定概率选择了某个主题,并从这个主题中以一定概率选择某个词语”这样一个过程得到。文档到主题服从多项式分布,主题到词服从多项式分布。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

k

主题数量

必填

Int

10

>1

推断的主题(集群)的数量。一定是> 1。默认值:10。

max_iter

最大迭代次数

必填

Int

20

>0

最大迭代次数

sub_sampling_rate

采样率

必填

Double

0.05

optimizer=online 且(0,1)

仅适用于优化器为online模式,在每次梯度下降迭代中被采样和使用的语料在(0,1)范围内的分数。

learning_decay

学习速率

必填

Double

0.51

optimizer=online 且(0.5,1.0]

指数衰减速率,仅适用于优化器为online模式,这个值应该在(0.5,1.0]之间,已保证渐进收敛

learning_offset

学习偏移量

必填

Int

1024

optimizer=online且>0

仅适用于优化器online。(正)学习参数,降低早期迭代。 越大的值使早期迭代次数减少。

optimize_doc_concentration

是否优化alpha

必选

Boolean

单选:true false

是否优化文档主题参数

checkpoint_interval

检查点间隔

必填

Int

10

>= 1或者=-1

设置检查点间隔(>= 1)或禁用检查点(-1)的参数。

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        文档主题生成模型的属性界面如图所示

文档主题生成模型聚类属性界面

(3)算子的运行

        文档主题生成模型为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个文档主题生成模型,右击算子,点击运行,得到文档主题生成模型的模型。

运行文档主题生成模型聚类算子获得模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

文档主题生成模型聚类的模型算子流

        右击模型,查看模型信息

文档主题生成模型聚类的模型信息

        模型的运行结果如图所示

文档主题生成模型聚类的模型运行结果

        模型的评估结果如图所示

文档主题生成模型聚类的模型评估结果

12.8 DBSCAN聚类

1.算子介绍

        DBSCAN (Density-Based Spatial Clustering of Applications with Noise)是一个比较有代表性的基于密度的聚类算法。它将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在噪声的空间数据库中发现任意形状的聚类。该算法利用基于密度的聚类的概念,即要求聚类空间中的一定区域内(用Eps定义出的半径)所包含对象(点或其他空间对象)的数目不小于某一给定阈值(用MinPts定义的聚类点数)。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

maxDistance

邻域半径R(>0)

必填

Double

10

>0

邻域半径R

minPoints

密度邻域的最小实例数(>0)

必填

Int

10

>0

密度邻域的最小实例数

feature_weight

是否计算特征重要性

必填

Boolean

单选:是,否

是否计算特征重要性

show_pie_chart

是否显示聚类大小饼状图

必填

Boolean

单选:是,否

是否显示聚类大小饼状图

show_distribution_mpa

是否显示聚类分布图

必填

Boolean

单选:是,否

是否显示聚类分布图

skip_null_value

是否跳过空值

必填

Boolean

单选:是,否

是否跳过空值

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        DBSCAN算子属性界面如图所示

DBSCAN属性界面

(3)算子的运行

        DBSCAN为建模算子,需要先训练数据生成模型,再通过模型对相同结构的数据进行处理得到最终结果。具体运行过程如下所述。

        首先通过数据读入算子读取数据,中间可以接任意个数据处理算子(例,行处理,列处理等),然后接一个DBSCAN算子,右击算子,点击运行,得到DBSCAN模型。

运行DBSCAN算子获得DBSCAN模型

        得到模型后右击模型,可以查看模型信息。模型后可接任意个数据处理算子,再接图表分析算子或数据写出算子,形成算子流执行。模型后也可接评估算子,对模型的聚类结果进行评估。

DBSCAN模型算子流

        右击模型,查看模型的模型信息

DBSCAN模型信息

        模型的运行结果如图所示

DBSCAN模型运行结果

        模型的评估结果如图所示

DBSCAN模型模型评估结果

13.8 谱聚类

1.算子介绍

        谱聚类是从图论中演化出来的算法,它将聚类问题转换成一个无向加权图的多路划分问题。主要思想是把所有数据点看做是一个无向加权图 G = ( V,E ) 的顶点 V ,E 表示两点间的权重,数据点之间的相似度越高权重值越大。然后根据划分准则对所有数据点组成的图进行切图,使切图后不同的子图间的边权重和尽可能低,而子图内的边权重和尽可能高,从而实现聚类的效果。

2.算子类型

        机器学习/聚类算子

3.算子属性说明

属性

页面显示名称

选项

类型

默认值

约束规则

属性说明

Input_list

需要计算的列

必填

Array

列名

需要参与计算的列名

Sigma

Sigma系数

必填

Double

0.05

>0

相似度矩阵计算系数

K

聚类个数

必填

Int

2

>1

聚类的类别数

max_iter

最大迭代次数

必填

Int

3

>0

最大迭代次数

4.算子使用介绍

(1)算子初始化

        参考公共功能算子初始化操作

(2)算子属性设置

        谱聚类算子属性界面如图所示 

DBSCAN属性界面

(3)算子的运行

        谱聚类算子对输入数据计算相似度,然后聚类,输出聚类类别

谱聚类算子执行流程

        执行算子流得到结果

谱聚类算子流执行结果


 为了非商业用途的科研学者、研究人员及开发者提供学习、交流及实践机器学习技术,推出了一款轻量化且完全免费的Sentosa_DSML社区版。以轻量化一键安装、平台免费使用、视频教学和社区论坛服务为主要特点,能够与其他数据科学家和机器学习爱好者交流心得,分享经验和解决问题。文章最后附上官网链接,感兴趣工具的可以直接下载使用

Sentosa_DSML社区版​​​​​​​​​​​​​​

​​

Sentosa_DSML算子流开发视频


http://www.kler.cn/a/313005.html

相关文章:

  • 985研一学习日记 - 2024.11.12
  • 关于sass在Vue3中编写bem框架报错以及警告问题记录
  • PCL 点云分割 基于CPC算法的分割
  • 009_SSH_Mysql图书管理系统(学生注册 借书 还书 绵阳)——lwplus87(免费送)
  • ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=2)
  • 【Python无敌】在 QGIS 中使用 Python
  • dedecms——四种webshell姿势
  • 2024年“华为杯”研赛第二十一届中国研究生数学建模竞赛解题思路|完整代码论文集合
  • DataX--Web:图形化界面简化大数据任务管理
  • 开发易忽视的问题:InnoDB 行锁设计与实现
  • Pycharm中虚拟环境依赖路径修改
  • LeetCode 面试经典150题 67.二进制求和
  • istio中使用serviceentry结合egressgateway实现多版本路由
  • JFinal整合Websocket
  • 大模型中常见 loss 函数
  • 关于“华为杯”第二十一届中国研究生数学建模竞赛赛题下载及提交作品的重要提醒
  • pytorch实现RNN网络
  • Vue使用qrcodejs2-fix生成网页二维码
  • 解决 GitLab CI/CD 中的 `413 Request Entity Too Large` 错误
  • 生信初学者教程(五):R语言基础
  • 【计算机网络篇】电路交换,报文交换,分组交换
  • BGP实验
  • Percona发布开源DBaaS平台;阿里云RDS发布全球多活数据库(GAD);Redshift支持自然语言生成SQL
  • Pyspark dataframe基本内置方法(4)
  • 【有啥问啥】弱监督学习新突破:格灵深瞳多标签聚类辨别(Multi-Label Clustering and Discrimination, MLCD)方法
  • QT 将文字矢量化,按照设置的宽和高绘制