自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第J5周:DenseNet+SE-Net实战

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊任务:●1. 在DenseNet系列算法中插入SE-Net通道注意力机制,并完成猴痘病识别●2. 改进思路是否可以迁移到其他地方呢●3. 测试集accuracy到达89%(拔高,可选)一、介绍可参考论文《Squeeze-and-Excitation Networks》SE-Net 是 ImageNet 2017(ImageNet 收官赛)的冠军模型,是由WMW团队发布。具有复杂度低,参数少和计算量小的优点。且SE

2024-11-07 10:24:57 875

原创 第J4周:ResNet与DenseNet结合探索

在级联结构中,可以将一个模型的输出作为另一个模型的输入。特征级融合通常是在 DenseNet 和 ResNet 的最后一层卷积之后,取各自的特征图,将它们拼接(concatenate)或相加,然后输入至一个全连接层进行最终分类。在这种方法中,DenseNet 和 ResNet 的分类输出独立进行预测,通过平均、加权平均或投票的方式得到最终分类结果。这种方法可行,但比较简单。并在J3周乳腺癌数据集上进行了测试,因为只更换了模型,训练的框架都是一样的,这里就没有重复放代码了。只在上方将模型的融合放在了上面。

2024-10-30 18:52:32 421

原创 第J3-1周:DenseNet算法 实现乳腺癌识别

break了解了dense net121网络的结构特点,相对于其他cnn网络架构 dense net21 可以做到特征复用的特点,即每一层的特征都会输送给下一层的每一层,充分利用了每一层网络提取到的特征结构。

2024-10-25 09:59:35 689

原创 第J2周:ResNet50V2算法实战与解析

在深度学习和特别是卷积神经网络(CNN)中,跳跃连接(Skip Connection)是一种连接网络中不同层的结构,它允许网络中的信号绕过一些层直接传递。这种结构在残差网络(ResNet)中被广泛使用,以解决深度网络训练中的退化问题。跳跃连接的作用缓解梯度消失问题:在深度网络中,梯度可能会随着网络层的增加而逐渐减小,导致网络难以训练。跳跃连接通过直接连接输入和输出,有助于梯度的反向传播,从而缓解梯度消失问题。提高训练速度:跳跃连接可以帮助网络更快地收敛,因为它减少了信息在网络中的传递路径。

2024-10-17 10:24:47 835

原创 第J1周:ResNet-50算法实战与解析

1.没有使用预训练权重 导致模型准确率并未提升。

2024-09-30 09:43:32 1029

原创 第T11周:优化器对比实验

Adam优化器:收敛速度:Adam通常收敛较快,特别适合处理稀疏梯度和复杂模型。自适应学习率:它根据每个参数的历史梯度动态调整学习率,减少了对学习率调节的敏感性,使得用户无需过多手动调优。内存消耗:由于需要存储每个参数的均值和方差,Adam的内存消耗相对较大。适用性:广泛适用于各种任务,尤其是深度学习领域,表现出良好的性能。SGD(随机梯度下降):收敛特点:SGD收敛速度通常较慢,尤其是在高维空间中。但它的随机性有助于跳出局部最优解,有时可以得到更好的全局性能。

2024-09-24 18:52:35 336

原创 第T10周:数据增强

这是大家可以自由发挥的一个地方# 随机改变图像对比度六、个人总结我们可以使用 tf.keras.layers.experimental.preprocessing.RandomFlip 与 tf.keras.layers.experimental.preprocessing.RandomRotation 进行数据增强tf.keras.layers.experimental.preprocessing.RandomFlip:水平和垂直随机翻转每个图像。

2024-09-14 19:41:10 1108

原创 第T9周:猫狗识别2

在训练模型的时候 又出现了动态调整学习率的错误的原因。我把错误的 和正确的都放在了上面原因:在 TensorFlow 2.x 中,tf.keras.optimizers.Adam 的学习率设置和访问方式有所变化。K.set_value 用于获取和设置变量的值,但在 TensorFlow 2.x 中,优化器的学习率已经不再直接暴露为 lr 属性。要调整学习率,可以使用 tf.keras.optimizers.schedules 来创建一个学习率调度器,或者直接修改优化器的学习率属性。

