- 博客(52)
- 收藏
- 关注
原创 数据分析案例完整版
数据初步了解 数据有27598条,每条数据有7个特征,都是非空的。2、数据清洗重复值处理看出有86条重复数据,删除后得到新的数据缺失值处理通过上面观察数据发现sale_count,comment_count 存在缺失值,先观察存在缺失值的行的基本情况存在的缺失值很可能意味着售出的数量为0或者评论的数量为0,所以我们用0来填补缺失值。数据挖掘寻找新的特征给出各个关键词的分类类别由title新生成两列类别对是否是男性专用进行分析并新增一列对每个产品总销量新增销售额这一列3、数据分析及可视化接下来考虑各个类别的销
2025-05-07 19:07:15
948
原创 数据分析案例1
事实上,D类中,也就是高端商品中,雅诗兰黛占据了主要份额,一方面可能由于品牌效应,就个人主观的分析,雅诗兰黛为人熟知,在推广营销方面做的很好,所以销量尚可。相宜本草商品数量也只属于中游,但其销量销售额均排在第一位,由于其销量是第二名的大约两倍,而销售额远不到两倍,所以销售额/销量,也就是每一单的均价也是一个值得研究的新指标。观察饼图,不难发现A类平均单价的品牌所占的销售额比例最高,D类最少,并且D类中的一半以上收入都来自于雅诗兰黛品牌,而最受欢迎的相宜本草由于其价格便宜,销售额也最高。
2025-05-06 19:27:06
673
原创 Spark总结
用于处理结构化数据的组件,提供了类似于SQL的查询功能。它支持多种数据源,如Hive表、JSON文件、Parquet文件等,并能将SQL查询转换为高效的Spark作业。:运行main函数并创建SparkContext的程序,负责将用户编写的Spark应用程序转换为任务,并调度到集群上运行。// 创建 StreamingContext 对象,批处理间隔为6秒这里看自己的情况设置秒数。并使用ssc.awaitTermination()方法等待计算终止。:速度快,易用性,通用性,兼容性,容错性。
2025-04-27 17:55:25
668
原创 Spark-Streaming核心编程
/ 使用 reduceByKeyAndWindow 进行窗口操作,窗口大小为 12 秒,滑动间隔为 6 秒。// 创建 SparkConf 对象,设置运行模式为本地多线程,应用名为 window。// 创建 StreamingContext 对象,批处理间隔为 3 秒。// 创建 DStream,从 socket 接收数据。// 将每个单词映射为 (单词, 1) 的键值对。// 将每个单词映射为 (单词, 1) 的键值对。// 创建 SparkConf 对象。// 设置检查点目录。
2025-04-27 17:52:47
1011
原创 Kafka
创建topic: kafka-topics.sh --create --zookeeper node01:2181,node02:2181,node03:2181 --topic test1 --partitions 3 --replication-factor 3。删除topic: kafka-topics.sh --delete --zookeeper node01:2181,node02:2181,node03:2181 --topic test1。Kafka和其他组件的整合。
2025-04-25 16:59:42
849
原创 Kafka数据源
消费的offset保存在_consumer_offsets主题中。通过 SparkStreaming 从 Kafka 读取数据。//通过读取kafka数据,创建DStream。通过DirectAPI 0-10 消费kafka数据。运行程序,接收Kafka生产的数据并进行相应处理。Kafka 0-10 Direct 模式。//提取出数据中的value部分。//wordCount计算逻辑。//定义kafka相关参数。开启Kafka生产者,产生数据。
2025-04-24 10:11:42
977
原创 Kafka集群
kafka集群: kafka-server-start.sh;执行文件变成绿色:chmod 777 kafka.sh。上传:cd /usr/local/bin/
2025-04-23 19:14:08
496
原创 Spark-Streaming
/ 创建 StreamingContext 对象,设置批处理间隔为 3 秒。// 创建 SparkConf 对象,设置运行模式和应用名称。// 等待 StreamingContext 终止。// 将每个单词映射为 (单词, 1) 的键值对。// 启动 StreamingContext。// 从指定的套接字地址接收文本流数据。// 打印每个批次的单词计数结果。// 对相同单词的计数进行累加。// 将每行文本拆分为单词。WordCount案例。
2025-04-22 18:46:53
1026
原创 求助Spark-SQL核心编程
除此之外,用户可以设定自己的自定义聚合函数。Spark3.0之前我们使用的是UserDefinedAggregateFunction作为自定义聚合函数,从 Spark3.0 版本后可以统一采用强类型聚合函数 Aggregator。强类型的 Dataset 和弱类型的 DataFrame 都提供了相关的聚合函数, 如 count(),创建子模块Spark-SQL,并添加依赖。创建Spark-SQL的测试代码。实现方式二:弱类型UDAF。
2025-04-15 11:30:55
114
原创 Spark-SQL简介
DataFrame 是 DataSet 的特列,DataFrame=DataSet[Row] ,所以可以通过 as 方法将 DataFrame 转换为 DataSet。Shark 是伯克利实验室 Spark 生态环境的组件之一. Shark 的出现,使得 SQL-on-Hadoop 的性能比 Hive 有了 10-100 倍的提高。三者都有惰性机制,在进行创建、转换,如 map 方法时,不会立即执行,只有在遇到Action 如 foreach 时,三者才会开始遍历运算;DataSet 是强类型的。
2025-04-14 17:46:59
2079
原创 RDD行动算子
Executor 端的每个 Task 都会得到这个变量的一份新的副本,每个 task 更新这些副本的值后,传回 Driver 端进行 merge。在 Driver 程序中定义的变量,在。比如,如果你的应用需要向所有节点发送一个较大的只读查询表,分区的数据通过初始值和分区内的数据进行聚合,然后再和初始值进行分区间的数据聚合。广播变量用来高效分发较大的对象。返回该 RDD 排序后的前 n 个元素组成的数组。返回一个由 RDD 的前 n 个元素组成的数组。数组 Array 的形式返回数据集的所有元素。
2025-04-12 17:03:38
353
原创 Spark运行架构
Spark Executor 是集群中工作节点(Worker)中的一个 JVM 进程,负责在 Spark 作业中运行具体任务(Task),任务彼此之间相互独立。核心:Spark Executor 是集群中运行在工作节点(Worker)中的一个 JVM 进程,是整个集群中的专门用于计算的节点。不可变:RDD 封装了计算逻辑,是不可以改变的,想要改变,只能产生新的 RDD,在新的 RDD 里面封装计算逻辑。Spark 框架的核心是一个计算引擎,整体来说,它采用了标准 master-slave 的结构。
2025-04-10 08:36:52
1139
原创 集合计算高级函数
(4) 扁平化+映射 注:flatMap 相当于先进行 map 操作,在进行 flatten 操作集合中的每个元素的子元素映射到某个函数并返回新集合。Scala 为了充分使用多核 CPU,提供了并行集合(有别于前面的串行集合),用于多核环境的并行计算。Reduce 简化(归约) :通过指定的逻辑将集合中的数据进行聚合,从而减少数据,最终获取结果。(1) 过滤遍历一个集合并从中获取满足指定条件的元素组成一个新的集合。(2) 转化/映射(map)将集合中的每一个元素映射到某一个函数。
2025-04-08 10:51:03
141
原创 大数据技术之 Scala
说的简单点,就是将多个无关的数据封装为一个整体,称为元组。默认情况下, Scala 使用的是不可变集合, 如果你想使用可变集合, 需要引用。(3)Map 中的键值对其实就是元组,只不过元组的元素个数为 2,称之为对偶。(5)集合间合并:将一个整体拆成一个一个的个体,称为扁平化。(1)声明元组的方式:(元素 1,元素 2,元素 3)(2)创建一个 List(数据有顺序,可重复)(4)向集合中添加元素,返回一个新的 Set。(1)创建可变集合 mutable.Set。(1)Set 默认是不可变集合,数据无序。
2025-04-08 10:50:54
275
原创 六面向对象
Scala 有两种包的管理风格,一种方式和 Java 的包管理风格相同,每个源文件一个包(包名和源文件所在路径不要求必须一致),包名用“.”进行分隔以表示包的层级关系,如com.zpark.scala。封装就是把抽象出的数据和对数据的操作封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。在 Scala 中可以为每个包定义一个同名的包对象,定义在包对象中的成员,作为其对应包下所有 class 和 object 的共享变量,可以被直接访问。
2025-04-08 10:50:25
724
原创 函数式编程
闭包:如果一个函数,访问到了它的外部(局部)变量的值,那么这个函数和他所处的环境,称为闭包。x:表示输入参数类型;Int:表示输入参数类型;函数体:表示具体代码逻辑。函数柯里化:把一个参数列表的多个参数,变成多个参数列表。Scala 语言是一个完全面向对象编程语言。万物皆对象对象的本质:对数据和行为的一个封装。为完成某一功能的程序语句的集合,称为函数。这种函数我们称之为惰性函数。没有名字的函数就是匿名函数。函数可以作为函数返回值返回。函数可以作为参数进行传递。函数可以作为值进行传递。库属性:用户名、密码。
2025-04-01 11:28:38
455
原创 大数据技术之Scala
for 推导式有一个不成文的约定:当 for 推导式仅包含单一表达式时使用圆括号,当包含多个表达式时,一般每行一个表达式,并用花括号代替圆括号。for 推导式一行中有多个表达式时,所以要加。需求:输出 2到 9 以内的所有偶数。采用异常的方式退出循环。
2025-03-31 18:45:18
530
原创 Scala的数据类型
例如,Scala还提供了RichInt、RichDouble、RichChar等类型,RichInt就提供了to方法,1.to(10),此处Int先隐式转换为RichInt,然后再调用其to方法。Any是abstract类,它是Scala类继承结构中最底层的。scala的算术操作符与java的算术操作符也没有什么区别,比如+、-、*、/、%等,以及&、|、^、>>、<<等。Nothing是所有类的子类,是一个类。Null是所有AnyRef的子类,null是Null的唯一对象。do while循环。
2025-03-28 16:56:05
479
原创 Scala 基础语法
Scala 使用 package 关键字定义包,在Scala将代码定义到某个包中有两种方式:第一种方法和 Java 一样,在文件的头定义包名,这种方法就后续所有代码都放在该包中。比如:第二种方法有些类似 C#,如:第二种方法,可以在一个文件中定义多个包。
2025-03-27 10:52:04
298
原创 Scala 简介
Scala的设计秉承一项事实,即在实践中,某个领域特定的应用程序开发往往需要特定于该领域的语言扩展。Scala 的编译模型(独立编译,动态类加载)与 Java 和 C# 一样,所以 Scala 代码可以调用 Java 类库(对于.NET实现则可调用.NET类库)。Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库。Scala具备类型系统,通过编译时检查,保证代码的安全性和一致性。强大的类型推断机制,可以减少代码中的类型声明,提高代码的可读性。
2025-03-27 10:50:29
898
原创 图像识别技术与应用(19)
5*64 =320 , 最终组合得到全部特征。现在来看 , 很多视觉任务都可以套用这招。把能拼能凑的特征全用上就是升级版了。不同的max pool整合低阶特征。这么简单的结构就能把分割任务做好。起初是做医学方向 , 现在也是。其实跟densenet思想一致。损失由多个位置计算 , 再更新。M 训练的时候同样会用到L4 ,效果还不错。也是很常见的事 , 多输出。简单但是很实用 ,应用广。M 以前我们都是加法 , 现在全都要。特征融合 ,拼接更全面。还引入了特征拼接操作。(X1和X2 , 轮廓之类的)
2025-03-21 11:00:43
631
原创 图像识别技术与应用(18)
5000张精细标注的图像(2975张训练图、500张验证图和1525张测试图)、20000张粗略标注的图像。:共91类,以人类4岁小孩能够辨识为基准,其中82类有超过5000个instance。:只预测前景目标的类别属性以及边框,个体ID,每一个像素可以属于多个ID。将不同的像素划分到不同的类别,非常细粒度的分类。人像抠图,医学组织提取,遥感图像分析,自动驾驶,材料图像等。:一共2913张图,1464张训练图片,1449张验证图片。:以场景理解为目标,特别选取比较复杂的日常场景。每个类的IoU平均值。
2025-03-20 10:05:25
383
原创 图像识别技术与应用(17)
并且还是一个捷径 , 红色的没准走个100层(Resnet) , 绿色的几层就到了。比较好理解 , 坐标回归预测值都在0-1之间 , 如果在grid边界怎么表示?亲民政策 , 单GPU就能训练的非常好 , 接下来很多小模块都是这个出发点。损失函数必须考虑三个几何因素: 重叠面积 , 中心点距离 , 长宽比。数据增强: 调整亮度、 对比度、 色调、 随机缩放、 剪切、 翻转、 旋转。之前的dropout是随机选择点(b) , 现在吃掉一个区域。神经网络最大的缺点: 自觉不错(过拟合) , 让它别太自信。
2025-03-14 09:59:22
782
原创 图像识别技术与应用(16)
26*26特征图上:(30x61),(62x45),(59x119)52*52特征图上:(10x13),(16x30),(33x23)
2025-03-13 09:40:52
499
原创 图像识别技术与应用(15)
YOLO系列·YOLO-V1 核心思想网络架构每个数字的含义: 损失函数: ·NMS(非极大值抑制):·YOLO-V1:问题2:小物体检测效果一般,长宽比可选的但单一YOLO-V2-Batch NormalizationV2版本舍弃Dropout,卷积后全部加入Batch Normalization网络的每一层的输入都做了归一化,收敛相对更容易YOLO-V2-更大的分辨率 YOLO-V2-网络结构 这样会导致收敛问题,模型不稳定,尤·YOLO-V2-聚类提取先验框 YOLO-V2-Directed Lo
2025-03-12 16:35:20
1847
原创 图像识别技术与应用(14)
VOC数据集:PASCAL VOC挑战赛(The PASCAL Visual Object Classes)是一个世界级的计算机视觉挑战赛。· VOC数据集:PASCAL VOC挑战赛(The PASCAL Visual Object Classes)是一个世界级的计算机视觉挑战赛。(Xmin, Ymin, W, H),其中x,y,w,h均不是归一化后的数值,分别代表左上角坐标和宽、高。(Xmin,Ymin,Xmax,Ymax)分别代表左上角和右下角的两个坐标。x,y,w,h均为归一化结果。
2025-03-11 10:28:07
1963
原创 图像识别技术与应用感悟
总结:深度学习的实践不仅需要扎实的理论基础,还需要耐心、细心和不断探索的精神。理论知识(如神经网络原理、损失函数、优化算法等)是基础,但只有通过实际动手编写代码、调试模型,才能真正理解这些概念的作用和意义。训练模型并非一蹴而就,需要不断调整超参数(如学习率、批量大小等),观察损失和准确率的变化,逐步优化模型性能。训练集上的表现并不能完全代表模型的真实能力,必须在测试集上进行评估,确保模型具有良好的泛化能力。深度学习领域发展迅速,新的模型、算法和工具层出不穷,只有保持持续学习的态度,才能跟上技术的发展。
2025-03-10 16:55:52
142
原创 总结学习课程
总结:学会了如何用PyTorch构建、训练和评估神经网络模型,并掌握数据预处理、损失计算、优化器使用等核心步骤。- 使用工具(如Matplotlib、TensorBoard)可视化训练结果和记录日志。- 使用`nn.Module`构建神经网络,定义各层和前向传播。选择损失函数(如交叉熵损失)和优化器(如SGD)来训练模型。-设置训练模式,进行前向传播、计算损失、反向传播和参数更新。- 设置评估模式,计算测试集上的损失和准确率。-调整学习率、批量大小等超参数优化模型。- 记录训练损失和准确率。
2025-03-10 16:51:22
679
原创 手写数字识别项目
说明,model.train()与model.eval()的使用如果模型中有BN(Batch Normalization)层和Dropout,需要在训练时添加model.train(),在测试时添加mode1,exa10)。定义损失函数可以通过自定义方法或使用PvIorch内署的损失函数,如回归使用的loss fimem, SELoss0),分类使用的m.BCELoss等损失函数,更多内容可。Pytoch常用的优化方法都封装在torch.optin里面,其设计很灵活,可以扩展为自定义的优化方法。
2025-03-06 11:39:20
1231
原创 机器学习(1)
对于一个复杂任务来说,将多个专家的判断进行适当的综合所得出的判断,要比其中任何一个专家单独的判断好。·集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务等。·集成学习的结果通过投票法产生?即“少数服从多数”
2025-03-05 17:45:53
344
原创 图像识别技术与应用代码(13)
self. fc1 = nn. Linear(16 * 5 * 5, 120) se1f.poo12 = nn.MaxPoo12d(2,2)#使用全局平均池化层。#self. fc1 = nn. Linear(16 * 5 * 5, 120) se1f.poo12 = nn.MaxPoo12d(2,2)#使用全局平均池化层。# 权重参数梯度清零 optimizer.zero_grad()6.5.6 采用全局平均池化。6.5.6 采用全局平均池化。6.5.5 测试模型。
2025-03-04 09:39:58
732
原创 图像识别技术与应用代码(12)
权重参数梯度清零 optimizer.zero_grad()In[8]:#取模型中的前四层。6.5.4 训练模型。
2025-03-03 17:38:37
794
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人