
人工智能专栏计划
文章平均质量分 94
本专栏 | 以 YOLOv5与YOLOv8 | 及其改进为主线 | 集成 | Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及改进 | YOLOv8及改进 | 关键知识点 | 各种工具教程 | 力争系统的阐述知识点,后续文章会陆续更新,期待与你共研人工智能 |
小酒馆燃着灯
我有一只快乐的小狗
展开
-
《人工智能专栏》必读150篇 | 阅读推荐 & 专栏目录 & Python与PyTorch | 机器与深度学习 | 目标检测 | YOLOv5及改进 | YOLOv8及改进 | 关键知识点 | 工具
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。6. Python与PyTorch。5. YOLOv8及其改进。2. 深度学习与目标检测。4. YOLOv5改进。原创 2023-12-28 09:06:45 · 2037 阅读 · 7 评论 -
《人工智能专栏》必读150篇 | 专栏介绍 & 专栏目录 & Python与PyTorch | 机器与深度学习 | 目标检测 | YOLOv5及改进 | YOLOv8及改进 | 关键知识点 | 工具
《人工智能专栏》专栏介绍 & 专栏目录 & Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程原创 2023-12-25 14:19:48 · 1133 阅读 · 3 评论 -
Python与PyTorch系列(十四) 本文(2万字) | 解读Python中的register_buffer | 对比nn.Parameter register_buffer Tensor |
成员变量:不更新,但是不算是模型中的参数(model.state_dict())通过register_buffer()登记过的张量:会自动成为模型中的参数,随着模型移动(gpu/cpu)而移动,但是不会随着梯度进行更新。原创 2024-01-11 14:36:10 · 720 阅读 · 0 评论 -
深度学习与目标检测系列(九) 本文约(6万字) | 解读YOLOv1-YOLOv8的原理与网络结构 |
【论文解读】Yolo三部曲解读——Yolov1 - 知乎 (zhihu.com)【目标检测论文阅读】YOLOv1 - 知乎 (zhihu.com)YOLOv1学习笔记_pydw_收尾人VEM的博客-CSDN博客Resize image:将输入图片resize到448x448Run ConvNet:使用CNN提取特征,FC层输出分类和回归结果Non-max Suppression:非极大值抑制筛选出最终的结果物体检测的两个步骤可以概括为:步骤一:检测目标位置(生成矩形框)原创 2024-01-10 10:04:21 · 632 阅读 · 0 评论 -
YOLOv8及其改进(四) 本文(3万字) | 使用 Timm 库替换主干网络 |
我们可以使用这个库中的模型当作YOLOv8的主干,以满足大家的改进和实验需求。但是值得注意的是,使用这个库有利有弊!首先,优点是可以使用大量的模型的主干网络结构,并且可以对应的加载结构的权重。抛开 YOLOv8 不谈,使用这个库我们可以直接用来处理各种任务,非常的方便。缺点就是不方便细化的改进,你再想进一步改进这个主干就比较麻烦,并且改进后就没法使用权重了,相比于我手动按照 YOLO 风格复现的结构,这个不够灵活。原创 2024-01-03 12:14:29 · 1620 阅读 · 1 评论 -
YOLOv8及其改进(三) 本文(5000字) | 解读modules.py划分成子文件 | 标签透明化与文字大小调节 | 框粗细调节 |
最近YOLOv8的官方项目又迎来了一个大更新,这次更新对基础不好的同学影响可能比较大,这次更新主要就是将原本的拆分成了以下6_init_.pyblock.pyconv.pyhead.pyutils.py有的同学可能不知道该加哪里了,我这里给大家说一下。原创 2024-01-03 10:29:36 · 1398 阅读 · 0 评论 -
YOLOv8及其改进(二) 本文(4.5万字) | 训练自建目标检测与图像分割数据集 |
基础入门篇 |训练 验证 推理 直接打印 FPS,mAP50,75,95《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。转载 2024-01-03 10:25:23 · 1589 阅读 · 0 评论 -
小知识点系列(二十六) 本文(5000字) | 优化器SGD,AdamW与Lion性能对比 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-03 07:53:36 · 1304 阅读 · 0 评论 -
小知识点系列(二十五) 本文(2500字) | 解读交叉熵损失函数的求导(sigmoid和softmax) |
人工智能专栏 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-03 07:53:15 · 1010 阅读 · 0 评论 -
Python与PyTorch系列(十三) 本文(3万字) | 解读Python中的 | random | enumerate | zip | map |
result = list(map(lambda x:x(i), fun)) # 相当于每次 [fun(i)] = [mul(i), add(i)][0, 0][1, 2][4, 4][9, 6][16, 8][25, 10]当然,对于简单的处理,其实不用自定义函数也能实现类似功能,即通过灵活设置 lambda 匿名函数:推荐阅读:各部分详情:(持续更新中…)专栏实时更新目录连接_可点击查看1. 机器学习机器学习(一) 本文(3万字) | 机器学习概述 |-CSDN博客。原创 2024-01-03 07:52:49 · 1915 阅读 · 0 评论 -
Python与PyTorch系列(十二) 本文(3万字) | 解读Python中的异常处理 | try-except-else-finally | with |
在 Python 中,所有异常必须为一个派生自 BaseException 的类的实例 (BaseException 是所有内置异常的基类在带有指定一个特定类的 except 子句的 try 语句中,该子句将处理派生自 BaseException 类的异常类 (但也有例外)。通过子类化创建的两个不相关异常类永远不等效的,即便二者名称相同。除了 Python 内置异常类,还可以将内置异常类子类化以定义新的异常。因为BaseException 类不应被用户自定义类直接继承,所以。原创 2024-01-03 07:52:16 · 1030 阅读 · 0 评论 -
Python与PyTorch系列(十一) 本文(3万字) | 解析python中的 |iterable | iterator | generator|迭代器 | 可迭代对象 | 生成器 |
迭代器 (iterator)是一种用于表示一连串数据流的对象。迭代器对象要求支持迭代器协议——对象须同时支持/实现iter() 方法和next() 方法。iterator.iter()方法返回迭代器对象本身(对可迭代对象使用内置函数 iter() 将返回迭代器),这是同时允许容器和迭代器配合 for … in … 语句使用所必须的。iterator.next()方法返回容器的下一项元素。重复调用迭代器的next。原创 2024-01-03 07:51:57 · 1112 阅读 · 0 评论 -
小知识点系列(二十四) 本文(4000字) | RGB颜色机制 | 深度学习图像处理中,像素值越大意味着什么 | OpenCV 为什么使用 BGR 颜色格式 |
RGB颜色空间以R(Red:红)、G(Green:绿)、B(Blue:蓝)三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色,所以俗称三基色模式。RGB空间是生活中最常用的一个颜色显示模型,电视机、电脑的CRT显示器等大部分都是采用这种模型。自然界中的任何一种颜色都可以由红、绿、蓝三种色光混合而成,现实生活中人们见到的颜色大多是混合而成的色彩。肉眼可以识别世界上的所有颜色,而RGB几乎可以组合成世界上所有的颜色!原创 2024-01-02 16:03:48 · 962 阅读 · 0 评论 -
小知识点系列(二十三) 本文(2万字) | 解读交并比 | IoU | GIoU | DIoU | CIoU | EIoU | WIOU | SIOU| αIOU |
在目标检测任务中,常用到一个指标IoU,即交并比,IoU可以很好的描述一个目标检测模型的好坏。在训练阶段IoU可以作为anchor-based方法中,划分正负样本的依据;同时也可用作损失函数;在推理阶段,NMS中会用到IoU。同时IoU有着比较严重的缺陷,于是出现了GIoU、DIoU、CIoU、EIoU,下面我们一起看一下这几种IoU。边界框回归的三大几何因素:重叠面积、中心点距离、纵横比。重叠中心点纵横比优点缺点IoU√××尺度不变性,非负性;同一性;对称性;三角不等性。原创 2024-01-02 16:03:02 · 1034 阅读 · 0 评论 -
小知识点系列(二十二) 本文(4万字) | 解析cfg文件 | 读取获得网络结构 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 16:02:30 · 1019 阅读 · 0 评论 -
小知识点系列(二十一) 本文(3万字) | 解读pycocotools的API | 标检测mAP的计算 | COCO的评价指标 |
为使用户更好地使用 COCO数据集, COCO 提供了各种 API。COCO是一个大型的图像数据集,用于目标检测、分割、人的关键点检测、素材分割和标题生成。这个包提供了Matlab、Python和luaapi,这些api有助于在COCO中加载、解析和可视化注释。coco api地址:安装pycocotools 两种方式都可以试试核心文件coco.pymask.py这三个文件AP代表 IOU从0.5到0.95,间隔0.05计算一次mAP, 取平均mAP即为最终结果。原创 2024-01-02 16:01:52 · 1236 阅读 · 0 评论 -
小知识点系列(十九) 本文(2万字) | 解读利用pytorch可视化 | 特征图 | 卷积核参数 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 16:01:13 · 495 阅读 · 0 评论 -
小知识点系列(二十) 本文(2万字) | 解读预训练 | 微调 | 迁移 | 模型冻结与解冻 | 对比优化器optimizer与requires_grad冻结 | PyTorch断点训练 |
你需要搭建一个网络模型来完成一个特定的图像分类的任务。首先,你需要随机初始化参数,然后开始训练网络,不断调整参数,直到网络的损失越来越小。在训练的过程中,一开始初始化的参数会不断变化。当你觉得结果很满意的时候,你就可以将训练模型的参数保存下来,以便训练好的模型可以在下次执行类似任务时获得较好的结果。这个过程就是。之后,你又接收到一个类似的图像分类的任务。这时候,你可以直接使用之前保存下来的模型的参数来作为这一任务的初始化参数,然后在训练的过程中,依据结果不断进行一些修改。这时候,你使用的就是一个。原创 2024-01-02 13:42:06 · 1471 阅读 · 0 评论 -
小知识点系列(十八) 本文(3万字) | 解读Pytorch优化器机制 | Optimizer | 各类优化器 | 各类学习率调整策略 |
点击进入专栏:《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程详解Optimizers官方文档,推荐学习率对于模型训练效果来说相当重要。学习率过低会导致学习速度太慢,学习率过高又容易导致难以收敛。因此,很多炼丹师都会采用动态调整学习率的方法。刚开始训练时,学习率大一点,以加快学习速度;之后逐渐减小来寻找最优解。那么在Pytorch中,如何在训练过程里动态调整学习率呢?本文将带你深入理原创 2024-01-02 13:41:14 · 981 阅读 · 0 评论 -
小知识点系列(十七) 本文(1.5万字) | 解读深度学习中 | Batch Size | Iterations | Epochs |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 13:40:30 · 981 阅读 · 0 评论 -
小知识点系列(十六) 本文(3万字) | 解深度解读PyTorch model的 | modules() |children() | named_children() | parameters() |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 13:39:51 · 1087 阅读 · 0 评论 -
小知识点系列(十五) 本文(4.2万字) | 解读NMS | Soft-NMS | IoU-Net | Softer-NMS | Adaptive NMS | DIoU NMS |
在执行目标检测任务时,算法可能对同一目标有多次检测。NMS是一种让你确保算法只对每个对象得到一个检测的方法,即“清理检测”。如下图所示:如果用一句话概括NMS的意思就是:筛选出一定区域内属于同一种类别得分最大的框NMSSoft-NMS及都是以分类置信度优先的NMS,未考虑定位置信度,即没有考虑定位与分类得分可能出现不一致的情况,特别是框的边界有模棱两可的情形时。采用的都是传统的IoU,只考虑两包围盒子之间的重叠率,未能充分反映两包围盒子之间相对位置关系。实际上NMS。转载 2024-01-02 13:38:53 · 1058 阅读 · 0 评论 -
小知识点系列(十四) 本文(3万字) | 解深度解读损失函数 | CrossEntropy | BCE | BCEWithLogits | NLL |MSE | L1 |
大家首先要注意一下哈,在pytorch里面,类是一回事,函数是另外一回事,比如上面我说的BCELoss,BCEWithLogitsLoss等都是类,所以我们要先进行构造对象,然后在调用其方法(函数)求损失。但是,pytorch为了方便大家,在torch.nn.functional提供了直接求损失的函数,但是其原理还是上面的红色,只是帮你做了而已。#标准形式#或者BCEWithLogitsLoss对应CrossEntropyLoss对应等等。原创 2024-01-02 13:38:36 · 1077 阅读 · 0 评论 -
Python与PyTorch系列(十) 本文(2500字) | 解读plt.show与plt.imshow区别 | plt.imshow与cv2.imshow区别 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 13:37:17 · 1131 阅读 · 0 评论 -
Python与PyTorch系列(九) 本文(2万字) | 解读Python中的解包 * 与 ** |
本文所讲的是python的星号操作符和双星号操作符,* 迭代器解包操作,也称之为序列拆分操作符** 字典解包操作,也称之为映射拆分操作。作为关键字参数传递给函数。使用和**的解包的好处是能节省代码量,使得代码看起来更优雅。如果列表中有3个元素,那么刚好可以分配给3个变量。除了列表对象可以解包之外,任何可迭代对象都支持解包,可迭代对象包括元组、字典、集合、字符串、生成器等实现了__next__方法的一切对象。元组解包字符串解包字典解包>>> a'a'>>> b'b'>>> c'c'原创 2024-01-02 13:37:04 · 982 阅读 · 0 评论 -
Python与PyTorch系列(八) 本文(3000字) | 解读python中yield的用法 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 13:36:51 · 1019 阅读 · 0 评论 -
Python与PyTorch系列(七) 本文(8000字) | python常用库 | os | pathlib | time | logging | tree | 正则表达式-re | find |
os库《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-02 13:36:37 · 885 阅读 · 0 评论 -
Python与PyTorch系列(六) 本文(3万字) | 解读文件格式 | XML | JSON |
人工智能专栏 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-01 09:52:54 · 979 阅读 · 0 评论 -
机器学习(十) 本文(2万字) | 朴素贝叶斯(Naive Bayes) | Python复现 |
原理《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-01 09:52:29 · 991 阅读 · 0 评论 -
机器学习(九) 本文(4万字) | 支持向量机 | 第三篇 |(Support Vector Machine,SVM) | Python复现 |
(1)数据集引入,并使用图像展示(2)使用SVM进行分类(注:用于分类的线性模型只能用一条直线来划分数据点,对这个数据集无法给出较好的结果)(3)现在我们对输入特征进行扩展,比如说添加第二个特征的平方(feature1 ** 2)作为一个新特征。现在我们将每个数据点表示为三维点(feature0, feature1,feature1 ** 2),而不是二维点(feature0, feature1)(4)在数据的新表示中,现在可以用线性模型(三维空间中的平面)将这两个类别分开。原创 2024-01-01 07:21:25 · 981 阅读 · 0 评论 -
机器学习(九) 本文(4万字) | 支持向量机 | 第二篇 |(Support Vector Machine,SVM) | Python复现 |
机器学习(八) 本文(4万字) | 支持向量机(Support Vector Machine,SVM) | Python复现 |点击进入专栏:《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程感知机原始形式是收敛的一般地,约束优化问题(原问题)可以写成:$$\begin{align}&\min_{x\in\mathbb{R^p}}f(x)\&s.t.\ m_i(x)\le0,i=原创 2024-01-01 07:21:04 · 1094 阅读 · 0 评论 -
机器学习(九) 本文(4万字) | 支持向量机 | 第一篇 |(Support Vector Machine,SVM) | Python复现 |
点击进入专栏:《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程感知机原始形式是收敛的一般地,约束优化问题(原问题)可以写成:$$\begin{align}&\min_{x\in\mathbb{R^p}}f(x)\&s.t.\ m_i(x)\le0,i=1,2,\cdots,M\&\ \ \ \ \ \ \ \ n_j(x)=0,j=1,2,\cdots,N\end{align原创 2024-01-01 07:20:42 · 982 阅读 · 0 评论 -
机器学习(八) 本文(3万字) | 集成学习(ensemble learning) |
弱分类器(weak learner)指那些分类准确率只稍微好于随机猜测的分类器(error rate < 0.5),常见的弱学习器包括决策树、朴素贝叶斯分类器、支持向量机等**预测准确率较低:**弱学习器的预测结果可能比随机猜测稍好一些,但通常不能达到高准确率**可用于组合:**虽然单个弱学习器的预测能力有限,但可以通过组合多个弱学习器来提高整体预测准确率**训练速度较快:**弱学习器通常具有较简单的结构和较少的参数,因此训练速度较快强学习器(Strong Learner)是指在机器学习中,具有。原创 2024-01-01 07:19:15 · 1010 阅读 · 0 评论 -
工具系列(八) 本文(3万字) | 解读Seaborn可视化库 | 可视化 |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-01 07:18:21 · 932 阅读 · 0 评论 -
杂记(八) 本文(1万字) | Windows安装CentOS 7(桌面版) |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-01 07:17:24 · 426 阅读 · 0 评论 -
杂记(七) 本文(1万字) | 训练神经网络的秘诀(翻译) |
人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程几周前,我一条关于“最常见的神经网络错误”的推文,列出了一些与训练神经网络相关的常见问题。这条推文的参与度比我预期的要高得多(包括😃)。显然,很多人都亲身经历过“这是卷积层的工作原理”和“我们的卷积网实现了最先进的结果”之间的巨大差距。所以我认为刷掉我尘土飞扬的博客,将我的推文扩展到这个主题应得的长篇形式可能会很有趣。原创 2024-01-01 07:17:11 · 802 阅读 · 0 评论 -
杂记(六) 本文(3000字) | 解读时间复杂度与空间复杂度 | 复杂度 |
我们继续看上面的例子,假设每行代码的执行时间都是一样的,我们用 1颗粒时间 来表示,那么这个例子的第一行耗时是1个颗粒时间,第三行的执行时间是 n个颗粒时间,第四行的执行时间也是 n个颗粒时间(第二行和第五行是符号,暂时忽略),那么总时间就是 1颗粒时间 + n颗粒时间 + n颗粒时间 ,即 (1+2n)个颗粒时间,即: T(n) = (1+2n)*颗粒时间,从这个结果可以看出,这个算法的耗时是随着n的变化而变化,因此,我们可以简化的将这个算法的时间复杂度表示为:T(n) = O(n)原创 2024-01-01 07:16:59 · 851 阅读 · 0 评论 -
工具系列(九) 本文(2万字) | 在ubuntu中安装docker教程 | 在Linux下Docker将镜像导出 | 上传至服务器 | 部署并创建容器 |
人工智能专栏 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程。原创 2024-01-01 07:16:40 · 1138 阅读 · 0 评论 -
工具系列(七) 本文(4万字) | Git入门教程 | 初始本地仓库-推送合并到远程仓库 | 解读VScode与PyCharm配置与使用git | CodeGeeX与Tabnine使用 |
日常开发中, 经常会使用Git来管理项目, IDE 使用Pycharm, 使用Pycharm中的Git操作可以大大节省直接使用命令敲代码的时间.下面教大家如何使用Pycharm里面的Git插件来进行图形化的操作.原创 2024-01-01 07:16:19 · 1032 阅读 · 0 评论 -
工具系列(六) 本文(2万字) | 解读数据集 | PASCAL VOC2012 | MS COCO |
PASCAL VOC挑战赛 (The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛,PASCAL全称:Pattern Analysis, Statical Modeling and Computational Learning,是一个由欧盟资助的网络组织。图像分类(Object Classification)目标检测(Object Detection)目标分割(Object Segmentation)行为识别(Action Classification)等。原创 2024-01-01 07:15:59 · 903 阅读 · 0 评论