2024-09-12 14:19:42 492 1

原创 第T8周:猫狗识别

● Image_batch是形状的张量(8, 224, 224, 3)。● prefetch() :预取数据,加速运行,其详细介绍可以参考我前两篇文章,里面都有讲解。VGG的结构非常简洁,整个网络都使用了同样大小的卷积核尺寸(3x3)和最大池化尺寸(2x2)。● 优化器(optimizer):决定模型如何根据其看到的数据和自身的损失函数进行更新。VGG-16包含了16个隐藏层(13个卷积层和3个全连接层),故称为VGG-16。● Label_batch是形状(8,)的张量,这些标签对应8张图片。

2024-09-06 14:43:39 688

原创 第T7周:咖啡豆识别

突然发现咖啡豆的识别标准 不能光看accuracy这一个评价指标。个人觉得应该加入其他的评价指标。倘若数据中正负样本不平衡。

2024-08-30 06:28:27 444

原创 第T6周:好莱坞明星识别

由于模型训练的不好 导致最后的预测并不准确。可以考虑不用自己搭建的网路模型 加载现有的网络模型以及预训练权重去进行特征学习。

2024-08-22 22:09:22 468

原创 第T5周:运动鞋品牌识别

这个公式是一个学习率衰减公式,通常用于深度学习训练过程中逐渐减小学习率,以优化模型的训练效果。下面是公式中各个参数的解释:learning_rate:当前时期的学习率。initial_learning_rate:初始学习率,即训练开始时设置的学习率。decay_rate:衰减率,一个小于1的值,用于控制学习率减小的速度。step:当前的训练步数或时期数。decay_steps:衰减步数或时期数,学习率衰减的周期。公式的作用是随着训练的进行,按照一定的周期和比率减小学习率。

2024-08-15 21:34:59 937

原创 第T4周:猴痘病识别

编译模型 (model.compile)1.optimizer (优化器):选择了 Adam 优化器,并设置了学习率为 1e-4。Adam优化器是一种自适应学习率优化算法,结合了动量梯度下降和RMSProp的优点。它通常在许多深度学习任务中表现良好。优化器的作用是根据计算出的梯度更新模型的权重,从而最小化损失函数。2.loss (损失函数):使用 tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True) 作为损失函数。

2024-08-08 20:04:54 806

原创 第T3周:天气识别

模型架构选择:选择了深度学习中常用的CNN作为基础模型,这是由于CNN在图像识别领域表现出色,能够有效地捕捉图像特征。增强泛化能力:为了提高模型对未见数据的泛化能力,在模型中引入了Dropout层。Dropout是一种正则化技术,通过在训练过程中随机丢弃一些网络连接,可以防止模型过拟合。池化层调整:将传统的最大池化层替换为平均池化层。平均池化层可以提供更平滑的特征表示,有助于减少极端值的影响,可能在某些情况下会提高模型的泛化性。

2024-08-01 20:40:30 256

原创 第T2周:彩色图片分类

编写深度学习程序的步骤:数据准备-数据预处理-模型选择-模型构建-编译模型-训练模型-评估模型-模型优化-模型部署分类彩色图片与灰度图片的区别:颜色信息:彩色图片包含颜色信息,而灰度图片则不包含。特征丰富度:彩色图片通常包含更丰富的特征,有助于提高分类的准确性。模型复杂度:处理彩色图片的模型通常比处理灰度图片的模型更复杂,需要更多的计算资源。

2024-07-18 20:26:56 444

原创 第T1周:实现mnist手写数字识别

1.数据准备:MNIST数据集通常可以从TensorFlow的tf.keras.datasets模块直接下载和加载。2.数据预处理:将图像数据归一化到0到1的范围内,以提高模型训练的稳定性和速度。3.实验结果:证实一个基本的CNN模型在MNIST数据集上可以达到98%以上的准确率。

