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

网站 代理 备案 费用admin管理员登录

网站 代理 备案 费用,admin管理员登录,做网站下载哪个软件,网站模板 php引入#xff1a; 啤酒与尿布的故事 关联规律挖掘#xff1a;从交易数据中发现#xff1a;买了X 还会买Y 的规则 关联规律挖掘‘购物篮分析’Market Basket Analysis#xff08;MBA#xff09; 关联规律-应用于推荐系统 1. 关联规则代码演示 使用的是mlxtend.frequent…引入 啤酒与尿布的故事 关联规律挖掘从交易数据中发现买了X 还会买Y 的规则 关联规律挖掘‘购物篮分析’Market Basket AnalysisMBA 关联规律-应用于推荐系统 1. 关联规则代码演示 使用的是mlxtend.frequent_patterns.Apriori() import numpy as np import pandas as pdfrom mlxtend.frequent_patterns import apriori,association_rules #TransactionEncoder 事务编码 #事务表示事件 #比如每次去商场购买东西是一次事务而实际购买到的东西就是项集 from mlxtend.preprocessing import TransactionEncoder te TransactionEncoder() X te.fit_transform(data) colmns te.columns_ df pd.DataFrame(X,columnscolmns) df.astype(np.uint8)尿布橙汁甜菜莴苣葡萄酒豆奶00001011101110211001131001114110101 data[[豆奶,莴苣],[莴苣,尿布,葡萄酒,甜菜],[豆奶,尿布,葡萄酒,橙汁],[莴苣,豆奶,尿布,葡萄酒],[莴苣,豆奶,尿布,橙汁]]result apriori(df,min_support0.6,use_colnamesTrue) result supportitemsets00.8(尿布)10.8(莴苣)20.6(葡萄酒)30.8(豆奶)40.6(尿布, 莴苣)50.6(尿布, 葡萄酒)60.6(尿布, 豆奶)70.6(莴苣, 豆奶) 关联规则 条目 —》另一些条目之间有关联的 根据关联性强进行推荐 推荐系统小公司分类 关联规则的三个计算: 支持度 support 置信度 confidence 提升度 lift 公式计算如下 association_rules(result,min_threshold0.5)antecedentsconsequentsantecedent supportconsequent supportsupportconfidenceliftleverageconviction0(尿布)(莴苣)0.80.80.60.750.9375-0.040.81(莴苣)(尿布)0.80.80.60.750.9375-0.040.82(尿布)(葡萄酒)0.80.60.60.751.25000.121.63(葡萄酒)(尿布)0.60.80.61.001.25000.12inf4(尿布)(豆奶)0.80.80.60.750.9375-0.040.85(豆奶)(尿布)0.80.80.60.750.9375-0.040.86(莴苣)(豆奶)0.80.80.60.750.9375-0.040.87(豆奶)(莴苣)0.80.80.60.750.9375-0.040.8 探究关联规则的原始代码 import numpy as np def createC1(dataSet):C1 []for transaction in dataSet:for item in transaction:if not [item] in C1:C1.append([item]) #store all the item unrepeatlyC1.sort()#return map(frozenset, C1)#frozen set, user cant change it.return list(map(frozenset, C1))def scanD(D,Ck,minSupport): #参数数据集、候选项集列表 Ck以及感兴趣项集的最小支持度 minSupportssCnt{}for tid in D:#遍历数据集for can in Ck:#遍历候选项if can.issubset(tid):#判断候选项中是否含数据集的各项#if not ssCnt.has_key(can): # python3 can not supportif not can in ssCnt:ssCnt[can]1 #不含设为1else: ssCnt[can]1#有则计数加1numItemsfloat(len(D))#数据集大小retList []#L1初始化supportData {}#记录候选项中各个数据的支持度for key in ssCnt:support ssCnt[key]/numItems#计算支持度if support minSupport:retList.insert(0,key)#满足条件加入L1中supportData[key] supportreturn retList, supportDatadef aprioriGen(Lk, k): #组合向上合并#creates Ck 参数频繁项集列表 Lk 与项集元素个数 kretList []lenLk len(Lk)for i in range(lenLk):for j in range(i1, lenLk): #两两组合遍历L1 list(Lk[i])[:k-2]; L2 list(Lk[j])[:k-2]L1.sort(); L2.sort()if L1L2: #若两个集合的前k-2个项相同时,则将两个集合合并retList.append(Lk[i] | Lk[j]) #set unionreturn retListdef apriori(dataSet, minSupport 0.5):C1 createC1(dataSet)D list(map(set, dataSet)) #python3L1, supportData scanD(D, C1, minSupport)#单项最小支持度判断 0.5生成L1L [L1]k 2while (len(L[k-2]) 0):#创建包含更大项集的更大列表,直到下一个大的项集为空Ck aprioriGen(L[k-2], k)#CkLk, supK scanD(D, Ck, minSupport)#get LksupportData.update(supK)L.append(Lk)k 1return L, supportDatadef generateRules(L, supportData, minConf0.7):#频繁项集列表、包含那些频繁项集支持数据的字典、最小可信度阈值bigRuleList [] #存储所有的关联规则for i in range(1, len(L)): #只获取有两个或者更多集合的项目从1,即第二个元素开始L[0]是单个元素的# 两个及以上的才可能有关联一说单个元素的项集不存在关联问题for freqSet in L[i]:H1 [frozenset([item]) for item in freqSet]#该函数遍历L中的每一个频繁项集并对每个频繁项集创建只包含单个元素集合的列表H1if (i 1):#如果频繁项集元素数目超过2,那么会考虑对它做进一步的合并rulesFromConseq(freqSet, H1, supportData, bigRuleList, minConf)else:#第一层时后件数为1calcConf(freqSet, H1, supportData, bigRuleList, minConf)# 调用函数2return bigRuleListdef calcConf(freqSet, H, supportData, brl, minConf0.7):#针对项集中只有两个元素时计算可信度prunedH []#返回一个满足最小可信度要求的规则列表for conseq in H:#后件遍历 H中的所有项集并计算它们的可信度值conf supportData[freqSet]/supportData[freqSet-conseq] #可信度计算结合支持度数据if conf minConf:print (freqSet-conseq,--,conseq,conf:,conf)#如果某条规则满足最小可信度值,那么将这些规则输出到屏幕显示brl.append((freqSet-conseq, conseq, conf))#添加到规则里brl 是前面通过检查的 bigRuleListprunedH.append(conseq)#同样需要放入列表到后面检查return prunedHdef rulesFromConseq(freqSet, H, supportData, brl, minConf0.7):#参数:一个是频繁项集,另一个是可以出现在规则右部的元素列表 Hm len(H[0])if (len(freqSet) (m 1)): #频繁项集元素数目大于单个集合的元素数Hmp1 aprioriGen(H, m1)#存在不同顺序、元素相同的集合合并具有相同部分的集合Hmp1 calcConf(freqSet, Hmp1, supportData, brl, minConf)#计算可信度if (len(Hmp1) 1): #满足最小可信度要求的规则列表多于1,则递归来判断是否可以进一步组合这些规则rulesFromConseq(freqSet, Hmp1, supportData, brl, minConf) data[[豆奶,莴苣],[莴苣,尿布,葡萄酒,甜菜],[豆奶,尿布,葡萄酒,橙汁],[莴苣,豆奶,尿布,葡萄酒],[莴苣,豆奶,尿布,橙汁]] L, supportData apriori(data,minSupport 0.5) # 频繁项集 display(L) #计算 display(supportData)[[frozenset({‘葡萄酒’}), frozenset({‘尿布’}), frozenset({‘豆奶’}), frozenset({‘莴苣’})], [frozenset({‘尿布’, ‘豆奶’}), frozenset({‘尿布’, ‘莴苣’}), frozenset({‘尿布’, ‘葡萄酒’}), frozenset({‘莴苣’, ‘豆奶’})], []] {frozenset({‘莴苣’}): 0.8, frozenset({‘豆奶’}): 0.8, frozenset({‘尿布’}): 0.8, frozenset({‘甜菜’}): 0.2, frozenset({‘葡萄酒’}): 0.6, frozenset({‘橙汁’}): 0.4, frozenset({‘莴苣’, ‘豆奶’}): 0.6, frozenset({‘尿布’, ‘葡萄酒’}): 0.6, frozenset({‘莴苣’, ‘葡萄酒’}): 0.4, frozenset({‘尿布’, ‘莴苣’}): 0.6, frozenset({‘葡萄酒’, ‘豆奶’}): 0.4, frozenset({‘尿布’, ‘豆奶’}): 0.6, frozenset({‘尿布’, ‘莴苣’, ‘豆奶’}): 0.4} generateRules(L,supportData,minConf0.8)[(frozenset({‘葡萄酒’}), frozenset({‘尿布’}), 1.0)] 核心思想简单来说就是 1、发现频繁项集过程为 ①扫描扫描所有数据 ②计数计算各个候选集的支持度 ③比较选出适合条件的频繁项集 ④产生频繁集 ⑤连接、再剪枝产生候选集 2、产生关联规则。过程根据前面提到的置信度的定义关联规则的产生如下 ①对于每个频繁项集L产生L的所有非空子集。 ②对于L的每个非空子集S如果PL/PSmin_conf则输出规则“Sa L-S”。L-S表示在项集中除去S子集的项集。 Apriori缺点 ①由频繁k-1项集进行自连接生成的候选频繁k项集数量巨大 ②在验证候选频繁k项集的时候需要对整个数据库进行扫描非常耗时。 更多推荐算法参考 史上最全机器学习算法源于逼乎
http://wiki.neutronadmin.com/news/329911/

