- 博客(249)
- 资源 (1)
- 收藏
- 关注
原创 【强化学习基础知识】KL 散度的蒙特卡洛近似(from John Schulman, the cofounder of OPENAI)
本文探讨了 KL 散度的蒙特卡洛估计,提出无偏且低方差的估计方法。通过 f-散度和 Bregman 散度的思想,引入 $k_3 = (r - 1) - \log r$ 作为改进估计量。实验表明,相较于传统估计量 $k_1$ 和 $k_2$,$k_3$ 具有更低的方差且无偏,是更优的 KL 估计方法。
2025-02-14 11:25:42
773
原创 【GRPO】GRPO原理原文翻译
GRPO(群组相对策略优化)改进了传统 PPO 强化学习,避免了额外的值函数近似计算,使用多个采样输出的平均奖励作为基线,提高 LLM 训练稳定性。迭代 GRPO 通过重放机制持续优化奖励模型。DeepSeekMath-RL 7B 训练基于 GSM8K 和 MATH 数据,强化链式思维推理,取得 88.2% 和 51.7% 的高准确率,超越多个开源及封闭模型。实验表明,GRPO 可提升 LLM 在域内外任务的泛化能力,有效促进强化学习训练的长期改进。
2025-02-13 20:30:48
816
原创 【transformers.Trainer填坑】在自定义compute_metrics时logits和labels数据维度不一致问题
我在使用 transformers.Trainer 训练我的模型时,我自定义了 compute_loss 函数和compute_metrics函数,我的模型是一个简单的二分类模型。这里当 outputs 不是字典时,会把第一个位置的元素offset掉。
2025-02-12 17:52:35
425
原创 【Transformer位置编码】Transfomrer中的PE(Position Encoding, 位置编码)为什么起作用?
这里的pos代表序列中某个单词的位置,或者图像中某个patch的位置,i 代表维度的index,假设Transfomer模型隐藏层的维度为1024,则 i 的范围为 0 ~ 1024,因为相对位置较近时,对于波长小的sin函数敏感,x 变化一点点,sin(x)就变化很多,而对于波长较大的sin函数来说,位置较近的短距离变化根本看不出来。在实际应用中pos被归一化到-1~1到范围内,所以这里我们仅仅参考上图中的0~1的曲线变化即可。位置编码应该是该模型的核心,如果位置编码应用不对,则不收敛是正常的。
2025-02-10 15:33:48
565
原创 【deepspeed】Error: exits with return code = -7 解决!
因为默认的size太小了只有64MB.在启动docker的命令行中加入。
2024-09-03 14:45:57
277
原创 (DPO) Bradley-Terry模型概念
在Bradley-Terry模型中,假设有两个对象(例如,运动队A和B)进行比较,模型的目标是估计每个对象的“能力”或“实力”。我们用这些估计值来计算对象A在与对象B的比较中胜出的概率。假设每个对象iii有一个能力值pi0p_i > 0pi0。那么对象iii胜过对象jjjPibeatsjpipipjPibeatsjpipjpi这意味着,两个对象的相对能力值决定了它们的胜出概率。如果pipjp_i > p_jp。
2024-08-28 15:46:38
2667
原创 【RLHF】RLHF 中的似然函数是怎样定义的?
在强化学习中的人类反馈(RLHF, Reinforcement Learning with Human Feedback)中,似然函数的定义涉及到如何通过人类反馈来改进和优化策略。RLHF通常结合了强化学习和人类反馈模型来训练智能体。这里主要关注如何将人类反馈纳入到强化学习的框架中。在RLHF中,似然函数的定义和优化涉及到如何通过人类反馈训练奖励模型,从而在强化学习过程中改进智能体的策略。似然函数的核心是通过最大化人类反馈数据下的模型输出概率来优化奖励模型的参数。
2024-08-14 14:22:36
581
1
原创 【大模型量化】AWQ 量化和 INT8 量化的区别是什么?
量化将浮点数(通常为32位浮点数)转换为较低位数(如8位整数),以减少模型的存储空间和计算量。在 INT8 量化中,浮点数被映射到0到255之间的8位整数。
2024-08-13 16:44:51
2202
原创 【cv::triangulatePoints】其中的投射矩阵P(3x4)是怎么得到的?(内外参数K[R|t]到最终矩阵的变换过程)
通过内参矩阵和外参矩阵的组合,我们得到了用于描述三维点到二维图像平面投影的投影矩阵P\mathbf{P}P。这个矩阵在多视图几何和计算机视觉的应用中至关重要,特别是在三维重建和相机校准中。
2024-08-08 20:14:43
1649
1
原创 【Savitzky-Golay 滤波器】scipy.signal.savgol_filter 的使用
是 SciPy 库中用于数据平滑的函数。Savitzky-Golay 滤波器通过多项式拟合来平滑数据,并保留信号的高频特性,比其他平滑方法(如移动平均)更能保留信号的特征。以下是对。
2024-06-25 14:03:07
2108
2
原创 【Scipy】scipy.interpolate.interp1d 简介及使用示例
是 SciPy 库中用于一维插值的函数。它通过已知数据点创建一个插值函数,从而可以在这些点之间估算出新的数据点。interp1d在数据处理和分析中非常有用,尤其是在需要平滑数据或对离散数据进行插值的情况下。
2024-06-25 13:59:05
2383
原创 【大数据】gRPC、Flink、Kafka 分别是什么?
Apache Flink 是一个开源的流处理框架,用于处理无界和有界数据流。它是一个分布式处理引擎,支持实时数据流处理和批处理任务。Flink 被广泛应用于大数据分析、机器学习、实时监控和复杂事件处理等领域。
2024-06-18 10:43:01
1070
原创 【Docker】怎么将当前机器上的docker_image打包传到另一台机器上使用?
命令将指定的 Docker 镜像保存为一个 tar 文件。当你需要在其他机器或环境中使用这个打包的 Docker 镜像时,可以使用。这将会在目标机器上重新加载并可用你之前保存的 Docker 镜像。
2024-05-16 16:49:13
556
原创 【小技巧】解析 chmod 700 的数字的含义
举例: 命令在 Unix 和类 Unix 系统中用于改变文件的权限。具体来说,chmod是 “change mode” 的缩写,用于设置文件或目录的访问权限。
2024-04-17 13:19:33
1110
1
原创 【小技巧】机器学习中可视化高维向量的两种方法PCA和t-SNE,以及其原理介绍和代码示例(附代码)
为了可视化高维数据(比如你的256维向量)在低维空间(通常是2D或3D)的分布,常用的方法包括主成分分析(PCA)和t-SNE。这两种方法可以帮助我们理解数据在高维空间中的内在结构。下面,我会展示如何使用Python的库和matplotlib来可视化这些向量。我将使用PCA和t-SNE两种方法来降维,并在3D平面上展示结果。如果你有标签数据,这将有助于我们看到不同簇的分布。import os""""""# 使用PCA将数据降到3维# 使用t-SNE将数据降到3维。
2024-04-12 13:58:12
2472
原创 【MultiViewTracking】MultiView Tracking 中Spatial Consistency(空间一致性)是什么?具体怎么维护?有哪些方法,它们的原理是什么?
在多视图跟踪(Multiview Tracking)中,“空间一致性”(Spatial Consistency)指的是在跨越多个相机视图时,跟踪对象在不同视图中的位置和移动应当遵循现实世界的空间关系和约束。这种一致性是基于场景的几何结构和相机的配置(如它们的位置、方向和视场),确保在不同相机视图中跟踪到的同一对象在空间上是一致的。在多个视图中同时进行对象检测,并利用检测结果的空间一致性来关联各个视图中的同一对象。:将来自不同相机的信息融合,在保持空间一致性的同时,增强对场景的整体理解和对象跟踪的鲁棒性。
2024-04-10 11:35:36
1174
原创 【小技巧】gitlab怎么在每次git push的时候不用输入账号密码?使用 SSH 密钥 的原理是什么?
使用 SSH 密钥进行身份验证是一种安全且广泛采用的方法,它利用公钥加密技术确保只有密钥的合法持有者才能访问服务。这种方法不仅用于 Git 仓库的访问控制,也被广泛应用于远程服务器的安全访问。
2024-04-03 19:18:25
2870
原创 【名词解释】ImageCaption任务中的CIDEr、n-gram、TF-IDF、BLEU、METEOR、ROUGE 分别是什么?它们是怎样计算的?
n-gram是自然语言处理(NLP)中一种基本的概念,它指的是文本中连续的n个项(可以是音节、字或词)组成的序列。n-gram模型通过考察这些连续项的出现概率来捕捉文本中的语言规律,从而用于各种语言模型和文本处理任务,如拼写检查、语音识别、机器翻译以及搜索引擎中的查询预测等。TF-IDF(Term Frequency-Inverse Document Frequency)是一种用于信息检索和文本挖掘的常用加权技术。它反映了一个词在文档集合中的重要性。
2024-04-02 15:04:09
2088
原创 【查漏补缺】异常检测是生成模型吗?是无监督模型吗?常用的模型有哪些?
自编码器通常由两部分组成:编码器(Encoder)和解码器(Decoder)。编码器的任务是将输入数据压缩成一个低维表示(即潜在空间),而解码器则尝试从这个低维表示中重构原始数据。编码器:可能包含多层,每一层都进一步压缩数据,直到达到一个编码(低维表示)。解码器:结构通常与编码器镜像对称,逐层将编码扩展回原始数据的维度。
2024-03-26 10:24:34
722
原创 【概率基础】从概率角度去解释回归和分类的主要区别是什么?
虽然从理论上讲,在回归任务中使用KL散度作为损失函数是可能的,但由于其在处理连续目标变量时的复杂性、对特定概率分布假设的需求,以及在实际应用中提供的优势有限,因此不如MSE或MAE等直接衡量预测误差的损失函数来得普遍和实用。在大多数回归任务中,直接衡量预测值和真实值之间差异的损失函数更为直接和高效。
2024-03-25 20:04:58
1296
原创 【概率基础】生成式模型与判别式模型最大的区别是什么?两者可以互相转化吗?
生成式模型与判别式模型最大的区别在于它们对数据的建模方式和目标。PXYPY∣XXY简而言之,生成式模型和判别式模型的最大区别在于它们的目标和方法:生成式模型试图理解数据如何生成,而判别式模型专注于如何根据输入数据进行有效的预测。
2024-03-25 20:03:36
1484
原创 【LLAVA】Llava中在数据集制作过程中是怎么从CC3M中过滤出595K数据的?为什么这样做?
上面这段话是摘自llava原论文。下面说明这个处理过程。
2024-03-21 19:07:19
1999
原创 【基础知识】熵、交叉熵、相对熵(KL散度) 是什么以及它们之间的区别
熵(Entropy)和交叉熵(Cross-Entropy)是信息论中的两个基本概念,它们在机器学习、深度学习等领域有着广泛的应用。
2024-03-14 10:16:53
4232
原创 【DiffusionModel系列】Sora揭底系列模型介绍 (VAE/DDPM/SD/DiT/Sora)
该文档介绍了几种深度学习模型,特别是那些在图像合成和处理方面有显著应用的模型。文档内容涉及变分自编码器(VAE)、去噪扩散概率模型(DDPM)、稳定扩散(Stable Diffusion)、扩散变换器(DiT),以及Sora模型的介绍。变分自编码器(VAE):VAE通过最大化数据的边缘似然来训练模型,采用变分下界(ELBO)和KL散度来近似似然函数,从而学习数据的隐含结构。它利用重参数化技巧来使梯度反向传播可行。去噪扩散概率模型(DDPM)
2024-03-13 20:46:05
765
原创 【基础知识】DDPM中的解码器部分(“L0”)解释以及概率密度函数的解释
概率密度函数(Probability Density Function, PDF)是连续随机变量的概念,描述了该随机变量在不同值上取值的相对可能性。对于随机变量XXX,其概率密度函数fxf(x)fx满足以下条件:1.fx≥0fx≥0对所有xxx都成立,这意味着概率密度不可能是负值。2.∫−∞∞fxdx1∫−∞∞fxdx1,这意味着随机变量取所有可能值的概率之和为1。
2024-03-13 14:51:06
1348
1
原创 【Paper Reading】7.DiT(VAE+ViT+DDPM) Sora的base论文
该论文提出了一种综合VAE+ViT+DDPM的基础架构,主要是在latent patches(可以去看VAE)空间进行操作,这样做的好处是首先计算cost会减小很多,例如如果在原始的图片上操作,例如256x256,那在latent patches空间就可以是32x32. Latent patches是指训练一个图像编码器,我们首先可以把原始图像编码为embeding, 也就是E(x), 编码后的空间就是论文中所说的latent patches空间.的变体结构效果最好. 具体的各个变体的说明可以看论文.
2024-03-13 10:55:18
1577
原创 【Paper Reading】6.RLHF-V 提出用RLHF的1.4k的数据微调显著降低MLLM的虚幻问题
论文提出了RLHF-V,一种旨在通过细粒度人类反馈对多模态大型语言模型(MLLMs)行为进行校准的框架,以解决模型产生的幻觉问题,即生成的文本与关联图片不符。通过从细粒度的人类反馈中学习,显著减少基础MLLM的幻觉率,提高了模型的可信度和实用性。RLHF-V提供了一种有效的方法来解决MLLMs中的幻觉问题,通过精细的人类反馈和新颖的优化技术,提高了模型在多模态任务中的可信度和实用性。RLHF-V通过细粒度的人类反馈校准MLLMs的行为,显著提高了模型的可信度,并在开源MLLMs中取得了最先进的性能。
2024-03-13 10:40:52
2205
1
原创 【基础知识】Swin Transformer 中的“滑动窗口”有什么作用?
Swin Transformer 是一种基于 Transformer 架构的,专为视觉任务设计的创新模型。它由微软研究院提出,并迅速成为计算机视觉领域的热门研究方向,特别是在图像分类、目标检测和语义分割等任务上表现出色。Swin Transformer 的核心优势在于其能够有效处理图像中的层次性结构和大尺度变化,同时保持较高的计算效率。:与传统的Transformer模型不同,Swin Transformer 引入了层次化的设计,使其能够更有效地处理不同尺寸的图像。
2024-03-12 10:53:08
1401
原创 【NLP基础知识】VSM | D-VSM | Word2Vec 介绍
VSM(向量空间模型)是一种在信息检索、文本挖掘和自然语言处理中广泛使用的概念,特别是在处理和比较文本文档方面。它将文本文档表示为向量,每个向量的维度对应于词汇表中的一个单词,而每个维度的值代表该单词在文档中的重要性,这通常通过词频(TF)或逆文档频率(IDF)等方法来量化。在向量空间模型中,每个文档都被表示为一个向量,向量中的每个元素对应于词汇表中的一个词。例如,假设我们有一个包含三个词的简单词汇表:{Python, 编程, 项目}。
2024-03-12 10:23:50
1110
原创 【基础知识】DPO(Direct Preference Optimization)的原理以及公式是怎样的?
DPO方法的关键在于直接利用人类偏好数据来优化语言模型,从而避免了RLHF流程中奖励模型拟合和RL优化的复杂性和不稳定性。这种方法简化了偏好学习的过程,降低了实现的复杂性,并有可能提高模型根据人类偏好生成输出的效率和准确性。
2024-03-11 20:03:35
21091
2
原创 【DDPM】DDPM中为什么从xt到x_{t-1}还需要加上一个随机变量z?
然而,因为原始的生成过程包含了随机性(通过噪声的增加),所以在恢复过程中也需要引入相应的随机性来模仿这个噪声。这样,我们就能够遍历所有可能的噪声路径来找到对应于我们想要生成的数据的路径。恢复过程(也称为去噪过程)必须尝试估计在每个时间步加入的噪声,这通常是通过神经网络来实现的,网络试图学习从带噪声的数据恢复出去噪声数据的映射。这项是必要的,它保证了生成过程能够探索所有可能的生成路径,从而增强模型生成数据的多样性。这个恢复过程是通过一个受控的方式逐步减少噪声,以便最终能够恢复出准确的原始数据。
2024-03-11 16:51:10
1305
原创 【基础知识】为什么在ControlNet中的zero init是有效的,核心原理是什么?
在ControlNet或任何特定的神经网络架构中,使用"zero initialization"(零初始化)或其他特定的初始化方法的有效性取决于多个因素,包括网络的设计、优化目标以及训练数据的性质。虽然在许多情况下,权重的零初始化并不是首选(因为它可能导致对称性破坏问题和梯度消失),在一些特定场景或网络层中,零初始化却可能带来特定的优势。
2024-03-11 16:09:14
1133
原创 【基础知识】VAE中编码器预测了潜在空间z的分布,引入随机噪声ϵ后,对方差的梯度也引入了随机性,那么它是怎么控制这种随机性来实现确定性训练的呢?
在变分自编码器(VAE)中,重参数化技巧是用来解决随机变量的梯度优化问题的一个关键步骤。具体来说,重参数化允许我们对含有随机变量的模型进行梯度下降优化,而不是直接对随机变量本身进行操作。这是通过将随机性从模型的参数中分离出来实现的,从而使得梯度下降算法可以用于模型的训练。
2024-03-07 20:41:21
1183
原创 【基础知识】DDPM中的“Langevin动力学”的概念
这句话描述的是与Langevin动力学相关的一个概念,在这里提到的是使用εθ作为数据密度的学习梯度。总的来说,这句话讲述的是在Langevin动力学的框架下,利用εθ作为一个经过学习的梯度,来模拟或采样数据分布,从而使得生成的样本更接近真实的数据分布。在机器学习和深度学习中,Langevin动力学可以用于训练生成模型,如生成对抗网络(GANs)和变分自编码器(VAEs),通过有效地从复杂的数据分布中采样,以生成新的数据点(如图片、文本等)。),这允许粒子跳出局部最小值,增加探索不同区域的可能性。
2024-03-06 14:26:09
2890
原创 【基础知识】DDPM中提到的“Rao-Blackwell定理和闭式解(closed form expressions)”
在这段文本中,作者在描述一种高效的训练方法,该方法涉及到使用随机梯度下降优化损失函数 L 的随机项。进一步的改进来自于通过重写损失函数 L(参见公式(3))来减少方差。特别地,公式(5)使用了KL散度(Kullback-Leibler散度),这是一种度量两个概率分布之间差异的方法。在这里,KL散度用于直接比较在给定x0x_0x0的条件下,时间t−1t-1t−1的真实数据分布pθxt−1∣xtpθxt−1∣xt。
2024-03-05 17:36:35
1980
原创 【基础知识】什么是 PPO(Proximal Policy Optimization,近端策略优化)
PPO(Proximal Policy Optimization,近端策略优化)是一种强化学习算法,由John Schulman等人在2017年提出。PPO属于策略梯度方法,这类方法直接对策略(即模型的行为)进行优化,试图找到使得期望回报最大化的策略。PPO旨在改进和简化以前的策略梯度算法,如TRPO(Trust Region Policy Optimization,信任域策略优化),它通过几个关键的技术创新提高了训练的稳定性和效率。
2024-03-05 11:39:22
8424
原创 【基础知识】VAE 变分推断公式|变分分布|先验分布|后验分布|KL散度|边缘似然
在VAE的上下文中,先验分布提供了对潜在变量应该如何分布的假设,而后验分布则是给定观测数据后,对潜在变量分布的更新。VAE的训练过程涉及到调整编码器和解码器(Decoder)的参数,以最小化重构误差(使解码器输出尽可能接近输入数据)和正则化项(通常是KL散度,使变分后验接近先验)。通过这种方式,VAE能够学习到能够生成数据的有效的潜在表示。
2024-03-05 11:35:12
3735
1
原创 【扩散模型基础知识】Diffusion Model中的重参数化和VAE中的重参数化的区别
在机器学习中,重参数化(reparameterization)是一种技术,用于改变模型参数的表达方式,以便能够更高效或者更稳定地进行优化。它在不同的模型中有不同的应用和含义。下面我们分别看看在扩散模型(Diffusion Models)和变分自编码器(Variational Autoencoder, VAE)中重参数化的含义及其区别。
2024-03-05 11:27:10
4635
1
原创 【基础知识】FID(Fréchet Inception Distance)公式及解释
FID(Fréchet Inception Distance)是一种用于评估生成模型,尤其是在图像生成任务中,生成图像的质量和多样性的指标。这个特定的空间通常是通过预训练的Inception网络的某一层来定义的。计算每个集合的特征向量的均值和协方差矩阵。设生成图像的特征向量的均值和协方差矩阵分别为。FID分数越低,表示生成图像与真实图像的分布越接近,通常认为生成的图像质量越高。的乘积的平方根,表示通过取两个矩阵乘积的特征值的平方根得到的矩阵。,真实图像的特征向量的均值和协方差矩阵分别为。
2024-03-05 11:20:03
7006
DDR3L 手册
2018-01-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人