自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 函数式编程

闭包:如果一个函数,访问到了它的外部(局部)变量的值,那么这个函数和他所处的环境,称为闭包。x:表示输入参数类型;Int:表示输入参数类型;函数体:表示具体代码逻辑。函数柯里化:把一个参数列表的多个参数,变成多个参数列表。Scala 语言是一个完全面向对象编程语言。万物皆对象对象的本质:对数据和行为的一个封装。为完成某一功能的程序语句的集合,称为函数。这种函数我们称之为惰性函数。没有名字的函数就是匿名函数。函数可以作为函数返回值返回。函数可以作为参数进行传递。函数可以作为值进行传递。库属性:用户名、密码。

2025-04-01 11:28:38 443

原创 大数据技术之Scala

for 推导式有一个不成文的约定:当 for 推导式仅包含单一表达式时使用圆括号,当包含多个表达式时,一般每行一个表达式,并用花括号代替圆括号。for 推导式一行中有多个表达式时,所以要加。需求:输出 2到 9 以内的所有偶数。采用异常的方式退出循环。

2025-03-31 18:45:18 511

原创 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 447

原创 Scala 基础语法

Scala 使用 package 关键字定义包,在Scala将代码定义到某个包中有两种方式:第一种方法和 Java 一样,在文件的头定义包名,这种方法就后续所有代码都放在该包中。比如:第二种方法有些类似 C#,如:第二种方法,可以在一个文件中定义多个包。

2025-03-27 10:52:04 282

原创 Scala 简介

Scala的设计秉承一项事实,即在实践中,某个领域特定的应用程序开发往往需要特定于该领域的语言扩展。Scala 的编译模型(独立编译,动态类加载)与 Java 和 C# 一样,所以 Scala 代码可以调用 Java 类库(对于.NET实现则可调用.NET类库)。Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库。Scala具备类型系统,通过编译时检查,保证代码的安全性和一致性。强大的类型推断机制,可以减少代码中的类型声明,提高代码的可读性。

2025-03-27 10:50:29 863

原创 图像识别技术与应用(19)

5*64 =320 , 最终组合得到全部特征。现在来看 , 很多视觉任务都可以套用这招。把能拼能凑的特征全用上就是升级版了。不同的max pool整合低阶特征。这么简单的结构就能把分割任务做好。起初是做医学方向 , 现在也是。其实跟densenet思想一致。损失由多个位置计算 , 再更新。M 训练的时候同样会用到L4 ,效果还不错。也是很常见的事 , 多输出。简单但是很实用 ,应用广。M 以前我们都是加法 , 现在全都要。特征融合 ,拼接更全面。还引入了特征拼接操作。(X1和X2 , 轮廓之类的)

2025-03-21 11:00:43 619

原创 图像识别技术与应用(18)

5000张精细标注的图像(2975张训练图、500张验证图和1525张测试图)、20000张粗略标注的图像。:共91类,以人类4岁小孩能够辨识为基准,其中82类有超过5000个instance。:只预测前景目标的类别属性以及边框,个体ID,每一个像素可以属于多个ID。将不同的像素划分到不同的类别,非常细粒度的分类。人像抠图,医学组织提取,遥感图像分析,自动驾驶,材料图像等。:一共2913张图,1464张训练图片,1449张验证图片。:以场景理解为目标,特别选取比较复杂的日常场景。每个类的IoU平均值。

2025-03-20 10:05:25 374

原创 图像识别技术与应用(17)

并且还是一个捷径 , 红色的没准走个100层(Resnet) , 绿色的几层就到了。比较好理解 , 坐标回归预测值都在0-1之间 , 如果在grid边界怎么表示?亲民政策 , 单GPU就能训练的非常好 , 接下来很多小模块都是这个出发点。损失函数必须考虑三个几何因素: 重叠面积 , 中心点距离 , 长宽比。数据增强: 调整亮度、 对比度、 色调、 随机缩放、 剪切、 翻转、 旋转。之前的dropout是随机选择点(b) , 现在吃掉一个区域。神经网络最大的缺点: 自觉不错(过拟合) , 让它别太自信。

2025-03-14 09:59:22 773

原创 图像识别技术与应用(16)

26*26特征图上:(30x61),(62x45),(59x119)52*52特征图上:(10x13),(16x30),(33x23)

2025-03-13 09:40:52 485

