




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FP-Growth 模式发掘原理与spark实践演讲人:时间:提纲FPGrowth算法原理FPGrowth推荐实例FPGrowth 简介模式挖掘也叫关联规则,其实就是从大量的数据中挖掘出比较有用的数据,挖掘频繁项。比如说超市有大量的购物数据,从而可以根据用户的购物数据找到哪些商品关联性比较大。也可以进行用户推荐。关联规则算法发展到现在一共有三个算法:FP-Tree算法、Apriori算法、Eclat算法,其中FP-Tree是一种不产生候选模式而采用频繁模式增长的方法挖掘频繁模式的算法;此算法只扫描两次,第一次扫描数据是得到频繁项集,第二次扫描是利用支持度过滤掉非频繁项,同时生成FP树。然后后面
2、的模式挖掘就是在这棵树上进行。此算法与Apriori算法最大不同的有两点:不产生候选集,只遍历两次数据,大大提升了效率。FPGrowth处理流程关联规则:用于表示数据内隐含的关联性,一般用X表示先决条件,Y表示关联结果。数据整理清洗,清除异常数据,整理为购物篮形式支持度(Support):所有项集中X,Y出现的可能性。例如,1000个顾客中,200个买了面包,则面包的支持度= 200 / 1000 = 20%,如果同时买面包与豆浆的人有150,则规则 面包,豆浆 的支持度= 150 / 1000 = 15%扫描数据,获取FP-Tree利用FP-Tree计算各个规则的支持度,置信度,并用于推荐商
3、品置信度(Confidence):先决条件X发生的条件下,关联结果Y发生的概率。上面例子, 当一个买了面包的人,面包,豆浆 的置信度= 15% / 20% = 75%提纲FPGrowth算法原理FPGrowth推荐实例FPGrowth 推荐实例系统准备:centos6.8、Spark 2.3.1、Pyrhon3.X,导入pyspark,pandas数据准备:使用Groceries购物篮数据,该数据集是某个杂货店一个月真实的交易记录,共有9835条消费记录,169个商品。建模目的:通过FPGrowth 发掘关联规则,在给定支持度与置信度水平下,为客户推荐商铺。实例:启动spark,读取数据imp
4、ort pandas as pdfrom pyspark import SparkContext,SQLContext# 构建spark连接,注意这里自定义spark序列化conf = SparkConf().setAppName(laboratory_spark_ml_NaiveBayes).setMaster(yran).set(spark.serializer,org.apache.sp ark.serializer.JavaSerializer)sc = SparkContext().getOrCreate() sqlContext = SQLContext(sc)# 读取数据df_G
5、roceries = sc.textFile(u”文件路径/Groceries.txt).map(lambda x: str(x).split(&).map(lambda x: x0, x1.split(,)# 本地数据转换为RDDdf_Groceries_rdd = sqlContext.createDataFrame(df_Groceries).toDF(index, items)实例:源数据展示# 展示数据df_Groceries_rdd.show(20, False)实例:模型训练# FPGrowth模型属于mllib模块,数据格式为RDD # 模型训练from pyspark.mll
6、ib.fpm import FPGrowth# 训练频繁集,参数minSupport(生成规则大于指定支持度的频繁集) # 本例指定支持度=0.04rdd = df_Groceries.map(lambda x: x1)model = FPGrowth.train(rdd, minSupport=0.04)# 获取结果,显示部分频繁集sorted(model.freqItemsets().collect()0:2实例:推荐前数据处理# 产品推荐# 获取商品组合支持度,并转换成字典freqItems = model.freqItemsets().map(lambda x: set(x.items
7、), x.freq).collect() freqItems_df = pd.DataFrame(freqItems)freqItems_df.index = freqItems_df0.map(lambda x: ,.join(list(x) freqItems_dict = freqItems_df1.to_dict()# 计算所有频繁集置信度list_items = model.freqItemsets().collect()实例:推荐函数以及推荐应用def Confidence(x=, min_conf=0.1):re = set()for z in freqItems: conf = 0Set_and = set(z0) & set(x)if (len(Set_and) 0) & (len(Set_and) 0): Dfreq = freqItems_df1,.join(list(Set_and)conf = z1 * 1.0 / Dfreqif (conf min_conf): Set_to = z0 - set(x) if (len(Set_to) 0):re = re | Set_toreturn ,.join(list(re)# 推荐,要求置信度 0.1freqItems_conf = sqlContext.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 储物间转让合同样本
- 个人器材租赁合同标准文本
- 上海物业服务合同样本
- 假山洞合同样本
- 2025企业雇佣合同制员工雇佣合同范本
- 伦敦私人租房合同样本
- 个人委托律师合同标准文本
- 企业代运营合同标准文本
- 业务分配合同样本
- 人才工程就业合同样本
- (二模)温州市2025届高三第二次适应性考试历史试卷(含答案)
- 全国高职单招时事政治历史题库
- 冷库货物储存合同范本
- 第15课《青春之光》课件-2024-2025学年统编版语文七年级下册
- 世界给予我的 课件-2024-2025学年高二下学期开学第一课主题班会
- 个体诊所申请书范文
- LNG加气站施工方案
- 互动式医学课堂教学设计
- 某大型三甲医院智能化设计方案
- 2024年社会工作者之初级社会综合能力考试题库含答案
- 短视频运营(初级)营销师-巨量认证考试题(附答案)
评论
0/150
提交评论