2024-07-10 19:50:02 256

原创 第P10周:Pytorch实现车牌识别

参考上面的dataset类,构建了自己的数据集类 Mydataset。传统计算 准确度:correct = (pred_labels == y_labels).sum().item() # 计算匹配的数量total = pred_labels.size(0) # 批次大小acc = correct / total # 计算准确度。

2024-06-28 20:54:21 450

原创 第P9周:YOLOv5-Backbone模块实现

YOLOv5 的 Backbone 模块是整个网络架构的关键部分之一,它负责提取输入图像的特征信息。Backbone 是神经网络中用于提取图像特征的部分,通常由多个卷积层和下采样层组成。在 YOLOv5 中,Backbone 模块可以看作是一个预训练的特征提取器,它将输入图像转化为更高维度的特征表示,这些特征随后被传递到检测头(Head)模块以预测边界框和类别。

2024-06-21 21:50:33 286

原创 第P8周:YOLOv5-C3模块实现

YOLOv5c3 模型的主要特点和组成部分:1.Backbone 网络:YOLOv5 使用的主干网络(backbone network)是 CSPDarknet53。这是一个轻量级的 Darknet 网络,采用了 CSP(Cross Stage Partial)结构,可以有效地提升模型的性能。2.Neck 网络:YOLOv5 在 CSPDarknet53 的基础上引入了一个小型的特征融合网络,称为 PANet,用于增强特征图的语义信息,提高检测性能。

2024-06-07 19:41:08 845

原创 第P7周:咖啡豆识别(VGG-16复现)

1.这几次的框架几乎都是相同的,唯一区别的就是每次都是只了一种网络模型去跑2感觉可以修改的也就只有优化器和调整动态学习率了。

2024-05-30 14:34:48 510

原创 第P6周:VGG-16算法-Pytorch实现人脸识别

目前可以想到的改进方法有三种:1.修改优化器Adam2.修改为动态学习率3.在vgg16的特征层中的卷积层添加自注意力机制模块添加def _initialize_weights(self)

2024-05-23 20:56:38 402 1

原创 第P5周:Pytorch实现运动鞋识别

1.本周的训练和前面的几次一样,唯一有所区别的就是加上了一个动态调整学习率的策略2.查阅了官方的几种动态学习率的方法,torch.optim.lr_scheduler都可以加上去的。

2024-05-06 13:56:36 387

原创 第P4周:猴痘病识别

1.学会了如何添加动态调整学习率,超参数的设置非常重要2.有时候 添加了的一些卷积层 并不能很好的起到出色的效果3.通过torch.save可以保存模型的权重参数,以便通过调用直接使用。

2024-05-01 09:56:46 217 2

原创 第P3周:Pytorch实现天气识别

图像分类-天气识别

2024-04-24 16:05:20 492 1

原创 第P2周:CIFAR10彩色图片识别

🔔本次的重点在于学会构建CNN网络我的环境:1.代码:一、 前期准备如果设备上支持GPU就使用GPU,否则使用CPU2. 导入数据使用dataset下载CIFAR10数据集,并划分好训练集与测试集使用dataloader加载数据,并设置好基本的batch_size3. 数据可视化squeeze()函数的功能是从矩阵shape中,去掉维度为1的。例如一个矩阵是的shape是(5, 1),使用过这个函数后,结果为(5, )。二、构建简单的CNN网络。

2024-04-13 15:46:26 748

原创 深度学习01-Pytorch实现mnist手写数字识别

2.对于torch中的squeeze 函数,通常用于删减维度的·操作,这里主要是matplot要查看的图像应该要是三维的或者二维的,之前是张量的形式。3.iter()函数和next函数一般是一起用的,iter()将数据转换为可迭代对象,next进行一个批次的查询。4.torch.argmax 函数一般是返回最大值所在的索引,一般主要用在计算准确率的时候。1.理解了卷积运算的过程,知道输入一个尺寸后,如何经过卷积得到输出的尺寸。

2024-04-06 11:00:03 222 1

空空如也

空空如也

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

TA关注的人

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