原创 图像识别技术与应用(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 1205

原创 图像识别技术与应用(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 1228

原创 图像识别技术与应用感悟

总结:深度学习的实践不仅需要扎实的理论基础,还需要耐心、细心和不断探索的精神。理论知识(如神经网络原理、损失函数、优化算法等)是基础,但只有通过实际动手编写代码、调试模型,才能真正理解这些概念的作用和意义。训练模型并非一蹴而就,需要不断调整超参数(如学习率、批量大小等),观察损失和准确率的变化,逐步优化模型性能。训练集上的表现并不能完全代表模型的真实能力,必须在测试集上进行评估,确保模型具有良好的泛化能力。深度学习领域发展迅速,新的模型、算法和工具层出不穷,只有保持持续学习的态度,才能跟上技术的发展。

2025-03-10 16:55:52 115

原创 总结学习课程

总结:学会了如何用PyTorch构建、训练和评估神经网络模型,并掌握数据预处理、损失计算、优化器使用等核心步骤。- 使用工具(如Matplotlib、TensorBoard)可视化训练结果和记录日志。- 使用`nn.Module`构建神经网络,定义各层和前向传播。选择损失函数(如交叉熵损失)和优化器(如SGD)来训练模型。-设置训练模式,进行前向传播、计算损失、反向传播和参数更新。- 设置评估模式,计算测试集上的损失和准确率。-调整学习率、批量大小等超参数优化模型。- 记录训练损失和准确率。

2025-03-10 16:51:22 670

原创 手写数字识别项目

说明,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 1184

原创 机器学习(1)

对于一个复杂任务来说,将多个专家的判断进行适当的综合所得出的判断,要比其中任何一个专家单独的判断好。·集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务等。·集成学习的结果通过投票法产生?即“少数服从多数”

2025-03-05 17:45:53 335

原创 图像识别技术与应用代码(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 718

原创 图像识别技术与应用代码(12)

权重参数梯度清零 optimizer.zero_grad()In[8]:#取模型中的前四层。6.5.4 训练模型。

2025-03-03 17:38:37 781

原创 图像识别技术与应用(11)

可以用来表示模型的精度,即模型识别正确的个数/样本的总个数。·多类别分类模型各个类别之间的分类情况 对于k分类问题,混淆矩阵为k*k的矩阵,元素Cij表示第i类样本被分类器判定为第j类的数量。准确率(Precision):又称为查准率,表示在模型识别为正类的样本中,真正为正类的样本所占的比例。主对角线的元素之和为正确分类的样本数,其余元素之和为错误分类的样本数。召回率(Recall):又称为查全率,表示模型正确识别出为正类的样本的数量占总的正类样本数量的比值。· 每一个网络层的通道数,以卷积网络层计算。

2025-02-28 10:31:34 840

原创 图像识别技术与应用(10)

使用TensorBoard的一般步骤如下。1)导入tensorboard,实例化SummaryWriter类,指明记录日志路径等信息。from torch.utils.tensorboard import SummaryWriter #实例化SummaryWriter,并指明日志存放路径。在当前目录没有logs目录将自动创建。#调用实例 writer.add_xxx()#关闭writer writer.close()使用TensorBoard的一般步骤如下。

2025-02-27 09:40:12 1157

原创 图像识别技术与应用(9)

_getitem_一次只能获取一个样本。2.DataLoader:可以批量处理。相关参数:2.DataLoader:可以批量处理。但是DataLoader并不是迭代器, 可以通过“iter”命令转换成迭代器。但是!数据处在不同目录之下时会。

2025-02-26 18:42:01 547

原创 图像识别技术与应用(8)

残差块有两种,一种是正常的模块方式,将输入与输出相加,然后应用激活函数ReLU。·另一种是为使输入与输出形状一致,需添加通过1×1卷积调整通道和分辨率。·组合这两个模块得到现代经典RetNet18网络结构。

2025-02-25 12:52:18 420

原创 图像识别技术与应用(7)

nn.Xxx继承于nn.Module,nn.Xxx 需要先实例化并传入参数,然后以函数调用的方式调用实例化的对象并传入输入数据。继承nn.Module基类构建模型,又使用相关模型容器(nn.Sequential,nn.ModuleList,nn.ModuleDict等)进行封装。如nn.funtional.linear、nn.funtional.conv2d、nn.funtional.cross_entropy等。如nn.Linear、nn.Conv2d、nn.CrossEntropyLoss等。

2025-02-24 16:13:13 472

原创 图像识别技术与应用(6)

• AlexNet的架构与LeNet相似,但使⽤了更多的卷积层和更多的参数来拟合大规模的ImageNet数据集。• 今天,AlexNet已经被更有效的架构所超越,但它是从浅层⽹络到深层网络的关键一步。• 新加入了Dropout、ReLU、最大池化层和数据增强*VGG网络VGG19共有16个卷积层和3个全连接层。此外,还有5个最大池化层分布在不同的卷积层之下。AlexNet比LeNet更深入更大,以获得更强性能 能不能更大更深?选项更多稠密层(开销太大) 更多的卷积层 将卷积层组合成块。

2025-02-21 09:15:10 917

原创 图像识别技术与应用(5)

使用一个还不错的相机采集RGB图片(3600万个像素) 使用 100 个神经元单隐含层的 MLP ,模型有 36 亿个参数 远超过地球上的狗和猫的数量。平移不变性: 不管检测对象出现在图像中的哪个位置,神经网络的前面几层都应该对相同的图像区域具有相似的反应。卷积层将输入和卷积核进行交叉相关,加上偏移后得到输出 核矩阵和偏移是可学习的参数 核矩阵的大小是超参数。局部性 :神经网络的前面几层应该只探索输入图像中的局部区域,而不过度在意图像中相隔较远的区域的关系。填充和步幅可以改变输出的高度和宽度。

2025-02-20 09:58:11 414

原创 图像识别技术与应用(4)

前向传播(正向传播) 输入样本--输入层--各隐藏层--输出层 反向传播(误差反传) 输出层——各隐藏层——输入层 计算神经网络参数梯度的方法 修正各层单元的权值。学习的过程: 神经网络在外界输入样本的刺激下不断改变网络的连接权值乃至拓扑结构,以使网络的输出不断地接近期望的输出。学习的本质: 对可变权值的动态调整。(3) 激活函数的导函数的值域要在一个合适的区间内,不能太大也不能太小,否则会影响训练的效率和稳定性。w称为权重:控制输入信号的重要性的参数 b称为偏置:偏置是调整神经元被激活的容易程度参数。

2025-02-19 17:06:05 271

原创 图像识别技术与应用(3)

梯度指示的反向是各点处的函数值减小最多的方向,所以无法保证梯度所指的方向就是函数的最小值或者真正应该前进的方向。所以在寻找函数的最小值的位置任务中,以梯度的信息为线索,决定前进的方向。流程:在梯度法中,函数的取值从当前位置沿着梯度方向前进一定的距离,然后在新的方向重新求梯度,再沿着新梯度的方向前进,如此反复,不断的沿梯度方向前进。比如:对于某个输入图像,预测是图中的数字0到9中的哪一个的问题( 10类别分类问题),将输出层的神经元设定为10个。梯度指示的反向是各点处的函数值减小最多的方向。

2025-02-18 11:36:26 301

原创 图像识别技术与应用(2)

PyTorch是由Meta AI(Facebook)人工智能研究小组开发的一种基于Lua编写的Torch库的Python实现的深度学习库,目前被广泛应用于学术界和工业界,PyTorch在API的设计上更加简洁、优雅和易懂。学习预测不相互排斥的类别的问题称为多标签分类(multi-label classification) 一个样本(一个图片或者一个候选框)中含有多个物体,标注的label也是多个的,多个类间并不是互斥的,多选多。例如,对于电影推荐,科幻迷和喜剧爱好者的推荐结果页面可能会有很大不同。

2025-02-18 10:51:16 717

原创 图像识别技术与应用(1)

人类工业文明的演变18世纪末,机器化时代;19世纪末,电气化时代;20世纪50年代中期,信息化时代;21世纪,人工智能时代。*人工智能人工智能:用人工的方法在机器(计算机)上实现的智能;或者说是人们使机器具有类似于人的智能。人工智能学科:人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。日常生活的机器学习:参数可以被看作旋钮,旋钮的转动可以调整程的行为。任一调整参数后的程序被称为模型,通过操作参数而生成的所有不同程序的集合称为“模型族”。

2025-02-17 19:05:00 236

原创 图像识别技术与应用(1)

任一调整参数后的程序被称为模型,通过操作参数而生成的所有不同程序的集合称为“模型族”。更多的数据可以被用来训练出更强大的模型,从而减少对预先设想假设的依赖。仅仅拥有海量的数据是不够的,还需要正确的数据。更多的数据可以被用来训练出更强大的模型,从而减少对预先设想假设的依赖。仅仅拥有海量的数据是不够的,还需要正确的数据。21世纪,人工智能时代。当处理图像数据时,每一张单独的照片即为一个样本,它的特征由每个像素数值的有序列表示。定义模型的优劣程度的度量,这个度量在大多数情况是“可优化”的,这被称之为目标函数。

2025-02-17 17:37:45 415

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除