工业大数据分析算法实战-day09

day09

今天是第9天,昨日是针对模型评价和聚类算法进行阐述,主要是对聚类不同类型的算法进行了介绍(距离、分布、密度、层次),今日是针对机器学习另外一个重点关联规则进行阐述说明,以及深度学习相关内容进行介绍

关联规则

关联规则属于无监督的机器学习方法,作用不是对变量进行预测,而是发现数据集中不同项之间的关系

术语定义示例
项目数据集中被分析的具体内容,如商品、服务等。牛奶、面包、啤酒、鸡蛋等
事务一组购买的项目,通常表示一个顾客的购物记录。事务1:牛奶、面包;事务2:啤酒、鸡蛋;事务3:牛奶、啤酒
项集一组同时出现的项目,可以是单个项目或多个项目组合。单一项集:牛奶、面包;组合项集:牛奶和面包、啤酒和鸡蛋
支持度项集在所有事务中出现的频率,衡量项集的重要性。支持度 = 30/100 = 0.3(“牛奶和面包”出现频率为30%)
频繁项集支持度超过设定阈值的项集。支持度大于0.2的项集,如“牛奶和面包”支持度为0.3
置信度在包含A的事务中,B同时出现的概率。置信度 = 60/80 = 0.75(“牛奶→面包”的置信度)
提升度衡量A和B之间关联强度的指标,>1表示正相关。提升度 = 0.75 / 0.4 = 1.875(“牛奶→面包”的提升度)

关联规则实现过程为:

  • 数据筛选,对数据进行清洗过滤,筛选掉那些公共的项目
  • 根据支持度,从事务中找出频繁项集(需要指定最小支持度)
  • 根据置信度,从频繁项集中找出强关联规则(需要指定最小置信度)
  • 根据提升度,从强关联规则中筛选出有效的强关联规则
  • 使用其他评价指标进行评价

关联规则常用算法

背景:购物篮分析。假设你是一个商店老板,你想了解顾客常常一起购买哪些商品。比如,如果很多顾客买了苹果后又买了牛奶,你就知道苹果和牛奶有一定的“关联”。关联规则的任务就是发现这种规律。

  • Apriori算法(像筛选常买商品的清单):假设你有一个非常大的购物单,里面有很多商品,首先你想知道,哪些商品是最常被购买的。比如,你发现苹果、牛奶和面包是最常见的商品组合。Apriori算法的基本思路就是通过不断地筛选,找到那些“频繁”被购买的商品。
    • 如何操作:
  1. 第一步:先找出每个商品单独出现的频率,看看哪些商品是最常被购买的。比如你发现苹果、牛奶和面包分别有100、80、70个人购买。
  2. 第二步:接着,找出“成对”出现的商品,比如苹果和牛奶一起购买的次数。
  3. 第三步:再找出“三个商品一起购买”的组合,依此类推。
  4. 剪枝:如果某个商品组合很少被购买,那么它就不需要继续检查了,可以“剪掉”,节省时间。

总结:Apriori算法就是逐步从单个商品开始,扩展到更大组合,最后找出哪些商品组合最常被一起购买

  • FP-Growth算法(更聪明的购物篮查找):FP-Growth算法是对Apriori算法的一种改进,想法是减少重复工作,快速找到常购买的商品组合。
    • 如何操作:
  1. 构建一个“压缩版”购物篮:首先,通过一次扫描数据,把最常被购买的商品提取出来,并把它们按照频率排序。然后,基于这些常买商品构建一个压缩的结构(叫做FP树),就像一个“压缩版”的购物篮。
  2. 递归查找:然后通过这个FP树,快速找出频繁的商品组合。这样你就不需要每次都扫描原始的大购物单了,只需要操作压缩版的结构。

总结:FP-Growth算法通过构建一个压缩后的结构来避免重复扫描数据,这样就能更快找到常买的商品组合。

  • Eclat算法(用更聪明的方式找到常见商品):Eclat算法也是一个很聪明的查找方法,它和Apriori的做法不一样,Eclat不是通过“扩展商品组合”来找到关联,而是通过比较每个商品的“事务ID”来找规律。
    • 如何操作:
  1. 把购物记录转成ID列表:你把所有顾客的购物记录转化为ID列表。例如,顾客A买了苹果、牛奶和面包,那么就给这些商品一个编号(比如“苹果”编号1,“牛奶”编号2,“面包”编号3),然后记录这些编号在购物单中的出现位置。
  2. 比较ID列表:Eclat算法就会把两个商品的ID列表进行“交集”,看它们有多少共同的购物记录。共同出现的越多,说明这两个商品的组合越常见。
  3. 递归查找:然后通过递归的方式,不断扩大组合,直到找到频繁的商品组合。

总结:Eclat算法通过比较商品的购物记录ID,找到哪些商品组合频繁出现,而不需要一层一层地扩展。

关联规则评价

