自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(870)
  • 资源 (3)
  • 收藏
  • 关注

原创 PyTorch强化学习实战——基于策略梯度法解决Pong环境

策略梯度法在 CartPole 等简单环境中表现出色,但面对 Pong 这类 Atari 游戏时却面临严峻挑战。与深度Q网络 (Deep Q-Network, DQN) 仅需百万帧即可完美求解不同,原始策略梯度方法在 Pong 环境中难以收敛,且对超参数和初始化极其敏感。为提升性能,我们引入三项关键改进:采用移动平均基线以减少梯度方差、使用多并行环境降低样本相关性、以及通过梯度裁剪增强训练稳定性。

2026-07-23 11:35:16 572 30

原创 PyTorch强化学习实战(19)——策略梯度法

在本节中,介绍了另一种解决强化学习问题的方式:策略梯度方法,该方法与 DQN 方法在多方面存在显著差异。与基于价值的方法不同,策略梯度直接优化行为策略,适用于连续动作空间和随机环境。策略通常表示为动作的概率分布,通过最大化策略梯度来更新网络参数。REINFORCE 利用完整回合的折扣奖励计算损失函数,无需显式探索机制或经验回放。然而,该方法存在高梯度方差、需完整回合、样本相关性高等局限。改进方案包括引入基线减少方差、使用熵奖励促进探索、采用多步贝尔曼展开以及并行环境。

2026-07-20 11:40:44 627 34

原创 OpenCV-Python实战——分析与加速OpenCV应用程序

本节介绍了使用性能分析工具 pyinstrument 识别 OpenCV 应用程序瓶颈的方法,并以目标检测与跟踪中的 IoU 矩阵计算为例,展示了 Numba 的加速能力。通过 @numba.jit 装饰器优化循环和函数,CPU 下性能提升约 20 倍;进一步使用 @numba.guvectorize 实现向量化计算,速度提升达 1000 倍。最后简要介绍了基于 CUDA 的 GPU 加速方案,通过 @cuda.jit 将计算移植到 GPU,适用于深度神经网络等场景。

2026-07-16 08:50:59 478 49

原创 OpenCV-Python实战(33)——构建实时目标检测与跟踪系统

我们已经动手实践了深度卷积神经网络,并使用迁移学习构建了深度分类和定位网络。已经开启了深度学习之旅,并熟悉了一系列深度学习概念,理解了深度模型是如何训练的,并且已经准备好学习更高级的深度学习概念。在本节中,我们将继续深度学习之旅,首先使用目标检测模型在相关场景(例如包含汽车和行人的街景)的视频中检测多种不同类型的目标。之后,将学习这类模型是如何构建和训练的。

2026-07-13 09:17:45 1119 44

原创 PyTorch强化学习实战(18)——基于DQN处理股票交易问题

本节通过强化学习实战案例,完整实现了股票交易智能体及自定义 Gymnasium 环境。我们对比测试了两种神经网络架构:接收价格历史数据输入的前馈网络与一维卷积网络。两种架构均采用深度Q网络 (Deep Q-Network, DQN) 方法,并融合了若干 DQN 改进技术。

2026-07-09 09:16:56 599 35

原创 OpenCV-Python实战(32)——基于深度学习的物体分类与定位

在本节中,我们使用 Oxford-IIIT-Pet 数据集创建并训练了分类和定位模型。我们学习了如何使用迁移学习来创建深度学习分类器和定位器。我们已经开始理解如何使用深度学习来解决现实世界的问题,已经理解了 CNN 的工作原理,并且知道如何使用基础模型创建新的 CNN。我们还介绍了用于计算梯度的反向传播算法。理解该算法将使我们能够在构建自定义模型架构时做出更明智的决策。

2026-07-06 09:22:56 546 34

原创 OpenCV-Python实战(31)——实时面部情绪检测与识别系统

我们已经熟悉了目标检测和目标识别的概念。在本节中,我们将开发一个能同时完成这两项任务的应用程序。该应用能够在摄像头实时画面的每一帧中检测人物面部,识别面部情绪,并在图形用户界面 (Graphical User Interface, GUI) 上标注出来。本节的目标是开发一个应用,将人脸检测与人脸识别相结合,重点是对检测到的人脸进行情绪表达识别。读完本节后,我们将能够在自己的不同应用中使用人脸检测和人脸识别技术。

