自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RCNN系列算法发展脉络

RCNN系列是深度学习目标检测算法的奠基之作,从RCNN到Faster RCNN的演进,不仅提高了检测速度和精度,还优化了模型的端到端训练能力。Mask RCNN则使得目标检测迈向了实例分割的新时代。尽管在实时检测场景中YOLO系列更占优势,但在精度要求较高的任务中,RCNN系列依旧具有强大竞争力。

2025-05-21 01:02:12 801

原创 YOLOv1到YOLOv11全解析:一文搞懂11个版本升级路线!

YOLO(You Only Look Once)是目标检测领域最具影响力的算法家族之一,从最初的 YOLOv1 到最新发布的 YOLOv11,十年间持续进化,广泛应用于安防监控、无人驾驶、工业质检、移动端部署等场景。,助你在面试、论文阅读、项目实战中快速定位和选择合适的版本!本篇文章将带你一次性掌握 YOLO 的。精度与速度的平衡非常优秀。

2025-05-20 19:16:15 736

原创 PyTorch 之 torch.distributions.Categorical 详解

掌握这个类的用法,能让你在强化学习、自然语言处理等诸多领域更加得心应手地构建和训练模型。在深度学习的诸多任务中,我们常常需要处理离散概率分布,比如在自然语言处理中对词汇表中的单词进行采样,或者在强化学习中从策略网络输出的动作概率分布中选择动作。本文将深入讲解这个类的用法,帮助你在实际项目中更好地利用它。方法计算分类分布的熵,熵反映了分布的不确定性。是一个元组,用于指定采样的样本数量和形状。默认为空,表示采样一个样本。方法枚举分布的支持集,即所有可能的类别索引。在语言模型中,模型会预测下一个单词的概率分布。

2025-05-20 17:40:41 739

原创 强化学习基础原理详解与核心公式

强化学习融合了控制论、博弈论、运筹学与机器学习等多个领域的思想,是构建智能体的一种重要方式。理解其基础原理和核心公式,是学习深度强化学习、AlphaGo、自动驾驶等高阶应用的关键第一步。深度强化学习(DQN、DDPG、PPO、A3C)策略梯度的推导与实现强化学习的代码实战(基于Python和PyTorch)

2025-05-20 04:06:13 842

原创 强化学习系列——时序差分学习(SARSA与Q-Learning)

