自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学习Ultralytics(data)(1)

今天我们来学习一下data文件夹下面的代码首先有个_init_文件,典型的 Python 包中的文件,用于导出项目中的一些重要类和函数。它将base.pybuild.py, 和dataset.py文件中的内容导入并暴露给外部使用。看看里面有什么。

2024-10-10 01:17:48 1169

原创 学习Ultralytics(获取yolov8自带的数据集并开始训练)

这些文件包含了关于每个数据集的路径、类别数、类别标签等信息,帮助模型正确地加载和解析数据集,以便进行训练和推理。每个 YAML 文件针对不同的数据集(比如 COCO、Brain Tumor、GlobalWheat2020 等),用来加载对应的数据集,以适应不同的检测或分割任务。如果是新手的话还是很建议这样进行训练的,开源数据集网站牵扯到标签的类型等等问题,可以先拿这些yaml文件里面的数据集练练手。关于数据集的下载,如果你没有的话可以去yaml文件最后的github网址去下载。

2024-10-07 23:14:45 973

原创 Python爬取微博博主图片

大家只需要更改代码当中的id和weibo_name以及保存路径即可。今天和大家分享一个可以爬取微博指定博主发布的图片,非常好用。

2024-10-07 22:51:18 913 4

原创 实例分割、语义分割和 SAM(Segment Anything Model)

实例分割、语义分割和都是图像处理中的重要技术,它们的目标是通过分割图像中的不同对象或区域来帮助识别和分析图像,但它们的工作方式和适用场景各有不同。

2024-10-06 11:28:11 4158 1

原创 yolov8.yaml

前面说了yolov8的核心代码放在ultralytics里面,今天我们一起学习一下YOLOv8模型下的Ultralytics文件目录结构。: 这个文件夹通常存放与模型相关的资源文件,可能包括训练过程中的日志、模型可视化图像、模型说明文档等。: 存放配置文件(configuration files),这些文件定义了YOLOv8模型的架构、训练和测试参数,例如网络层数、学习率、数据增强等。

2024-10-06 00:21:07 1980

原创 Relu激活

是卷积神经网络(CNN)以及许多深度学习模型中最常用的激活函数之一。它的主要作用是引入非线性,使模型能够学习和表达更复杂的特征。以下是对ReLU激活函数的详细解释。

2024-10-05 20:36:38 1626

原创 几个卷积神经网络(CNN)可视化的网站

这些资源可以帮助你通过动画、可视化和交互式工具更好地理解卷积神经网络的结构和工作原理。谷歌推出的深度学习交互式平台,虽然主要是全连接网络,但适合学习基础概念。OpenAI提供的神经网络特征可视化工具,展示深度网络中神经元的行为。3Blue1Brown频道的神经网络系列视频,提供精美的动画解释。一个简单的卷积神经网络可视化工具,展示每层的特征提取过程。高质量的交互式论文平台,提供深度学习的详细可视化解释。一个可以生成神经网络结构图的工具,支持卷积神经网络。直观的交互式工具,解释卷积神经网络的基本原理。

2024-10-05 20:11:38 5736

原创 学习Ultralytics (下载)

Ultralytics由创立,最初是为了简化目标检测模型的开发和应用,专注于构建高效、易用、性能卓越的深度学习框架。其主要产品之一是 YOLO 系列模型,尤其是最新的YOLOv5和YOLOv8,因其在精度、速度和可扩展性方面的出色表现而广受欢迎。

2024-10-02 00:14:06 1649

原创 yolov5一键修改图片文件与对应yolo格式标签文件名称

有的时候标签名字或者图片名称与其他datasets名称重复了,可以用此方法进行修改。

2024-09-25 22:46:17 702 1

原创 关于yolov5训练需要更改的参数汇总

需要修改第21,22行的路径,train是图片的训练集,val是图片训练的验证集,nc是标签的数量,names是标签的名称。这个文件我们只需要修改nc的值和上面的值相同即可,最后修改的就是weights里面的train,py文件。第一步我们需要修改data文件夹下的voc.yaml文件,这里我复制了一份改名为hat.yaml。在models文件夹下有个hub文件夹,里面是你选择的模型,比如我选择的是yolov5s。cfg一行就是我上面的yolov5s.yaml文件,我这里换了一个儿名字。

