【第十五章:Sentosa_DSML社区版-机器学习之关联规则】
目录
15.1 频繁模式增长
15.2 PrefixSpan
【第十五章:Sentosa_DSML社区版-机器学习之关联规则】
机器学习关联规则是一种用于发现数据集中项之间有趣关系的方法。它基于统计和概率理论,通过分析大量数据来识别项之间的频繁共现模式。
15.1 频繁模式增长
1.算子介绍
频繁模式增长算子(FPGrowth)是通过构造频繁模式树的方式,可以通过较少的对数据集的遍历来构造频繁项集或频繁项对,根据输入的数据A,按照关联程度大小,得出与A关联最深的数据集。
2.算子类型
机器学习/关联规则算子
3.算子属性说明
属性 | 页面显示名称 | 选项 | 类型 | 默认值 | 约束规则 | 属性说明 |
mode_select | 模式选择 | 必选 | String | listMode | [list模式,多条模式] | 选择算法模式 |
items_col | 物品列 | 必选 | String | null | 单选:输入数据集的所有列 | 列名 |
min_confidence | 最小置信度 | 必填 | Double | 0.8 | [0.0,1.0] | 生成关联规则的最小置信度 |
min_support | 最小支持级别 | 必填 | Double | 0.3 | [0.0,1.0] | 频繁模式的最小支持级别,任何超出(minSupport *数据集大小)次数的模式都将在频繁项目集中输出 |
skip_null_value | 是否跳过空值 | 必填 | Boolean | 是 | 单选:是,否 | 是否跳过空值 |
4.算子使用介绍
(1)算子初始化
参考公共功能算子初始化操作
(2)算子属性设置
频繁模式增长算子属性设置如图所示
频繁模式增长算子属性设置
频繁模式增长多条模式属性设置示意图
(3)算子的运行
通过数据源算子读取数据,后续可以接任意个数据处理算子,然后接一个频繁模式增长算子,然后执行运行。
频繁模式增长算子流
执行算子流操作示意图
算子的运行结果再添加一个图表算子即可执行
频繁模式增长算子运行结果
如下图可点击查看模型信息
查看模型信息操作示意图
在模型信息中可以查看该算子的频繁项集
查看频繁项集示意图
15.2 PrefixSpan
1.算子介绍
PrefixSpan算法的目标是挖掘出满足最小支持度的频繁序列。PrefixSpan算法由于不用产生候选序列,且投影数据库缩小的很快,内存消耗比较稳定,作频繁序列模式挖掘的时候效果很高。PrefixSpan和fp-growth 类似也是基于分治的思想,其基于前缀将原有数据进行投影,并不断地将前缀进行组合并输出满足最小支持度的模式。
2.算子类型
机器学习/关联规则。
3.算子属性说明
属性 | 页面显示名称 | 选项 | 类型 | 默认值 | 约束规则 | 属性说明 |
minSupport | 最小支持级别 | 用户 输入 | Double | 0.1 | (0,1) | 最低支持级别的参数。出现次数超minSupport*数据集size 次的序列模式被识别为频繁序列模式。 |
maxPatternLength | 最大模式长度 | 单选 | Integer | 10 | [2,100] | 序列模式的最大长度。 |
index | Index列 | 单选 | String | null | DataModel里的Continuous的Column | 用来排序的列 |
Key | Key列 | 单选 | String | null | DataModel里的Categorical的column | 类别列 |
event | 事件列 | 单选 | String | null | DataModel里的Categorical的Column | 事件列 |
4.算子使用介绍
(1)算子初始化
参考公共功能算子初始化操作。
(2)算子属性设置
PrefixSpan算子的属性设置如图所示
PrefixSpan属性设置示例
(3)算子的运行
通过数据源算子读取数据,中间可以接任意个数据处理算子,然后接一个PrefixSpan算子,后可接任意个数据处理算子。如下为使用举例:
1)通过数据读入算子读取需要处理的数据。
2)连接一个PrefixSpan算子。
3)编辑PrefixSpan 算子,key列为类别列,index列为排序列,event列为“事件列”,其他参数可参考默认值设置。
连接一个表格算子,运行,如图所示
运行PrefixSpan示例
最终评估结果示例
可得到所有满足支持度要求的频繁序列集和频度
为了非商业用途的科研学者、研究人员及开发者提供学习、交流及实践机器学习技术,推出了一款轻量化且完全免费的Sentosa_DSML社区版。以轻量化一键安装、平台免费使用、视频教学和社区论坛服务为主要特点,能够与其他数据科学家和机器学习爱好者交流心得,分享经验和解决问题。文章最后附上官网链接,感兴趣工具的可以直接下载使用
Sentosa_DSML社区版
Sentosa_DSML算子流开发视频