- 博客(76)
- 收藏
- 关注
原创 CrossEntropy with Label Smoothing
对于真实类别cccyismooth1−εificεK−1ifi≠cyismooth1−εK−1εificificεε是一个很小的平滑因子,常取0.10.10.1;KKK是类别总数。例如:若原标签为,加了标签平滑(ε0.1ε0.10.0250.0250.90.0250.0250.0250.0250.90.0250.025。
2025-08-08 11:09:05
909
原创 解决PyTorch多进程CUDA初始化报错
在 Linux 中,Python 的默认多进程启动方式是 fork,它的行为是:在启动子进程时,直接复制父进程的内存空间(几乎零成本)。CUDA 上下文(context)不能被安全地复制到子进程。所以当子进程第一次调用或初始化 CUDA 时,就会出问题。建议原因✅ 使用'spawn'方式避免 fork 与 CUDA 冲突,是官方推荐方式✅ 将放在主进程中简单直接,但功能受限❌ 不要在 Dataset 中初始化 GPU 运算容易导致不可预知的错误。
2025-08-05 13:09:25
1584
原创 MTL-NAS
该工作提出在固定的单任务网络上,通过搜索跨任务的特征融合连接,构建一个任务无关的多任务结构搜索空间,并用单次梯度优化 + 最小熵正则化方法,直接搜索出一个可以用来评估的模型,无需再训练。类别内容🎯 目标用 NAS 自动搜索多任务学习结构🧱 架构单任务主干 + 层级特征融合结构🔍 搜索空间融合连接组成的任务无关空间🧠 搜索算法单次梯度优化 + 最小熵正则化🧪 性能超越已有方法,泛化能力强🔧 实用性结构一旦搜索出即可直接评估。
2025-06-21 16:30:31
955
原创 PyTorch 分布式训练
分布式训练是指将模型训练过程划分到多个计算设备(通常是多个 GPU,甚至是多台机器)上进行协同处理,目标是加速训练速度和扩展模型容量。数据并行(Data Parallelism):每个 GPU 处理不同的数据子集,同步梯度。模型并行(Model Parallelism):将模型拆成多个部分,分别部署到不同的 GPU。混合并行(Hybrid Parallelism):结合模型并行和数据并行。流水线并行(Pipeline Parallelism):按层切分模型,不同 GPU 处理不同阶段。变量名。
2025-05-13 09:14:03
1040
原创 基于Python的DeepSeek API图形界面开发
在人工智能技术广泛应用的今天,如何将强大的API能力与用户友好的界面结合,成为开发者关注的重点。本文将以DeepSeek API为例,详解如何通过Python构建兼具功能性与美观度的GUI应用程序。
2025-04-27 12:28:21
483
原创 深度解析 PointNet:点云深度学习的开山之作
特性描述无序输入处理使用对称函数结构(max pooling)解决输入顺序问题几何变换不变T-Net 实现空间对齐,并有正则稳定优化局部全局融合特征拼接机制支持语义分割等复杂任务理论基础提供置换不变函数的逼近证明PointNet 是一个结构极其优雅、理论充分、实验扎实的 3D 点云深度学习模型,具有里程碑意义。
2025-04-20 17:36:18
1530
原创 pycocotools 安装失败问题
在安装时失败,主要问题出现在编译过程中,提示需要 Microsoft Visual C++ 14.0 或更高版本。这是因为包含需要 Cython 编译的 C 扩展,并且没有合适的 C++ 编译器。
2025-04-11 10:38:00
499
原创 VC 维度理论
VC 维度理论(Vapnik-Chervonenkis Theory)是统计学习理论(Statistical Learning Theory,SLT)的核心部分,由 Vladimir Vapnik 和 Alexey Chervonenkis 提出。在机器学习中,我们希望训练一个模型,使其在测试集上的误差尽可能低。,并解释模型在训练数据和测试数据上的误差关系,从而指导模型选择和容量控制。,但它们仍然能泛化,这似乎与 VC 理论的结论相矛盾。在统计学习理论中,我们优化的目标是。VC 维度的核心是衡量模型能够。
2025-03-18 19:04:59
1570
1
原创 Kullback-Leibler (KL) 散度详解
因此它不能作为严格意义上的“距离度量”(不像欧几里得距离或 Hellinger 距离)。的方法,常用于信息论、统计学和机器学习领域。Rényi 散度是 KL 散度的一个广义版本,可调节散度计算的敏感性。Kullback-Leibler (KL) 散度是一种。是常数,因此最小化交叉熵就等价于最小化 KL 散度。之间差距越大,则 KL 散度也会越大。在贝叶斯深度学习中,我们通常用。在强化学习中,KL 散度用于。JS 散度是 KL 散度的。在 KD 中,我们让一个。KL 散度并不对称,即。
2025-03-18 10:47:45
2175
原创 Grad-CAM
Grad-CAM(Gradient-weighted Class Activation Mapping)是一种。(如 ResNet、VGG、EfficientNet)。(class-specific)的,它可以告诉我们。假设我们有一个 CNN 对输入图像。,只需计算梯度即可获得热力图。,帮助我们理解 CNN。进行分类,并输出预测。,能够帮助理解模型决策。Grad-CAM 是。是由哪些区域决定的。
2025-03-18 10:04:35
1181
原创 知识蒸馏(Knowledge Distillation)
知识蒸馏(Knowledge Distillation, KD)是一种模型压缩技术,它通过训练一个小模型(学生模型, Student)来模仿一个大模型(教师模型, Teacher)的行为,从而提升小模型的性能。本文将详细介绍 KD 的基本原理、核心方法以及不同的 KD 变体。在 CV、NLP、语音等多个领域,KD 都展现出了强大的能力,并成为模型部署优化的关键技术之一。知识蒸馏(KD)是一种强大的模型压缩和加速技术,它通过让小模型(学生模型)学习大模型(教师模型)的知识,从而提升学生模型的性能。
2025-03-18 09:18:23
835
原创 免训练指标(Zero-Cost Proxies)
传统 NAS 需要训练候选架构来评估其性能,但训练消耗巨大,因此免训练指标提供了一种。计算某些统计量(如梯度、参数重要性、激活值分布),从而。:如果一个模型可以很好地模仿教师模型的特征分布(即。,而不需要完整训练整个模型。等信息来评估模型的质量。),则这个模型的质量更好。这些方法通常通过计算。
2025-03-17 18:35:52
667
原创 Multiobjective Evolutionary Algorithm Based on Decomposition
MOEA/D(Multiobjective Evolutionary Algorithm Based on Decomposition,基于分解的多目标进化算法)是一种多目标优化算法,由 Zhang 和 Li 于 2007 年提出。相较于 NSGA-II 这种基于 Pareto 支配排序的方法,MOEA/D 直接优化多个标量化的子问题,使得。在多目标优化问题(MOP)中,我们通常希望优化多个相互冲突的目标。MOEA/D 通过分解策略直接优化子问题,MOEA/D 的实现可以使用。
2025-02-26 15:24:51
1259
原创 NSGA-II:快速非支配排序遗传算法
在多目标优化(Multi-Objective Optimization, MOO)中,我们通常希望同时优化多个相互冲突的目标,而不是简单地找到一个最优解。NSGA-II(Non-dominated Sorting Genetic Algorithm II,快速非支配排序遗传算法 II)是一种,广泛应用于工程、金融、人工智能等领域。
2025-02-26 15:16:39
3159
原创 Conditional Neural Processes (CNPs) vs Gaussian Processes (GPs)
GPs 是一种随机过程,其中任意有限个变量的联合分布都是多元高斯分布。给定输入数据Xx1x2xnXx1x2...xn,对应的函数值Yy1y2ynYy1y2...ynY∼GPmXkXX′Y∼GPmXkXX′))均值函数mXm(X)mX:定义了 GP 的中心趋势,通常设为零均值。协方差函数kXX′k(X, X')kXX′。
2025-02-25 19:48:02
1024
原创 Fine-Tuning
这种方法能显著减少训练时间,并提高模型在小数据集上的表现,是**迁移学习(Transfer Learning)**的重要组成部分。在 NLP 任务(如情感分析、文本分类、翻译)中,通常使用。(如 GPT、BERT、ResNet),只在特定任务上进行。Fine-Tuning 时,若全部参数都更新,可能会导致。而 Fine-Tuning 可以直接使用。在图像分类、目标检测等任务中,可以使用。(Pretrained Model)上。进行 Fine-Tuning。,然后在新数据集上微调。
2025-02-10 11:10:39
871
原创 汉明码原理
错误位置对应的校验位组合(即校验位的编号)就是发生错误的比特位置。例如,若校验位计算结果为。对于给定的数据位,通过特定的规则插入校验位,使得编码后的数据具有一个特殊的结构,这样接收方就可以通过校验位来检测并定位出发生错误的位置,从而纠正错误。其基本思想是通过增加适量的冗余比特,使得接收到的编码信息能够在发生错误时通过检查校验位来发现错误并进行纠正。每一个校验位的值是根据数据位和其他校验位的组合来确定的。该不等式的含义是:为了保证足够的校验位数,校验位的数量必须满足这个条件,以便能够标识所有可能的错误位置。
2025-01-13 09:35:32
1707
原创 蒙特卡洛树搜索
蒙特卡洛树搜索(MCTS)是一种基于蒙特卡洛模拟的决策算法,广泛应用于游戏、规划和控制问题中。MCTS的基本思想是通过随机采样(蒙特卡洛模拟)来逼近最优解,并且不依赖于复杂的领域知识。MCTS通过构建一个树形结构来表示状态空间,其中每个节点表示一个状态。通过四个步骤(选择、扩展、模拟和更新)来逐步探索可能的决策空间,并逐渐收敛到最优解。通过MCTS和UCT,我们能够在一个复杂的决策树中进行有效的搜索,平衡探索与利用,并逐渐找到最优的解决方案。
2025-01-11 17:10:00
1817
原创 Kendall’s tau (KT)指标
是一种用于测量两个变量之间排序一致性的统计指标,广泛用于评估排名之间的相关性。在NAS-GAN和其他神经架构搜索领域中,Kendall’s tau 通常用于评估候选架构的性能排序在不同阶段(例如,搜索阶段和训练完成后)的一致性。Kendall’s tau 衡量两个排名之间的相关性,其核心思想是比较所有可能的排名对(pairwise)是否一致。
2025-01-09 09:48:14
1662
原创 Inception网络
Inception网络是深度学习中的一种卷积神经网络架构,由Google团队提出,首次出现在2014年的论文"这种网络以其创新性的模块化设计(称为Inception模块)而闻名,能够有效提高网络性能并减少计算量。Inception网络的设计目标是提高网络深度和宽度的同时,控制计算复杂度。为此,它采用了一种称为。Inception网络经历了多个版本的改进,每个版本都在计算效率和模型性能之间寻找平衡。
2025-01-09 09:39:20
1143
原创 FID和IS详解
(Inception Score)是评价生成对抗网络(GAN)生成图像质量的两种常用指标。以下是它们的详细介绍,包括优点和局限性。FID 是一种基于分布差异的评价指标,用于量化生成图像与真实图像之间的差异。IS 通过评估生成图像的多样性和生成质量,量化生成模型的性能。(Fréchet Inception Distance)和。:真实图像特征的均值和协方差矩阵。:生成图像特征的均值和协方差矩阵。:生成图像整体的类别分布,即。:KL散度,用于衡量。
2025-01-09 09:30:49
2731
原创 多面体与单纯形
单纯形是一个特殊的多面体,因为它的几何结构完全由线性不等式(非负性约束)和线性等式(凸组合约束)描述。这证明单纯形是多面体的一种。我们需要证明单纯形符合多面体的定义,即可以用有限个线性不等式和等式来描述。在凸优化中,多面体定义为由有限个线性不等式和等式描述的凸集合。这些点称为单纯形的顶点。因此,单纯形满足多面体的定义。单纯形是一个特殊的多面体,是由。
2025-01-03 11:04:59
992
原创 对数障碍函数
在优化问题中,处理带约束条件的优化问题是一项常见但复杂的任务。为了更有效地解决此类问题,障碍函数(Barrier Function)被提出,其中对数障碍(Logarithmic Barrier)是最经典的一种方法。本文将详细阐述障碍函数的基本原理,对数障碍的核心思想,并通过具体实例说明其应用。通过学习其原理和实践,我们可以更好地理解优化问题中的约束处理技巧,并将其应用于机器学习、运筹学等领域。对数障碍方法通过将不等式约束融入目标函数,巧妙地将约束优化问题转化为无约束优化问题。是权重参数,称为障碍参数。
2025-01-02 13:14:22
1325
原创 Newton 方法
条件数较大(即矩阵特征值分布不均匀),Newton 方法的收敛性可能会受到影响,需要引入改进方法(如信赖域法或正则化 Newton 方法)。Newton 方法是一种高效的数值优化方法,通常用于求解无约束优化问题。其基本思想是利用目标函数的二次近似来寻找最优解。本质是利用二次近似快速逼近最优解,适用于二次收敛场景,但计算复杂度较高。针对高维问题或非凸问题,通常采用改进方法。是连续可微且二次可微的凸函数,Newton 方法通过构造。这就是 Newton 方法的更新公式。Newton 方法假设在当前点。
2025-01-02 11:22:46
929
原创 单纯形法Simplex Method
单纯形法是一种高效的线性规划求解方法,虽然在理论上存在指数级复杂度,但在实际应用中表现非常优异。它通过沿凸多面体边界移动找到最优解,是解决小规模线性规划问题的经典算法。它是一种迭代方法,旨在通过从一个可行解移动到另一个可行解来找到目标函数的最优值。单纯形法在几何上相当于在多面体的顶点之间沿边移动,每次选择目标函数值最大的方向,直到找到最优解。的几何性质来求解线性规划问题。线性规划的约束形成了一个凸可行域,其顶点(角点)是可能的解。选择一个初始的可行解(通常是基本可行解,包含松弛变量)。
2024-12-28 20:46:27
1745
原创 Hessian 矩阵与函数的凸性
Hessian 矩阵是一个方形矩阵,用来描述多元函数的二阶偏导数信息。求偏导,构造二阶偏导数矩阵(即 Hessian 矩阵)。Hessian 矩阵是一个对称矩阵(因为二阶偏导数。Hessian 矩阵在一维情况下就是。是一个二次连续可导的函数。
2024-12-28 16:34:46
1327
原创 Slater 条件与 KKT 条件
KKT 条件是非线性优化问题中的必要最优性条件,尤其在凸优化问题中具有极为重要的作用。KKT 条件的核心思想是:通过引入拉格朗日乘子,将优化问题的约束融入目标函数,形成新的目标进行优化。如果 Slater 条件不成立,例如某个约束函数无法严格小于 0,则可能会导致 KKT 条件无法直接判断问题的最优解。在凸优化中,如果 Slater 条件成立,那么无需额外假设,KKT 条件即可用于判断最优解。Slater 条件是凸优化中一种重要的正则性条件,它保证了 KKT 条件的成立。为不等式约束对应的拉格朗日乘子,
2024-12-28 15:29:41
2881
1
原创 AR 模型的功率谱
功率谱密度(Power Spectral Density, PSD)的表达式是从推导出来的,特别是对于 AR(Auto-Regressive,自回归)模型。
2024-12-25 15:31:13
1703
原创 深入解析ENAS中的共享权重机制
尽管ENAS的共享权重机制解决了传统NAS中的时间开销问题,但也引入了一些新的挑战,例如共享权重可能对某些特定子模型评估不准确。ENAS提出了共享权重的概念:在庞大的搜索空间中,所有候选子模型(子网络)共享一个超级网络(Supernet)的参数。通过ENAS的探索,NAS算法的高效性得到了巨大的提升,也为神经网络搜索在实际应用中的落地提供了可能性。ENAS通过共享权重机制,实现了在庞大搜索空间中的高效搜索,显著降低了计算成本。共享权重的损失直接来源于采样的子模型在训练集上的性能。通过策略梯度方法优化。
2024-12-18 21:22:47
960
原创 Polyak 平均
Polyak 平均是一种用于优化器过程中的技术,旨在平滑和稳定模型的参数估计。简单来说,Polyak 平均通过对模型参数进行一定的指数加权移动平均(Exponential Moving Average, EMA),从而减小梯度下降过程中的波动,提高最终模型的性能和泛化能力。Polyak 平均常用于神经网络优化中,以缓解由于随机梯度下降(SGD)引起的噪声,以及帮助模型更好地泛化。假设模型参数的更新过程为θt\theta_tθt,其中ttt表示时间步或迭代次数。θˉtαθt1。
2024-12-07 17:23:30
1921
原创 NAS-FCOS论文总结
Ra−∑xY∈DvLclsxY∣aLregxY∣aLctrxY∣aRa−xY∈Dv∑LclsxY∣aLregxY∣aLctrxY∣aLclsLcls:分类损失。LregLreg:边界框回归损失。LctrLctr:中心度损失。FPN 搜索空间关键点基于多个“基本块”bbf_i,组合成最优路径。候选操作包括标准卷积、可分离卷积、可变形卷积等。
2024-12-07 17:11:37
1275
原创 YOLO的框架及版本迭代
YOLO的核心思想是一次看全图,将目标检测作为回归问题进行端到端学习。它具有高效、实时的特点,并且通过不同版本的改进,在速度和精度之间取得了良好的平衡。
2024-11-27 19:31:55
2285
原创 SAEA:代理辅助进化算法
SAEA 算法通过将代理模型与进化算法相结合,在计算代价高昂的优化问题中提供了一种高效的解决方案。通过灵活选择代理模型、动态调整探索与利用的策略,SAEA 不仅提升了优化效率,还拓展了进化算法的应用范围。未来,随着计算机硬件的进步和代理模型算法的优化,SAEA 在复杂多目标优化中的应用前景将更加广阔。
2024-11-22 15:16:26
2707
3
原创 isinstance 函数
是一个功能强大的工具,可以帮助我们编写更健壮的代码,但也需要谨慎使用。合理应用它可以提升代码的可读性和可维护性,而过度依赖可能会限制代码的灵活性。,从而违反了鸭子类型的原则。在 Python 中,更多时候我们应该依赖对象的行为,而非其具体类型。是 Python 的内置函数,用于检查一个对象是否是指定类或类型的实例,或者是其子类的实例。函数是一个非常有用的工具。这对于需要支持多种类型的情况非常有用,例如函数参数校验。在 Python 中,类型检查是一项常见的任务,而。的使用都能帮助我们编写更健壮的代码。
2024-11-20 16:00:31
836
原创 Separable Convolution(可分离卷积)
(可分离卷积)是一种优化卷积计算的方法,将普通卷积操作分解成两个更简单的操作,以减少计算量和参数量,同时保持较高的准确性。深度可分离卷积是目前应用最广泛的可分离卷积形式(如 MobileNet、Xception)。: 可分离卷积是一种有效的优化技术,通过降低计算复杂性,在轻量化模型中得到广泛应用,同时保持了较高的模型性能。卷积中,普通卷积需要 9 次乘法,而分解后只需要。
2024-11-19 21:21:25
1418
原创 不同优化器对比
优化器是深度学习中用于调整网络参数(如权重和偏置)以最小化损失函数的算法。不同的优化器具有不同的特点,适用于不同的任务和数据集。
2024-11-19 21:19:10
1292
原创 梯度消失和梯度爆炸
如Sigmoid和Tanh的梯度范围较小。当输入较大或较小时,梯度趋近于0(函数饱和区域)。这两个问题通常在深度神经网络中出现,特别是在反向传播过程中,会严重影响网络的训练效果。在反向传播时,梯度值逐层减小,导致靠近输入层的权重几乎没有更新,网络难以学习有效特征。在反向传播时,梯度值逐层增大,最终导致权重更新过大,数值溢出或训练不稳定。初始权重过大,反向传播时梯度随层数增加而指数级放大。若每层的梯度值小于1,梯度会指数级衰减。若每层梯度值大于1,梯度会指数级增长。深度增加时,累乘的梯度可能引发爆炸。
2024-11-19 21:15:59
741
### Meta's Llama 3 AI Transforming Digital Assistance.docx
2024-06-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