相关文章:

  • 网站icp备案有效时间电商网站如何备案
  • 儿童 网站 设计建设网站学什么语言
  • 在线做mtv网站电商详情页模板免费下载
  • html手机网站开发后端网站建设内容与实现功能
  • 江门企业免费建站游戏ui设计
  • 松江网站设计自建网站平台哪个好
  • 中国城乡与住房建设部网站首页美工所需要的网站
  • 新网站该如何做网站优化呢霍山网站建设
  • 网站制作公司下浙江省建设安监站网站
  • 黑河市建设局网站wordpress编辑器百度云
  • 网站设计的论文网站建设与技术团队
  • 满城做网站电话常州网站关键字优化
  • 自己家开了一家装修公司怎么做装修网站直播软件哪个好
  • 贵阳网站建设建站系统视觉传播设计与制作
  • 网上商城网站开发需求说明书怀柔青岛网站建设
  • 百度网站快速收录清远seo站内优化
  • 网页设计与制作教学标准中职株洲sem优化哪家好
  • 网站生成手机版和各大网站做视频的工作总结
  • 前端 模板 网站公司网站重新建站通知
  • 西安地区专业做网站公司网页编程培训
  • 建立网站数据库实验报告昆明网站建设团队
  • 移动互联网站开发与维护wordpress调用用户自定义头像
  • 微信一键登录网站怎么做简述网站开发的三层架构
  • 手机购物软件有哪些企业优化方案
  • 上海闵行建设局官方网站罗湖附近网站建设公司
  • 网站建设这一行业怎样管理咨询公司主要做什么
  • 网站域名地址查询国内用react做的网站
  • 网站做推广的企业宣传型网站
  • 做网站需要画原型图么室内设计师怎么考证
  • 自己造网站wordpress 清新主题