评价指标定义解释
确信度 (Confidence)在给定条件下,规则 A⇒BA \Rightarrow BA⇒B 成立的概率,表示在出现 AAA 的情况下,BBB 也出现的概率。反映了规则的可靠性。确信度越高,说明规则的可靠性越强。
卡方系数 (Chi-Square)用于检验关联规则中两个事件之间是否独立,判断是否有统计学上的显著性。通过比较观察到的频率与期望的频率,计算两个变量之间的关联性。卡方值越大,说明变量之间的关联性越强。
全自信度 (Lift)计算一个规则的提升度,衡量规则中 BBB 在 AAA 出现时的发生概率相对于独立情况下发生的概率的提升。如果 Lift > 1,说明 AAA 和 BBB 是正相关的;如果 Lift = 1,说明 AAA 和 BBB 独立;如果 Lift < 1,说明负相关。
最大自信度 (Max Confidence)用于选择多个规则中最有信心的规则,即选择确信度最高的规则。通过比较多个规则的确信度,找到最有信心的规则。
Kulc系数 (Kulc’s coefficient)评估两个项集 AAA 和 BBB 的关联度,度量规则的强度。Kulc系数用来衡量规则的强度,通常大于 1 表示有很强的关联性。
Cosine距离 (Cosine Similarity)用来衡量两个项集 AAA 和 BBB 的相似度,范围从 0 到 1,值越大说明两者越相似。主要用于衡量项集之间的相似性,广泛应用于文本挖掘。
Leverage (杠杆值)衡量项集 AAA 和 BBB 同时出现的频率与它们各自独立出现的频率之间的差异。Leverage值越大,表示规则的关联性越强。Leverage 计算了项集 AAA 和 BBB 之间的独立性与实际发生的差距。
不平衡因子 (Imbalance Factor)衡量规则中项集 AAA 和 BBB 出现频率的差异,通常用于分析不平衡数据中的关联性。计算规则是否存在显著的偏向性,主要用于不平衡数据集的分析。

深度学习

深度学习算法的分类

模型全名核心思想/特点应用场景
卷积神经网络(CNN)Convolutional Neural Network卷积神经网络通过“卷积”操作来提取图像的局部特征。卷积层可以自动检测图像中的一些基本模式,比如边缘、角点、纹理等。它还会通过池化层减少数据的维度,进一步提取重要特征,最后通过全连接层进行分类或预测。卷积神经网络是处理图像、视频等网格数据(如图片的像素)最常用的模型。图像分类(比如区分猫和狗)、目标检测(找出图片中的人或物体)、人脸识别、自动驾驶中的物体检测等。
循环神经网络(RNN)Recurrent Neural Network循环神经网络(RNN)是处理序列数据的专用模型,具有“记忆”功能。它能够记住前面信息,并且通过时间步长将信息传递给后面的计算,捕捉数据中前后之间的关系。例如,在处理文本时,RNN可以根据前面的单词来预测下一个单词。语音识别(将语音转换为文字)、机器翻译(将英文翻译成中文)、语言模型(预测句子中下一个词)、文本生成等。
递归神经网络(Recursive NN)Recursive Neural Network递归神经网络(与RNN不同)主要用于处理树形结构的数据。它的核心思想是通过树状结构的节点进行递归计算,适合用于表示具有层次结构的数据,比如句子的语法结构。在语言处理中,递归神经网络常用来解析句子的语法树。句法分析(理解句子结构)、情感分析(分析文本的情感倾向)、自然语言理解等。
自动编码器(Autoencoder)Autoencoder自动编码器是一种无监督学习模型,通常用来进行数据压缩和降噪。它由两部分组成:编码器(Encoder)和解码器(Decoder)。编码器将输入数据压缩成一个低维度的表示,而解码器将这个低维表示重新构建回原数据。通过这种方式,自动编码器学习到数据中的最重要特征。数据降维(比如将高维的数据变得易于处理)、去噪(去除图像中的噪声)、异常检测(识别异常数据)、图像压缩等。
深度信念网络(DBN)Deep Belief Network深度信念网络由多个限制玻尔兹曼机(RBM)堆叠而成,属于一种生成模型。它的训练过程是通过逐层训练每一层的RBM,然后将每一层的输出作为下一层的输入。深度信念网络是一种无监督学习的模型,最早用于无监督预训练深度神经网络,后被其他模型如深度神经网络和卷积神经网络所取代。图像分类、语音识别、数据预训练等。
生成对抗网络(GAN)Generative Adversarial Network生成对抗网络包括两个部分:生成器(Generator)和判别器(Discriminator)。生成器负责生成数据(例如图像),而判别器的任务是区分生成的数据和真实数据。两者通过对抗的方式不断改进,最终生成器能够生成非常逼真的数据。可以把它看作是一个“博弈”过程:生成器尽量骗过判别器,而判别器尽力识别真假。图像生成(生成从未见过的图像)、风格迁移(将一幅画的风格应用到另一幅画上)、数据增强(生成更多训练数据)、图像修复等。
TransformerTransformerTransformer模型是基于“自注意力机制”(Self-Attention)的架构,可以有效地捕捉序列数据中不同位置之间的依赖关系。与RNN不同,Transformer不需要逐步处理数据,而是通过并行计算处理整个序列,这大大提高了效率。Transformer的设计能够处理长距离的依赖,特别适合大规模数据的学习。机器翻译(如将英语翻译成法语)、文本生成(如写文章或生成对话)、情感分析、问答系统等。
图神经网络(GNN)Graph Neural Network图神经网络是一种专门用于处理图结构数据(如社交网络、推荐系统中的用户和商品之间的关系图等)的模型。图由节点(代表实体)和边(代表实体之间的关系)组成,GNN通过“消息传递”机制让每个节点与其邻居节点交换信息,从而学习节点和边之间的复杂关系。社交网络分析(例如分析社交平台上的关系)、推荐系统(基于用户行为图推荐商品)、药物分子分析(分析分子结构)等。

深度学习算法的加速

  • GPU加速:GPU并行进行数值计算(矩阵的乘积运算之类)
  • 分布式学习:多个GPU、多台机器上进行分布式计算
  • 运算精度的位数缩减:大模型训练中有一个量化的操作,比如将浮点数换成int4类型的,精度损失,效果会有折扣,但是显存显著降低
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

友培

数据皆开源!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值