- 博客(45)
- 收藏
- 关注
原创 第Y7周:训练自己的数据
官方把代码都整合到了ultralytics包里面,只需安装这一个库就可以了,里面封装了环境所需库。在命令行输入:pip install ultralytics。Annotations文件夹存放.xml格式的文件,如下所示。images文件夹存放.png格式的文件,如下所示。再创建一个voc_label.py文件。一、下载YOLOv8。
2025-07-11 21:51:46
478
原创 第Y6周:模型改进
本次任务:请根据修改后的YOLOv5s的网络结构图以及第Y1~Y5周的内容修改对应代码,并跑通程序。可以看出,应将原序号4、6、7、8部分进行修改。一、修改yolov5s.yaml文件。
2025-06-13 14:21:46
191
原创 第Y5周:yolo.py文件解读
文件位置:./models/yolo.py这个文件是YOLOv5网络模型的搭建文件。如果需要改进YOLOv5,这个文件就是必须修改的文件之一。文件内容看起来多,真正有用的代码不多,重点理解好稳重提到的一个函数和两个类即可。注: 由于YOLOv5版本众多,同一个文件对于细节处可能会看到不同的版本,不用担心这是正常的,注意把握好整体架构即可。
2025-05-30 13:10:12
1017
原创 第Y4周:common.py文件解读
本次任务:将YOLOv5s网络模型中的C3模块按照下图方式修改,并跑通YOLOv5。YOLOv5s网络结构图:任务提示:仅需修改./models/common.yaml文件。该文件是实现YOLO算法中各个模块的地方,如果我们需要修改某一模块(例如C3),那么就需要修改这个文件中对应模块的的定义。由于YOLOv5版本问题,同一个模块可能会看到不同的版本,这都是正常的,以官网为主。
2025-05-16 21:15:15
1038
原创 第Y1周:调用YOLOv5官方权重进行检测
YOLOv5分为YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四个版本,这里以YOLOv5s为例。
2025-04-11 21:44:27
486
原创 第R8周:RNN实现阿尔兹海默病诊断
训练循环size = len(dataloader.dataset) # 训练集的大小num_batches = len(dataloader) # 批次数目, (size/batch_size,向上取整)train_loss, train_acc = 0, 0 # 初始化训练损失和正确率for X, y in dataloader: # 获取图片及其标签# 计算预测误差pred = model(X) # 网络输出。
2025-03-14 19:33:49
483
原创 第R7周:糖尿病预测模型优化探索
return outmodel代码输出:# 训练循环size = len(dataloader.dataset) # 训练集的大小num_batches = len(dataloader) # 批次数目, (size/batch_size,向上取整)train_loss, train_acc = 0, 0 # 初始化训练损失和正确率for X, y in dataloader: # 获取图片及其标签# 计算预测误差pred = model(X) # 网络输出。
2025-02-28 18:48:54
942
原创 第R6周:LSTM实现糖尿病探索与预测
return outmodel代码输出:# 训练循环size = len(dataloader.dataset) # 训练集的大小num_batches = len(dataloader) # 批次数目, (size/batch_size,向上取整)train_loss, train_acc = 0, 0 # 初始化训练损失和正确率for X, y in dataloader: # 获取图片及其标签# 计算预测误差pred = model(X) # 网络输出。
2025-02-14 15:40:37
1024
原创 第R5周:天气预测
位置影响下雨,对于 Portland 来说,有36% 的时间在下雨,而对于woomers 来说,只有6%的时问在下雨。低压与高湿度会增加第二天下兩的概率,尤其是下午 3 点的空气湿度。结论:当一天的最高气温和最低气温接近时,第二天下兩的概率会增加。语言环境:Python 3.8.0。
2025-01-24 17:09:16
1088
原创 第R4周:LSTM-火灾温度预测
train_loss = 0 #初始化训练损失和正确率#计算预测误差pred = model(x) #网络输出loss = loss_fn(pred, y) #计算网络输出和真实值之间的差距# 反向传播opt.zero_grad()#grad属性归零loss.backward()# 反向传播opt.step()# 每一步自动更新#记录Losssize = len(dataloader.dataset) #测试集的大小num_batches = len(dataloader)# 批次数目。
2025-01-10 21:53:36
586
1
原创 第R3周:RNN-心脏病预测
传统神经网络的结构都比较简单:输入层-隐藏层-输出层RNN和传统神经网络最大的区别在于每次都会将前一次的输出结果,带到下一次的隐藏层中,一起训练。
2025-01-03 21:14:39
980
原创 第J9周:Inception v3算法实战与解析
Inception v3由谷歌研究员Christian Szegedy 等人在2015年的论文《Rethinking the Inception Architecture for Computer Vision》 中提出。Inception v3是Inception网络系列的第三个版本,它在lmageNet图像识别竞赛中取得了优异成绩,尤其是在大规模图像识别任务中表现出色。
2024-12-20 13:33:27
1003
原创 第J8周:Inception v1算法实战与解析
GoogLeNet首次出现在2014年ILSVRC比赛中获得冠军。这次的版本通常称其为Inception V1。Inception V1有22层深,参数量为5M。同一时期的VGGNet性能和Inception V1差不多,但是参数量也是远大于inception V1。lnception Module是Inception V1的核心组成单元,提出了卷积层的并行结构,实现了在同一层就可以提取不同的特征,如下图a。按照这样的结构来增加网络的深度,虽然可以提升性能,但是还面临计算量大(参数多)的问题。
2024-12-06 16:52:32
1115
原创 第J7周:对于RenseNeXt-50算法的思考
电脑环境:语言环境:Python 3.8.0深度学习环境:tensorflow 2.17.0先看一下上周的网络代码:2、分组卷积模块3、残差单元4、堆叠残差单元5、搭建ResNeXt-50网络二、问题思考图中的问题是:如果conv_shortcut=False,那么执行“x=Add()…”语句时,通道数不一致的,为什么不会报错?问题分析:举个例子:假设 filters = 64,x 经过 Conv2D 后,通道数为 64。1、conv_shortcut=True 的情况:在这
2024-11-29 21:25:20
656
原创 第J5周:DenseNet+SE-Net实战
本次使用的数据集是猴痘病毒数据集。上图为SE模块图,给定一个输入x,其特征通道数为c1,通过一系列卷积等一般变换Ftr后得到一个特征通道数为c2的特征。与传统的卷积神经网络不同,我们需要通过下面三个操作来重标定前面得到的特征。
2024-11-08 18:54:04
830
原创 第J3-1周:DenseNet算法实现乳腺癌识别
今天带大家探索一下深度学习在医学领域的应用,乳腺癌是女性最常见的癌症形式,浸润性导管癌 (IDC) 是最常见的乳腺癌形式。准确识别和分类乳腺癌亚型是一项重要的临床任务,利用深度学习方法识别可以有效节省时间井减少错误。我们的数据集是由多张以 40 倍扫描的乳腺癌(BCa)标本的完整载玻片图像组成。
2024-10-18 21:34:44
595
原创 第J3周:DenseNet算法实战与解析
ResNet引入了残差模块,每个模块中都有一个恒等映射(identity mapping),即输入 x 加到输出中:F(x) + x,其中 F(x) 是卷积后的结果。这样,网络可以通过学习残差函数来加速收敛,而不是直接学习完整的映射;而DenseNet 的核心思想是密集连接,DenseNet 中每一层与之前所有层的输出相连。即对于每一层,它都接收之前所有层的特征图作为输入,并将自己的输出传递给后面的所有层。这种结构保证了特征重用,并减少了网络参数。
2024-10-11 20:34:33
886
原创 第J1周:ResNet-50算法实战与解析
在一般的卷积神经网络中,由于深度的增加,可能会带来梯度爆炸,梯度消失,ResNet的残差网络结构可以有效解决这些问题。
2024-09-13 20:54:22
636
原创 第T11周:使用TensorFlow进行优化器对比实验
我们可以从两个不同的图中分别观察到训练和验证的准确率以及损失值的变化,Adam优化器在训练集上表现优异,迅速提高准确率并减少损失值,但在验证集上的表现不稳定,可能会导致过拟合。SGD优化器在训练集上学习速度较慢,但验证集上的表现较为稳定,适合在更长期的训练中提升模型的泛化能力。具体使用哪种优化器还要看具体任务。
2024-09-06 18:57:41
697
原创 第T10周:使用TensorFlow实现数据增强
这是大家可以自由发挥的一个地方# 随机改变图像对比度将自定义增强函数应用到我们数据上# 这是大家可以自由发挥的一个地方# 随机改变图像对比度# 归一化处理本次学习了使用两种方式的数据增强提高模型性能以及自定义数据增强函数。
2024-08-26 16:06:05
1049
原创 第T9周:使用TensorFlow实现猫狗识别2
本次使用了自定义数据增强方式,对dataset进行操作,也可以使用数据增强生成器ImageDataGenerator进行数据增强。
2024-08-22 20:05:38
1069
原创 第T8周:使用TensorFlow实现猫狗识别
tqdm可以手动更新,将其对象赋给一个变量,然后调用.update(N)方法来更新进度,tqdm()有个可选的参数设置迭代总数,然后通过update方法进行累加,每次执行update都会打印一次当前进度。它提供了一种简单的方式来跟踪迭代过程的进度,无论是在循环中处理大量数据还是在长时间运行的任务中。使用image_dataset_from_directory方法将磁盘中的数据加载到tf.data.Dataset中。调用update(N)方法,表示完成N次迭代,进度条则会显示对应的百分比。
2024-08-16 19:33:37
1004
原创 第T7周:使用TensorFlow实现咖啡豆识别
从输出结果看,val_accuracy最高为0.9958,接近1,精度损失这样的程度下,但是模型大小是降到了接近原模型的1/7,还算是成功。现在尝试只加载下图的除去绿色的部分,并且冻结模型的卷基层的权重参数,让它们不参加训练,手动加上自定义的全连接层和Dropout层。,相比于原模型,降低了很多。的卷基层权重参数,让最后三个卷基层加上全连接层的权重参数加入训练。在上个冻结了模型所有卷基层的基础上,解冻最后的三个卷基层。上边我们可以看到官方的VGG16模型的。语言环境:Python 3.8.0。
2024-08-06 17:25:00
1287
1
原创 第T6周:使用TensorFlow实现好莱坞明星识别
直接使用官网的VGG16模型,效果很差。冻结VGG卷积基,只训练Dense层,增加Dropout,效果提升很大。
2024-07-26 15:51:31
451
原创 第T5周:使用TensorFlow实现运动鞋品牌识别
模型的初始学习率不能设置过大:过大的学习率可能导致模型不收敛且模型精度太差;当然也不能太小,太小模型收敛慢,难跳出局部最优。
2024-07-14 19:22:05
1214
原创 第T3周:使用TensorFlow实现天气识别
我们可以通过class_names输出数据集的标签。标签将按字母顺序对应于目录名称。数据集一共分为cloudy、rain、shine、sunrise四类。深度学习环境:tensorflow 2.15.0。编译器:Jupyter Notebook。语言环境:Python 3.8.0。
2024-06-26 13:35:46
744
1
原创 第T2周:使用TensorFlow实现彩色图片分类
在K同学啊给的示例代码的基础上,增加了卷积层和Dropout层,epochs改为20,使训练数据特征进一步提取并且防止过拟合,实验结果显著,test_acc最高达到77%。
2024-06-23 15:32:51
672
原创 第T1周:使用TensorFlow实现mnist手写数字识别
使用pytorch进行图像处理时,数据最终输入到网络时的尺寸维度是[batch_size, channels, height, weight]。使用tensorflow时的维度是[batch_size, height, weight, channels]。数据归一化使不同量纲的特征处于同一数值量级,减少方差大的特征的影响,使模型更准确。深度学习环境:tensorflow 2.15.0。编译器:Jupyter Notebook。索引为7时的输出分数最大,预测正确。语言环境:Python 3.8.0。
2024-06-18 22:43:04
746
原创 第十周:使用PyTorch实现车牌识别
在之前的案例中,我们多是使用函数直接导入已经分类好的数据集形成Dataset,然后使用DataLoader加载Dataset,但是如果对无法分类的数据集,我们如何导入,并进行识别呢?本周我们自定义一个MyDataset加载车牌数据集并完成车牌识别。之前的例子中,最后经过全连接层输出每个类别的logits,可以使用argmax(1)输出最大分数类别的索引,于是得到1/0。
2024-06-14 22:25:52
946
原创 第九周:使用PyTorch实现YOLOv5-Backbone模块实现
在上期的文章中我们介绍了YOLOv5算法,以及使用C3模块搭建了网络。这次我们继续研究YOLOv5算法,并且使用Backbone模块搭建网络。本次实验还是使用天气数据集。YOLOv5 6.0版本算法框架图如下所示:在上图可看出,Backbone包括Conv,C3,SPFF三个模块,上次已经介绍了前两个,这次我们来看SPFF模块。
2024-05-31 21:03:34
1084
原创 第八周:使用PyTorch实现YOLOv5-C3模块实现
YOLOv5一共有4个版本,不同的模型深度(depth_multiple)和模型宽度(width_multiple)构成了四个模型。虽然有四个模型,但是他们的结构基本一致。C3模块介绍如上图所示,首先一个Conv模块由普通卷积层、Batch Normalization和SiLU激活层组成。C3模块结构有两个分支,主分支是先经过一个Conv模块,然后接上一个Bottleneck堆叠;另一个分支只经过一个Conv模块,然后将两个分支进行concat操作。Bottleneck。
2024-05-24 17:29:25
2022
1
原创 第七周:使用PyTorch实现咖啡豆识别
本次使用pytorch实现对咖啡豆的识别,标签分为4类:[‘Dark’, ‘Green’, ‘Light’, ‘Medium’]。咖啡豆数据集。
2024-05-16 10:49:54
1080
1
原创 第六周:使用PyTorch实现人脸识别
1、测试集准确率达到60%2、保存训练过程中的最佳模型权重3、调用官方的VGG-16网络框架4、手动搭建VGG-16网络框架本次使用pytorch实现人脸识别,标签分为17类:‘Angelina Jolie’, ‘Brad Pitt’, ‘Denzel Washington’, ‘Hugh Jackman’, ‘Jennifer Lawrence’, ‘Johnny Depp’, ‘Kate Winslet’, ‘Leonardo DiCaprio’, ‘Megan Fox’, ‘Natalie Po
2024-04-26 19:51:49
1063
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