2026-07-02 10:33:47 742 20

原创 PyTorch强化学习实战(17)——强化学习训练加速

我们已经学习了若干提升[深度Q网络 (Deep Q-Network, DQN) 方法稳定性与收敛速度的实用技巧。这些技巧通过对经典 DQN 方法进行改良(例如向网络注入噪声或展开贝尔曼方程),以更短的训练时间获得更优策略。而本节我们将探索另一种加速路径:通过调整方法实现细节来提升训练效率。这虽属纯工程优化范畴,却因其实用价值而至关重要。

2026-07-02 10:22:26 111 25

原创 魔珐星云 SDK 实战:快速开发一个会共情的具身陪伴 Agent

本文探讨了如何利用魔珐星云SDK开发具身陪伴Agent,以解决纯文字AI在情绪陪伴场景中的温度缺失问题。文字交互缺乏非语言信号(如表情、姿态、语速),难以传递真正的陪伴感。实验基于魔珐星云端侧渲染SDK(响应≤500ms),结合Qwen3-VL模型实现双层情绪感知,并将情绪映射为数字人的姿态、语速和动作。核心实现包括情绪驱动的姿态切换、流式语音共情回复及正念呼吸引导。

2026-06-30 17:34:56 8731 6

原创 PyTorch计算机视觉(2)——神经网络模型训练与PyTorch基础

本节介绍了 PyTorch 框架的核心应用。通过线性回归案例,详细阐述了梯度下降算法的工作原理,包括损失函数、学习率、权重更新等关键概念。随后展示了 PyTorch 的自动梯度计算机制,以及 LambdaLR、ReduceLROnPlateau 等多种学习率调度器的使用方法。在工程实践方面,讲解了 Dataset 与 DataLoader 的数据封装、GPU 加速训练、三种模型保存方式。最后以 Sigmoid 激活函数拟合指数曲线为例,说明了非线性建模的必要性。

2026-06-29 08:52:06 560 21

原创 PyTorch深度学习实战(61)——使用Optuna搜索最优超参数

自动机器学习 (AutoML) 能够为给定神经网络自动寻找最优架构与最佳超参数配置。在本节中,我们介绍了一个 AutoML 工具 Optuna,它专为 PyTorch 模型提供超参数搜索功能。通过本节的学习,可以运用 Optuna 为任何 PyTorch 编写的神经网络模型寻找最优超参数。当面对超大规模模型和/或需要调整的超参数数量极多时,Optuna 还支持分布式搜索。值得注意的是,Optuna 不仅支持 PyTorch,还兼容 TensorFlow、scikit-learn 等主流机器学习框架。

2026-06-29 08:31:47 1123 37

原创 PyTorch强化学习实战——整合DQN改进算法

本文总结了 Rainbow DQN 中七项改进技术的整合与验证。在实现 Dueling DQN、Noisy Networks、优先经验回放及N步贝尔曼展开的基础上,实验表明组合系统在 100 局内即可从负收益跃升至正收益,平滑奖励达 +18,显著优于经典DQN。

2026-06-28 15:23:55 199 1

原创 PyTorch强化学习实战(16)——Categorical DQN

分布强化学习通过建模完整的回报分布,突破了传统算法仅关注期望价值的局限。本节详细阐述了 Categorical DQN 核心原理:将价值分布表示为固定区间内的离散原子,通过投影操作实现贝尔曼算子的分布版本,并采用 KL 散度作为损失函数。实现上,网络输出每个动作对应原子的概率分布,通过 distr_projection 函数完成分布投影。

2026-06-25 09:45:46 697 19

原创 视觉Transformer实战 | Pyramid Vision Transformer(PVT)详解与实现

Pyramid Vision Transformer (PVT) 通过引入金字塔结构和空间缩减注意力机制,解决了Vision Transformer (ViT) 的单尺度低分辨率输出和计算开销大问题,成为首个专为密集预测任务设计的纯 Transformer 骨干网络。本节将深入解析 PVT 技术原理,并使用 PyTorch 从零开始实现 PVT 模型。

2026-06-25 09:05:11 823 22

原创 OpenCV-Python实战(30)——基于支持向量机的交通标志识别模型

在本节中,我们训练了一个多类分类器来识别 GTSRB 数据库中的交通标志。我们讨论了监督学习的基础知识,探索了特征提取的复杂性,并初步了解了神经网络。通过本节的方法,我们应该能够将实际问题表述为机器学习模型,利用 Python 技能下载带标签的样本数据集,编写将图像转换为特征向量的特征化函数,并使用 OpenCV 训练现成的机器学习模型,从而解决实际问题。

2026-06-22 08:39:47 939 32

原创 PyTorch强化学习实战(15)——Dueling DQN

本文介绍了 Dueling DQN 的核心思想——将Q网络分解为状态价值流和动作优势流,通过显式建模两者关系提升学习效率。从经典 DQN 的局限性出发,详细解析了 Dueling Network 的架构设计、数学原理及实现细节,并通过减去优势均值的技巧确保网络正确学习。实验结果表明,该架构相比经典 DQN 具有更快的收敛速度,且优势值稳定在零均值附近,验证了设计的有效性。

2026-06-22 08:27:29 425 16

原创 OpenCV-Python实战(29)——基于视觉显著性的自动多目标跟踪系统

本节我们探索了一种标记视觉场景中潜在有趣物体的方法,即使这些物体的形状和数量都是未知的。我们利用傅里叶分析研究了自然图像统计特性,并实现了一种提取自然场景中视觉显著区域的方法。此外,我们将显著性检测器的输出与跟踪算法相结合,在一个足球比赛视频序列中跟踪了多个形状和数量未知的物体。我们还介绍了 OpenCV 中其他更复杂的跟踪算法,可以用它们替代应用程序中的均值漂移跟踪,甚至创建自己的应用程序。当然,也可以用之前学过的技术(如特征匹配或光流法)来替换均值漂移跟踪器。

2026-06-19 08:45:00 429 10

原创 PyTorch计算机视觉(1)——计算机视觉的数学工具

本节介绍了计算机视觉中的关键数学工具,包括概率分布(二项分布、高斯分布)、香农熵、KL 散度、交叉熵和 Jensen 不等式。通过贝叶斯定理和最大似然估计,可推导出模型训练的损失函数,如交叉熵和均方误差。文中还讨论了过拟合问题及其缓解方法(如岭回归),并通过期望最大化算法演示了如何从数据中估计概率密度函数。这些概念为图像生成、分类等计算机视觉任务提供了理论基础。

2026-06-19 07:45:00 368 12

原创 PyTorch深度学习实战(60)——PyTorch自动机器学习

在本节中,我们探讨了 AutoML 技术,其核心目标是提供模型选择与超参数优化的自动化方法。对于缺乏经验的初学者,AutoML 能帮助解决"模型应包含多少层"、"选择哪种优化器"等决策难题;对于经验丰富的研究人员,它既能加速模型训练流程,又能发现那些通过人工调参几乎不可能获得的最优模型架构。

2026-06-18 10:14:52 508 50

原创 PyTorch深度学习实战(59)——使用PyTorch Profiler分析模型推理性能

本节介绍了使用 PyTorch Profiler 工具分析 MNIST 手写数字识别模型在 CPU 与 GPU 上的推理性能。通过记录操作执行时间与内存消耗,可识别计算瓶颈和内存问题。通过本节学习,能够掌握在模型推理过程中进行性能分析的方法,从而能更准确地评估模型在 CPU 和 GPU 上的运行表现。

2026-06-18 09:58:54 326 24

原创 PyTorch强化学习实战(14)——优先经验回放机制

本节深入介绍了优先经验回放机制,它通过根据样本损失值分配优先级,打破了经典 DQN 的均匀采样策略,从而提升训练效率与策略质量。详细阐述了优先级的计算公式、采样与权重补偿机制,并给出了具体代码实现,包括缓冲区设计、损失函数修改及超参数 β 的调度策略。实验结果显示,该方法在减少训练迭代次数的同时,能够获得更低的损失值。

2026-06-16 09:08:31 826 60

原创 Ubuntu极速部署OpenClaw完全指南(本地模型+DeepSeek)

OpenClaw 给是一个开源、可自托管的 AI 助手平台,原生支持 Ollama 本地模型和 DeepSeek 等云端 API,让你在隐私与性能之间自由切换。本文记录了我在 Ubuntu 上从零部署 OpenClaw 的全过程——踩过的坑、优化后的配置,一并进行分享。无论你是想搭建一个完全离线的私人助手,还是追求顶级大模型的推理能力,这篇指南都能帮你少走弯路,快速用起来。

2026-06-16 09:00:07 667 26

原创 OpenCV-Python实战(28)——OpenCV计算摄影从HDR图像融合到全景拼接

本节的目标是在摄影和图像处理的基础上,深入探讨 OpenCV 提供的一些算法。我们将专注于数字摄影处理,并构建能够充分利用 OpenCV 功能的工具,将其作为编辑照片的工具。学习数字摄影的基础知识和高动态成像的概念,不仅能更好地理解计算摄影,还能成为更优秀的摄影师。通过本节,将学习如何直接使用数码相机处理 RAW 格式图像,如何使用 OpenCV 的计算摄影工具以及如何使用低级 OpenCV API 来构建全景拼接算法。

2026-06-13 16:23:43 1209 62

原创 PyTorch强化学习实战(13)——噪声网络(NoisyNet-DQN)

噪声网络 (NoisyNet) 通过在神经网络权重中注入可学习的参数化噪声,实现状态依赖且时间上一致的探索,克服了传统 ε-greedy 等策略在稀疏奖励环境中效率低下的问题。该方法的权重由可训练均值 μ 和标准差 σ 加上随机噪声 ε 构成,噪声可采用独立高斯或分解高斯方式,后者通过外积计算降低计算复杂度。在 PyTorch 中可通过自定义 NoisyLinear 层实现,替换 DQN 最后两层线性层并移除 ε-greedy 即可。

2026-06-13 16:12:54 500 34

原创 视觉Transformer实战 | Twins空间注意力机制详解与实现

视觉任务里,标准全局自注意力在高分辨率输入上代价太高;纯局部窗口注意力虽然更省算力,但跨窗口信息不足,对检测、分割这类密集预测任务并不友好。Twins 因此提出了两条路线:Twins-PCPVT 和 Twins-SVT,前者重点改位置编码,后者重点改空间注意力设计。本文将详细介绍 Twins 网络的技术原理,并提供完整的 PyTorch 实现。

2026-06-11 08:56:49 536 36

原创 OpenCV-Python实战(27)——基于对极几何的3D场景重建

在本节中,我们探索了一种通过推断同一相机拍摄的 2D 图像的几何特征来重建 3D 场景的方法。我们编写了一个标定相机的脚本,并学习了基础矩阵和本质矩阵。我们利用这些知识进行了三角测量。然后,我们使用 Matplotlib 中的简单 3D 散点图,将场景的真实世界几何结构可视化为 3D 点云。我们可以将三角化后的 3D 点存储到文件中,供点云库解析,或者对不同图像对重复该过程,以生成更稠密、更准确的重建。

2026-06-11 08:48:57 772 52

原创 OpenCV-Python实战(26)——复杂场景下的实时物体检测与跟踪

本节介绍了一种鲁棒的特征跟踪方法,该方法速度足够快,能够实时应用于网络摄像头的视频流。首先,算法展示了如何在一幅图像中提取和检测重要特征——无论是我们感兴趣的模板图像(训练图像),还是预期包含该物体的更复杂场景(查询图像),这些特征都具有视角和尺寸不变性。然后对关键点进行聚类,找到两幅图像中特征点之间的匹配。在此基础上,可以计算出一个将一组特征点映射到另一组的透视变换矩阵。利用这些信息,我们可以在查询图像中勾勒出训练图像的轮廓,并对查询图像进行透视变换,使感兴趣的物体以直立状态显示在屏幕中央。

2026-06-08 09:00:00 710 58

原创 PyTorch强化学习实战(12)——Double DQN(DDQN)

本文系统介绍了 Double DQN (DDQN) 对经典 DQN 的改进。DDQN 旨在解决 DQN 高估动作价值的缺陷。其核心改进在于将动作选择与价值评估解耦:使用主网络选择下一状态的最优动作,再用目标网络评估该动作的Q值,从而消除正向偏差。实验结果显示,DDQN 的价值估计更稳定,未出现明显高估。

2026-06-08 08:30:00 811 33

原创 PyTorch深度学习实战(58)——基于PyTorch Lightning的跨硬件模型训练

在本节中,我们重点介绍了如何从模型训练代码中抽象出冗余的实现细节,以及如何构建快速模型原型开发的核心组件。鉴于 PyTorch 代码常常包含大量此类冗余细节,我们研究了基于 PyTorch 构建的高级库 PyTorch Lightning,该库能用少量代码实现模型训练,并使代码具备硬件无关性。此外,我们还实践了如何使用 PyTorch Lightning 训练和评估手写数字分类模型。

2026-06-05 09:38:14 574 36

原创 PyTorch深度学习实战(57)——使用fastai进行快速原型开发

在本节中,我们对 fastai 进行了简要介绍并将其用于训练 MNIST 手写数字识别模型。fastai 为机器学习工程师和研究人员提供了丰富功能,本节旨在展示 fastai 的高效性和易用性,所学内容可迁移至其他 fastai 机器学习任务。本质上 fastai 基于 PyTorch 功能构建,因此这两个框架可以随时切换使用。

2026-06-05 09:06:12 458 50

原创 OpenCV-Python实战(25)——基于深度传感器与凸性分析打造实时手势识别系统

本节介绍了一个基于深度传感器(如 Kinect )的实时手势识别应用程序。该应用通过分析深度图实现手部区域分割(阈值分割、形态学操作、连通分量分析)、手部形状分析(轮廓、凸包、凸性缺陷检测),并根据凸性缺陷夹角识别伸展手指数量,从而实现手势分类(如拳头或张开的手)。该算法简单高效,能在普通笔记本上实时运行,且易于扩展。

2026-06-04 08:38:12 349 42

原创 PyTorch强化学习实战(11)——N步DQN(N-step DQN)

本节介绍了N步 DQN,一种通过扩展贝尔曼方程更新步骤来加速深度Q网络 (Deep Q-Network, DQN) 收敛与提升稳定性的方法。N 步更新通过考虑未来多步奖励来加速价值传播,相比单步 DQN 能更快收敛。但展开步数 n 需谨慎选择,因为过大的 n 会引入偏差,并使 DQN 倾向于同策略学习,削弱经验回放缓冲区的优势。

2026-06-04 08:32:48 601 27

原创 PyTorch深度学习实战(56)——在iOS上构建PyTorch应用

在本节中,我们详细介绍了将 PyTorch Mobile 优化的 MNIST 手写数字识别模型部署到 iOS 平台的过程。通过配置 Xcode 开发环境,集成 LibTorch-Lite 库,并利用 Swift 编写摄像头图像采集和处理模块,实现了对手写数字图像的实时拍摄和识别。应用成功将拍摄图像预处理为模型输入格式,执行推理并显示识别结果,验证了移动端模型在 iOS 设备上的有效部署和准确识别能力。

2026-06-01 08:45:57 1383 37

原创 视觉Transformer实战 | 将卷积引入视觉Transformer(CvT)

CvT 是一种融合卷积神经网络与 Vision Transformer 优势的视觉模型,旨在解决 ViT 缺乏平移不变性和局部性等归纳偏置的问题。CvT 采用分层结构逐级降采样,使用卷积词元嵌入代替传统 patch 切分,引入卷积投影替代线性投影。这些设计使得 CvT 能够去除位置编码,在高分辨率输入下表现更优。本节深入解析 CvT 的核心原理,并提供完整的 PyTorch 代码实现,演示如何在实际数据集上训练和评估 CvT 模型。

2026-06-01 08:31:40 685 48

原创 PyTorch深度学习实战(55)——在Android上部署PyTorch模型

在本节中,我们首先介绍了 PyTorch Mobile 及其功能——如何将基于追踪的 PyTorch 模型文件转换为可在移动设备上运行的优化模型对象。接着,我们逐步构建了一个 Android 应用,利用 PyTorch Mobile 加载预训练的 MNIST 模型,对手机摄像头拍摄的手写数字图像进行分类。

2026-05-29 17:25:34 1279 38

原创 PyTorch深度学习实战(54)——使用TorchScript和ONNX导出通用PyTorch模型

在本节中,我们将深入探讨使用 TorchScript 导出 PyTorch 模型。通过序列化,TorchScript 使模型与 Python 生态系统独立,从而使得模型可以在其他环境中加载,例如基于 C++ 的环境。我们还跨越 Torch 框架与 Python 生态的边界,研究机器学习通用开放格式 ONNX,该技术能帮助我们将 PyTorch 训练的模型导出至非 PyTorch 甚至非 Python 环境。

2026-05-29 16:39:03 568 52

原创 OpenCV-Python实战(24)——打造实时图像滤镜系统

在本节中,我们探索了一系列有趣的图像处理特效。我们利用减淡和加深技术创建了黑白铅笔素描效果,探索了查找表以实现高效的曲线滤镜,并发挥创意制作了卡通效果。其中使用的一项技术是二维卷积,它接收一个滤波器和一张图像,然后生成一张新图像。

2026-05-27 11:28:09 961 62

原创 PyTorch强化学习实战——使用高级组件复现DQN

本节,我们将使用在《强化学习高级组件》一节介绍的高级组件复现[经典深度Q网络 Deep Q-Network, DQN) 方法。这将大幅精简代码,使核心逻辑更加突出。

2026-05-27 11:02:16 563 24

原创 PyTorch强化学习实战(10)——强化学习高级组件

我们已经学习了如何实现深度Q网络 (Deep Q-Network, DQN) 模型,证明了非线性近似器完全可用于强化学习,这一概念验证极大地推动了深度Q学习乃至整个深度强化学习领域的研究热潮。在本节中,我们将重点探讨如何定义强化学习高级组件,使用更高级的模块构建代码,并聚焦于所实现方法的核心细节,避免反复实现相同的逻辑,避免重复造轮子的低效劳动。

2026-05-24 09:45:00 1055 34

原创 PyTorch深度学习实战(53)——使用TorchServe部署PyTorch模型

在 PyTorch 深度学习模型部署一节,我们学习了如何使用 Flask 库创建可远程部署、通过网络提供预测服务的模型服务器。在本节中,我们将继续讨论使用 TorchServe 将一个已经训练并测试过的 PyTorch 深度学习模型对象部署到一个独立的环境中,使其能够对新输入数据进行预测或推理。这也称为模型的生产化,即将模型部署到生产系统中。

2026-05-24 01:49:48 487 50

用于目标检测的 YOLO V3 模型架构及权重文件(含 OpenCV 使用示例)

用于目标检测的 YOLO V3 模型架构及权重文件,用于执行目标检测推理阶段,可用于构建 OpenCV 目标检测计算机视觉项目,包含 OpenCV 使用示例。

2021-09-30

用于图像分类的 ResNet-50 模型架构及权重文件(使用 Caffe 框架进行预训练)

用于图像分类的 ResNet-50 模型架构及权重文件,使用 Caffe 进行预训练模型执行图像分类,可用于 OpenCV 图像分类计算机视觉项目,包含使用示例。

2021-09-30

用于目标检测的 MobileNet-SSD 模型架构及权重文件(使用 Caffe 框架进行预训练)

用于目标检测的 MobileNet-SSD 模型架构及权重文件,使用 Caffe 进行预训练模型执行目标检测,可用于 OpenCV 目标检测计算机视觉项目,包含使用示例。

2021-09-30

空空如也

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

TA关注的人

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