2024-09-24 12:21:49 788

原创 标注XML文件转为YOLOtxt文件

格式通常遵循 PASCAL VOC 数据集的标签格式,用于存储图像中目标物体的位置信息和类别信息。是指将像素坐标相对于图像的总宽高进行比例缩放,使坐标值介于 0 到 1 之间,以便适应不同尺寸的图像。一个典型的 XML 文件包含图像的基本信息(文件名、大小)和标注的目标物体的边界框信息。这意味着类别为 1 的物体位于图像中心,宽度为图像宽度的 20%,高度为图像高度的 30%。,其内容与每个图像一一对应,通常放在与图像同名的文件中(例如,图像为。YOLOv5 支持的标签(labels)格式为。

2024-09-22 00:50:01 748

原创 关于yolov5遇到空标签导致训练暂停的解决

小编在使用yolov5进行深度学习训练的时候,训练了好几个epochs,突然报了一个empty的错误导致训练程序终止,还好小编只是在训练刚开始遇到这种问题,如果训练了好多轮以后遇到此类问题,那前面训练花费的时间全部都浪费了,那就非常难受了,那我们可以从源头上改变这个问题。那我们如何改变呢,我们需要根据空标签txt来删除对应的图片,因为数据集有严格的一一对应原则,代码如下。把路径改一下以后,训练可以继续了。

2024-09-16 11:43:11 676

原创 常见的正则化方法以及L1,L2正则化的简单描述

L1 正则化通过让一些权重趋向于零,从而减少不必要的特征,简化模型。L2 正则化通过让权重整体变小,避免某些权重过大,从而减少过拟合的风险。在实际应用中,L1 更适合做特征选择,而 L2 更适合处理权重过大的问题。有时我们可以结合两者的优势,使用 Elastic Net 正则化,兼具稀疏性和权重缩小的效果。L1 正则化对每个权重 www 的更新,在原有的梯度更新基础上,施加了一个与权重符号相关的减小量。简单来说,L1 正则化的惩罚项是权重 www 的绝对值,因此对不同符号的权重,影响也不同。

2024-09-09 00:14:36 2744

原创 深度学习权重与正则化

首先我们需要了解深度学习中权重的重要性在图像深度学习中,的作用非常关键,决定了模型如何理解、提取和组合图像中的特征。权重是神经网络中的参数,随着训练过程不断被调整,从而使得模型能够从数据中学习并做出准确的预测。

2024-09-08 23:10:53 1018

原创 深度学习中常见的权重参数初始化方法

Xavier 初始化适合 Sigmoid、Tanh 激活函数,能够保持输入和输出的方差平衡。He 初始化适合 ReLU 和 Leaky ReLU 激活函数,能帮助防止梯度消失问题。随机初始化用于打破神经元之间的对称性,但需要注意数值范围。预训练权重在迁移学习中常用,能够加速训练并提升效果。通过合理的权重初始化方法,深度学习模型可以更快地收敛,并获得更好的训练效果。

2024-09-08 22:51:51 1556

原创 简单讲一下API的作用以及介绍

API 接口是指应用程序接口,是软件开发中用于不同应用程序之间交互通信的接口。包括操作系统 API、应用程序 API、网络 API 等。1。

2024-09-06 10:51:58 1456

原创 大量图片进行自适应处理

首先我们手里有一个视频,但是我们对视频进行图像处理的话视频很难暂停进行观察,我们可以写一个按键坚挺,但是小编这里介绍另一个办法,大致思路为,把视频进行截帧为图片的集合,再对该集合进行统一的图像处理,那如何来实现呢。

2024-09-01 23:12:15 716 1

原创 pytorch深度学习基础 8(CIFRA-10基础篇1)

CIFAR-10 是由 Hinton 的学生 AlexKrizhevsky 和 IlyaSutskever 整理的一个用于识别普适物体的小型数据集。

2024-08-28 00:31:23 1119

原创 使用OpenCV库来捕获摄像头视频流,并按指定格式保存

这两份代码只是保存的视频格式不一样,处理方法都是一样的,运行完以后会有一个叫frame的cv窗口出现,这里显示的图像是实时进行录制的图像。代码中的path就是你实际想要保存视频的路径 ,如果实在不知道路径,可以打开资源管理器进行查看,如下图所示。运行完这两份代码后,对应的路径下保存的文件就会呈现出两个不同格式的视频文件。注意如果需要录制多个视频,需要修改代码中视频的命名,也就是这一行。但是往往这种格式我们不是想要的,更多的是使用MP4格式。下面这份代码的保存视频的格式是AVI。

2024-08-26 23:47:03 848 1

原创 pytorch深度学习基础 8(简单的神经网络替换线性模型)

接上一节的思路,这一节我们将使用神经网络来代替我们的之前的线性模型作为逼近函数。我们将保持其他的一切不变,只重新定义模型,小编这里构建的是最简单的神经网络,一个线性模块,一个激活函数,然后一个线性模块。这个代码片段定义了一个简单的神经网络模型,使用和来组织模型的层。这个模型包含一个隐藏层和一个输出层,隐藏层使用Tanh激活函数。

2024-08-26 00:44:09 581

原创 pytorch深度学习基础 8 (使用PyTorch的内置功能和默认参数来构建和训练一个简单的线性模型)

使用。

2024-08-25 23:53:51 700 1

原创 pytorch深度学习基础 7 (简单的线性拟合+检验模型在验证集上的效果)

我们之前做的目的都是评估训练的损失,训练的损失Loss告诉我们,我们的模型是否能够完全拟合训练集,也就是说我们的模型是否有足够的能力处理数据中的相关信息。但是我们之前都是评价训练的好坏,并没有引入验证集。接下来我们就需要用训练集训练模型然后在验证集中检验模型的好坏,因为如果模型的参数在训练集中表现很好,但是如果应用与实际场景中,必然有很多训练集中没有的数据,可能在这些数据中表现比较差,那对于整个模型来说也不是特别好,所以我们的模型不仅要在训练集中表现良好,更要在验证集(val)中表现良好才行。

2024-08-25 00:11:34 1088

原创 pytorch深度学习基础 7(简单的的线性训练,SGD与Adam优化器)

接下来小编来讲一下一些优化器在线性问题中的简单使用使用,torch模块中有一个叫optim的子模块,我们可以在其中找到实现不同优化算法的类。

2024-08-23 23:52:34 1378

原创 pytorch深度学习基础 6(简单的参数估计学习3)

上一篇博客说了如何拟合一条直线y=wx+b,今天我们现在使用PyTorch进行相同的曲线拟合拟合y= x*x -2x +3 + 0.1(-1到1的随机值) 曲线给定x范围(0,3)

2024-08-22 14:09:27 448

原创 关于U盘格式化以后内存大幅度缩水的解决方案

首先格式化U盘导致U盘内存缩水几十M属于正常现象,但是从32G/16G/8G缩水到200多M出现的概率也是比较大的,但是也有方法进行内存恢复。

2024-08-21 18:20:41 2190 4

原创 pytorch深度学习基础 6(简单的参数估计学习2)

上一节我们建立了一个简单的模型进行分析散点图,利用均方差来实现损失函数的计算,但是并没有计算出具体的参数值,这次我们来计算损失函数的损失值以及不断减小损失值,计算出最优的参数,代码原理非常简单大家可以自行理解查阅资料。

2024-08-20 22:24:47 1165

原创 pytorch深度学习基础 6(简单的参数估计学习1)

今天我们来学习一下简单的线性模型的参数估计。

2024-08-15 21:43:26 870

原创 pytorch深度学习基础 5 (张量篇2)

接着上一篇博客的张量基础操作,继续接着分享张量的基础操作。

2024-08-15 19:49:58 190

原创 pytorch深度学习基础 5(张量篇1)

张量是多维数组,可以包含标量、向量、矩阵等数据类型,用于表示在一些矢量、标量和其他张量之间的线性关系。PyTorch中的张量是数据存储和运算的基本单元,它们是多维数组,可以包含标量、向量、矩阵等数据类型。其实pytorch中的张量和Python中的列表差不多,但也有所区别,今天我们来讲一下张量的基本语法以及常用操作。和上面一样自己直接创建二维张量也是一样的,但是高维张量的索引和列表的索引有所不同,下面我用示例来展示一下。虽然说我们得到了全是0的张量,但是每个0的位置都可以自己按照需求进行数值的替换。

2024-08-11 20:33:26 962

原创 pytorch深度学习基础 4 (马变斑马)

CycleGAN(Cycle Generative Adversarial Network)是一种特殊类型的生成对抗网络,旨在解决无配对数据的图像到图像转换问题。

2024-08-10 21:25:16 2260

原创 pytorch深度学习基础3

本章开始带大家了解ResNet。

2024-08-09 21:31:09 860

原创 卷积神经网络概述

卷积神经网络(CNN)是深度学习领域中一种极为重要的模型架构,广泛应用于图像识别、语音识别、自然语言处理等多种任务中。在卷积神经网络的框架下,不同的研究者和开发者提出了多种模型框架,以解决不同的问题并提升模型性能。

2024-08-09 16:22:08 821

原创 pytorch深度学习基础1

是一个开源的Python库,它是PyTorch框架的一部分,用于计算机视觉任务。TorchVision提供了大量的预定义模型,用于图像分类、物体检测、语义分割、实例分割和视频分析等任务。它还包括了用于加载和处理图像数据的各种工具,以及用于数据增强的模块。

2024-08-09 16:13:11 328

原创 使用torch库进行简单的卷积操作 (1)

使用MSELoss作为损失函数并进行400次迭代训练的整个过程,是一个通过不断调整模型参数以最小化预测误差的过程。这个过程包括初始化模型和优化器、前向传播生成预测、计算损失、反向传播计算梯度以及更新模型参数。通过多次迭代,模型能够逐渐学习到数据的内在规律,从而提高其预测性能。

2024-08-07 16:05:03 731

原创 使用torch库进行简单的卷积操作

它已经成为深度学习领域中最受欢迎的框架之一。今天我们要利用torch这个库进行简单的深度学习中常见的二维卷积运算讲解以及代码的实现,开始慢慢接触深度学习的代码以及计算原理。:PyTorch拥有一个活跃的社区和丰富的生态系统,包括许多预训练的模型、工具和数据集,这有助于加速研究和开发过程。这次讲解的是深度学习卷积操作中最简单的对5 * 5的矩阵使用3 * 3的矩阵进行卷积操作,最后得到一个3矩阵。通俗的讲就是一个5 * 5的格子为背景,3 * 3的格子为移动窗口在背景中不断移动计算,不能超出背景范围。

2024-08-06 21:15:01 511

原创 使用NumPy实现简单的机器学习任务(加强版)

上一期给出的散点可以根据seed()种子函数的不同,可以得出不同的散点图,并拟合出最接近给定参数的拟合曲线,现在我们想获取200组数据但是我们只使用前面50组数据对后面150组数据进行预测,看看准确性。接下来我们只对前面150个点进行曲线拟合,看看后50个点的预测效果,代码只需要把原来的范围修改一下即可。可以看到梯度下降的方法也就是黄色线,效果更好一点,也就验证了正则化方法是可以对预测效果进行准确性优化的。可以看到散点图总体还是比较分散的,这对预测的难度大大增强了。下一卜,进行全部200个散点的曲线拟合。

2024-08-04 21:48:27 223

原创 使用NumPy实现简单的机器学习任务

首先,给出一个数组x,然后基于表达式y=3x+2,加上一些噪声数据到达另一组数据y。然后,构建一个机器学习模型,学习表达式y=wx+b的两个参数w、b。这种方法的代码可能会多一点,但每一步都是透明的,有利于理解每一步的工作原理。通俗一点就是已知一组x,y的值,这些值是满足函数严格一一对应的条件,我们需要通过数据去反推x,y之间存在最满足原始数据的函数关系。与我们设定的w1 = 3,b1 = 2几乎一样,若数据的个数增大至无穷,则这两个参数无限接近设定值。最后,采用梯度下降法,通过多次迭代学习到w、b的值。

2024-08-02 19:34:58 355 1

空空如也

空空如也

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

TA关注的人

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