下载此文档

数据挖掘关联性分析小软件Java源程序代码.doc


文档分类:IT计算机 | 页数:约18页 举报非法文档有奖
1/18
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/18 下载此文档
文档列表 文档介绍
关联规则算法实现
一、实验目的
了解编写数据挖掘算法的一般过程;
理解关联规则生成算法;
掌握生成频繁项集的Apriori算法;
掌握由频繁项集生成关联规则的方法。
二、实验环境
windows操作系统,一种程序设计语言开发环境。
三、实验内容及步骤
1、基于模拟数据集,实现Apriori算法以获得频繁项集。
2、基于上一步得到的频繁项集,编写算法得到关联规则。
:
输入最小的支持度阈值为1生成频繁项集
输入最小可信度的值生成关联规则值:
四、实验中的问题和心得
在实验过程中,遇到了不少的问题,比如说模拟数据集的输入(本人通过一个二维数组将其解决)。通过此次实验,我也从中掌握了不和知识,比如加深了对Apriori算法的理解。通过此次算法,我也设想过如何编写数据挖掘的一般过程,对其也有了更深层次的认识。
五、回答问题
请设置不同的最小支持度阈值,观察得到的频繁项集的数目,说说频繁项集与最小支持度阈值之间的关系。
答:输入最小支持度阈值为2时,其生成的频繁项集如下:
最小支持度阈值表示数据项集在统计意义上的最低主要性,小于最低支持度的数据项将会被丢弃,将影响频繁项集的结果。
请设置不同的最小可信度阈值,观察得到的关联规则的数目,说说关联规则与最小可信度阈值之间的关系。
答:输入的最小可信度的值为1,生成的关联规则如下:
最小可信度阈值表示规则的最低可靠性,小于该设定的可靠性值的规则将会被丢弃。
详细介绍各算法的流程图和所用到的数据结构,并附带源代码(源代码中应有必要的注释信息)。
答:(1)算法用到的数据结构:哈希表和二维数组。
(2)算法的伪代码描述如下:
输入:交易数据库D;最小支持度阈值min_sup。
输出:D中的频繁项集L。
方法:
(1) L1=find_frequent_1_itemset(D);找频繁项集1-项集;
(2) for ( k=2; Lk-1X <; min_sup)
{ apriori_gen(Lk-1,min_sup) 连接和剪枝。用于在
第k-1次遍历中生成的Lk-1生成Ck
for each t| D 扫描数据库,确定每个候选项集的支持频度
{ Ct=subset(Ck ,t)获得t所包含的候选项集
for each cÎCt ++;
} }
(3) Lk={ c ÎCk | > min_sup }由Ck生成Lk
(4) return L=L1 ∪ L2 …. ∪ Lk
procedure apriori_gen(Lk-1,min_sup)
{
for each l1 Î Lk-1
for each l2 Î Lk-1
{ if(l1[1]=l2[1] ∧…∧ l1[k-2]=l2[k-2] ∧
l1[k-1] < l2[k-1] )
c=l1 Å l2; 将两个项集连接在一起
if not has_infrequent_itemset(c,Lk-1)
Ck=Ck ∪{ c } ;
}
reutrn Ck
}
procedure has_infrequent_itemset (c,Lk-1)
{
for each(k-1) subset s of c
if s | Lk-1
return true ;
else
return false ;
}
(3)算法源码:
/**
* 编写者: oklzh
* Apriori算法
* 编写日期: 2007-11-04
*/
package Apriori;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
imp

数据挖掘关联性分析小软件Java源程序代码 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数18
  • 收藏数0 收藏
  • 顶次数0
  • 上传人63229029
  • 文件大小204 KB
  • 时间2017-10-17