强化学习环境一般建模为一个马尔可夫决策过程(MDP)SAPRγSAPRγSS:状态空间AA:动作空间Ps′∣saP(s'|s,a)Ps′∣sa:状态转移概率RsaR(s,a)Rsa:奖励函数γ∈01γ∈01:折扣因子目标是学习一个策略π\piπ下的状态值函数或状态-动作值函数:VπsEπ∑t0∞γtRt1∣S0sVπsEπ​t0∑∞​γtRt1。

2025-05-20 03:39:43 953

原创 条件生成模型介绍

条件生成(Conditional Generation)是指在生成模型中,引入额外的条件信息(如类别标签、文本描述、图像等)来指导生成过程,使模型能够生成符合特定语义或属性的样本。它是从无条件生成(只学习pxpx)扩展到学习条件分布px∣cpx∣cx\mathbf{x}x:生成的样本(如图像、文本、音频等)c\mathbf{c}c:条件信息(如类别标签、文字、风格等)模型类型条件生成方法条件信息注入方式GAN标签输入 G 和 Dconcat 或嵌入VAE。

2025-05-19 04:07:51 1016

原创 无分类器引导的条件生成模型

无分类器引导通过。

2025-05-19 04:05:31 820

原创 分类器引导的条件生成模型

分类器引导的条件生成模型通过外部分类器的梯度信号,在不修改生成模型结构的情况下实现可控生成。其核心在于贝叶斯框架下的梯度融合,既保留了生成模型的多样性,又增强了条件指向性。实际应用中需注意分类器与生成模型的协同性,并通过实验调整参数以达到最优效果。

2025-05-19 04:01:46 1007

原创 扩散模型(Diffusion Model)介绍

扩散模型(Diffusion Model)是一类生成模型,其基本思想是通过模拟数据的逐步“扩散”与“去扩散”过程,学习数据分布,从而生成新的样本。扩散模型近年来在图像生成(如Stable Diffusion)等任务中表现出色。生成质量高;训练稳定;可与其他条件灵活结合。给定时间步序列t0Tt1⋯tN0t0​Tt1​⋯tN​0,设定噪声调度表αˉtαˉt​,采样过程如下:xt0∼N0Ixt0​​∼N0I。

2025-05-19 03:56:12 775

原创 生成对抗网络(GAN)原理

生成对抗网络()是由等人在 2014 年提出的一种深度生成模型。它通过两个神经网络之间的博弈(对抗)过程,学习数据的生成分布,从而生成以假乱真的数据(如图像、语音等)。GAN 是近年来生成模型领域的重要突破,广泛应用于图像生成、风格迁移、图像修复等任务中。

2025-05-19 01:09:33 594

原创 YOLOv5目标构建与损失计算

YOLOv5作为单阶段目标检测的经典算法,其高效的检测性能离不开精心设计的训练目标构建和损失计算策略。本文将深入解析YOLOv5源码中build_targets目标构建函数和ComputeLoss损失计算类的实现原理,揭开模型优化背后的关键技术。该函数核心思想是将每个目标分配到最合适的特征图层、网格位置和锚点尺寸,同时考虑中心点偏移以增加匹配机会,最终构建用于计算分类和定位损失的训练目标。该实现通过动态目标分配、多尺度损失平衡和先进的IoU计算方式,有效提升了YOLOv5的检测性能。

2025-05-18 23:36:41 783

原创 目标检测评估指标mAP详解:原理与代码

在目标检测任务中,mAP(mean Average Precision)是最重要的评估指标之一。精确率(Precision)与召回率(Recall)的平衡关系PR曲线的绘制原理AP(Average Precision)的计算方法多类别场景下的mAP计算附完整代码实现与逐行解析。

2025-05-18 18:46:30 790

原创 Pytorch实现常用代码笔记

参考。

2025-05-17 09:49:58 351

原创 PyTorch实现三元组损失Triplet Loss

三元组损失(Triplet Loss)是深度学习中用于学习特征表示的重要损失函数,最初在FaceNet论文中提出,后被广泛应用于人脸识别、行人重识别(ReID)等任务。其核心思想是通过锚点样本(Anchor)、**正样本(Positive)和负样本(Negative)**的三元组,让同类样本的特征距离更近,不同类样本的特征距离更远。margin:间隔参数,控制正负样本对之间的最小距离:PyTorch内置的排序损失函数。

2025-05-17 09:48:01 983

原创 PyTorch实现CrossEntropyLoss示例

在深度学习的分类任务中,交叉熵损失函数被广泛应用。然而,传统的交叉熵损失容易导致模型对预测结果过于自信,从而引发过拟合问题。本文介绍一种改进方法——标签平滑(Label Smoothing),并通过PyTorch实现该技术。代码源自计算机视觉领域的经典论文《Rethinking the Inception Architecture for Computer Vision》,可有效提升模型的泛化能力。self.eps = eps if label_smooth else 0 # 平滑因子。

2025-05-17 09:31:20 1020

原创 Pytorch实现Transformer代码示例

使用正弦/余弦函数为输入序列添加位置信息。:包含两个线性层和ReLU激活。

2025-05-17 09:10:54 284

原创 目标检测中的IoU损失函数

IoU损失函数的演进体现了目标检测领域对几何关系建模IoU → GIoU:解决梯度消失问题;:引入距离惩罚,加速收敛;:细化长宽比优化,提升精度。讨论话题在您的实际项目中,哪种IoU损失效果最佳?对于旋转目标检测,如何改进IoU损失?

2025-05-14 00:15:52 465

原创 Focal Loss 原理详解及 PyTorch 代码实现

Focal Loss 是为解决类别不平衡问题设计的损失函数,通过引入 gamma 参数降低易分类样本的权重,使用 alpha 参数调节正负样本比例。在目标检测等类别不平衡场景中表现优异。"""应用 Focal Loss 通过 gamma 和 alpha 参数改进 BCEWithLogitsLoss 以处理类别不平衡"""self.loss_fcn = loss_fcn # 必须使用 nn.BCEWithLogitsLoss()self.gamma = gamma # 调节难易样本权重的指数参数。

2025-05-13 12:24:47 533

原创 深度可分离卷积:原理、计算优化

显著降低了计算成本和参数数量。然而,对其计算过程和公式的理解常存在误区,本文将通过修正错误并提供严格推导,阐明其核心原理。:正确理解深度卷积的维度与计算关系,是准确实现和优化模型的关键。原描述中因维度混淆导致的公式错误,可能误导读者对计算效率的评估,修正后更符合实际应用场景。深度可分离卷积(Depthwise Separable Convolution)是一种高效的卷积操作,通过将标准卷积拆解为两步操作——标准卷积的每个输出位置需对输入张量的。个元素进行乘加操作。每个通道独立计算,单通道计算量为。

2025-05-09 16:04:28 1122

原创 矩阵求导常用公式解析:标量、向量与矩阵的导数计算

矩阵求导是机器学习、优化理论中的重要数学工具。本文将系统推导标量对向量、向量对向量、标量对矩阵的求导公式,并解析分子布局与分母布局的核心差异。场景:计算 ∂z∂x\frac{\partial \mathbf{z}}{\partial \mathbf{x}}∂x∂z​,其中 z=Wx+b\mathbf{z} = \mathbf{W}\mathbf{x} + \mathbf{b}z=Wx+b分子布局:∂z∂x=W(维度 m×n)\frac{\partial \mathbf{z}}{\partial \mat

2025-05-03 04:04:36 1161

原创 Traefik应用:配置容器多个网络时无法访问问题

Traefik容器所在的网络也是traefik-public,而配置容器服务使用了两个网络,一个是default,另一个是traefik-public,导致部署后一直无法访问容器服务。

2025-04-09 23:59:37 498

原创 vscode调试同时启动多个程序示例

当使用vscode调试,需要启动多个程序时,可以配置同时启动多个程序。本文提供了配置示例,可供参考。

2025-04-08 17:37:49 316

原创 Gunicorn+Eventlet无法收到SocketIO发送的消息

遇到的emit消息无法发送到客户端的问题,可能由多种配置或兼容性问题导致。1. 确保正确安装依赖库问题原因:未安装eventlet导致 Flask-SocketIO 回退到同步模式,无法处理WebSocket请求。# 安装 eventlet pip install eventlet2. 检查 Gunicorn 启动命令问题原因:未指定eventlet作为 worker class,或 worker 数量过多(WebSocket 通常需单线程)。

2025-03-25 16:25:04 721

原创 WSL2 Ubuntu安装Cuda 11.8

根据指示完成安装。PATH:将 CUDA 的可执行文件路径添加到系统路径。:将 CUDA 的库文件路径添加到动态链接库路径。nvcc --version # 应输出 11.8 nvidia-smi # 查看驱动和 GPU 状态 /usr/local/cuda-11.8/extras/demo_suite/deviceQuery # 运行测试程序。

2025-03-15 23:38:13 907

原创 WSL2 Ubuntu安装GCC不同版本

在 WSL2 的中安装GCC 7.1需要手动操作,因为该版本较旧且 Ubuntu 24.04 的默认仓库已不再提供。

2025-03-15 22:45:13 1261

原创 windows查看端口占用情况并终结该进程

netstat。

2024-10-07 21:10:13 1363

原创 alembic常用命令

Alembic 是一个用于数据库迁移的工具,通常与 SQLAlchemy 一起使用。

2024-09-21 07:05:26 744

原创 Docker镜像中的源替换为国内源

使用Dockerfile构建Containers,通常国内网络更新安装包会有网络问题。本文以python:3.11.7-slim-bookworm镜像为例,实现替换镜像源。

2024-09-04 22:01:40 3337

原创 docker创建数据库容器并映射存储数据

使用Docker创建Redis容器并使用Volume映射存储数据是一个常见的操作。创建一个目录用于存储Redis数据首先,创建一个目录用于存储Redis的数据。例如,我们创建一个名为的目录。创建并运行Redis容器使用Docker命令创建并运行Redis容器,并将本地目录映射到容器内的数据目录。-v /mydata/redis/data:/data \ # 如果是使用docker volume 则改为 -v redis_data:/data-d:以 detached 模式运行容器(后台运行)。

2024-08-22 16:29:27 846 1

原创 fastapi+react实现第三方登录功能示例

实现使用第三方登录功能(例如 Google、GitHub、WeChat 等)通常涉及前后端的协同工作。以下是一个基本的实现方案,使用 FastAPI 作为后端,React 作为前端。后端:使用 FastAPI 处理 OAuth2 回调,获取用户信息,并将其与现有用户关联或创建新用户。同时,提供动态获取登录 URL 的接口。前端:使用 React 处理登录按钮和回调逻辑,从后端动态获取登录 URL,并将获取的存储在中,并在用户访问个人资料页面时使用该获取用户信息。

2024-08-21 17:23:22 1220 1

原创 Numpy数组高级索引

NumPy 切片和索引Numpy高级索引。

2024-08-19 10:51:53 298

原创 相机标定和图像配准

相机的内参和外参。

2024-08-13 15:46:39 1053

原创 PyTorch实现NMS算法

NMS 算法源码实现Python实现NMS(非极大值抑制)对边界框进行过滤。目标检测算法(主流的有 RCNN 系、YOLO 系、SSD 等)在进行目标检测任务时,可能对同一目标有多次预测得到不同的检测框,非极大值抑制(NMS) 算法则可以确保对每个对象只得到一个检测,简单来说就是“消除冗余检测”。

2024-06-20 19:31:03 751

原创 torch.topk用法

在指定维度选取k个最大(最小)的值。

2024-06-19 18:36:06 477

原创 Git使用笔记

在Git中,如果只想推送一个特定的提交(commit),而不是整个分支,可以使用以下步骤:首先,找到你想要推送的提交的哈希值。通过运行git log命令来查看提交历史,并找到你想要推送的提交的哈希值。假设需要推送的提交的哈希值是这里的是你想要推送到的分支名称。如果你想推送到当前分支,你可以省略部分。请这种方法适用于推送一个单独的提交,而不是一个完整的分支。如果想要推送一个完整的分支,应该使用。

2024-05-25 18:00:59 600 1

原创 【创建git仓库并关联github账户】

将文件夹创建为git仓库并与GitHub上的对应git地址关联:打开终端或命令提示符,并导航到你想要创建git仓库的文件夹。git init添加你的文件到暂存区:git add .提交你的文件到本地仓库:在GitHub上创建一个新的仓库。你可以在GitHub网站上点击"New repository"按钮来完成这个步骤。将替换为你在GitHub上创建的仓库的URL。最后,将你的本地仓库推送到GitHub:这将把你的本地仓库推送到GitHub上的远程仓库。

2024-04-15 02:05:39 450

原创 functools.wraps用法

在Python中,是一个装饰器,它的主要作用是将被装饰函数的一些属性值(如__name__、__doc__等)赋值给装饰器中的函数。这个功能主要用于在使用装饰器时保持函数的元数据。

2024-03-22 15:19:52 701

原创 functools.partial用法

partial 是 Python 的 functools 模块中的一个非常有用的函数,它用于固定函数的部分参数,并返回一个新的函数对象。这在某些场景下非常有用,尤其是当你需要多次调用一个函数并且其中一些参数保持不变时。

2024-03-22 15:06:26 538

原创 Python中的泛型:TypeVar

在Python的类型提示(type hints)中,TypeVar是用于定义类型变量的工具。类型变量在泛型编程中非常有用,它们允许你定义灵活的函数、类或方法,这些函数、类或方法可以在多种类型上操作,而不仅仅是特定的类型。TypeVar 允许你定义一个变量,该变量可以代表任何类型或一组类型。然后,你可以使用这个类型变量来定义函数或类的参数和返回类型。

2024-03-22 14:14:15 2538

原创 Delaunay三角剖分与Voronoi图生成

Delaunay三角剖分Delaunay三角剖分是一种用于二维和三维空间的特殊类型的三角剖分。给定一组在平面上的点,Delaunay三角剖分将这些点连接成三角形,使得在所有可能的三角形中,这些三角形的最小角最大,外接圆最小。创建一个超级三角形,包含所有的点。依次添加点到三角剖分中,对于每个添加的点:找到包含此点的三角形。删除此三角形,并创建三个新的三角形,新的三角形由旧的三角形的每条边和新添加的点组成。修复Delaunay条件。新加入的点可能会导致Delaunay条件不成立。

2024-02-19 13:05:33 1370

空空如也

空空如也

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

TA关注的人

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