<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>积分梯度 on Lorn</title><link>https://july-h5kf3.github.io/tags/%E7%A7%AF%E5%88%86%E6%A2%AF%E5%BA%A6/</link><description>Recent content in 积分梯度 on Lorn</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Wed, 26 Aug 2026 08:24:00 +0800</lastBuildDate><atom:link href="https://july-h5kf3.github.io/tags/%E7%A7%AF%E5%88%86%E6%A2%AF%E5%BA%A6/index.xml" rel="self" type="application/rss+xml"/><item><title>[2026 CVPR] Fine-Grained Post-Training Quantization for Large Vision Language Models with Quantization-Aware Integrated Gradients</title><link>https://july-h5kf3.github.io/p/fine-grained-vlm-ptq/</link><pubDate>Wed, 26 Aug 2026 08:24:00 +0800</pubDate><guid>https://july-h5kf3.github.io/p/fine-grained-vlm-ptq/</guid><description>&lt;div style="background-color:#f9f9f9; padding:8px; border-radius:6px;"&gt;&#10; &lt;b&gt;个人评价&lt;/b&gt;:比较有意思的研究思路，从MBQ的Modality-Specific出发，通过实验发现，相较于Modality-Specific，更加细粒度的Token-Wise进行区分效果会更好。基于此研究了多种Token敏感度估计方法，最终采用基于公理化归因的积分梯度方法进行规约，取得不错的效果。但是问题在于文章对理论的分析严重不足！&#10;&lt;/div&gt;&#10;&lt;p&gt;假设你阅读过MBQ，它是按照模态去对优化目标进行加权的，那么我们可以仔细想想，不同模态最终都会以Token的形式输入模型，既然不同模态之间存在对量化噪声敏感性差异，那么我们其实可以说本质上是Token内部就存在差异，这个差异不仅仅存在于不同模态之间，还可能存在同一个模态之中。那么也就是说，我们完全可以仿照MBQ的思路去做更加细粒度的加权。&lt;/p&gt;&#10;&lt;p&gt;一般而言，衡量这种Token之间的差异，可以通过敏感性估计进行。作者在文章中尝试了三种敏感性估计方式:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;基于梯度:和MBQ一致，依据Token关于量化损失的梯度&lt;/li&gt;&#10;&lt;li&gt;基于注意力:用Attention Score&lt;/li&gt;&#10;&lt;li&gt;基于扰动:人为扰动token，然后观察block输出变化有多大。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;注:实验方法大概是像MBQ一样对不同的Token对量化损失进行加权，然后在VizWiz数据集上进行测试。&lt;/p&gt;&#10;&lt;p&gt;最后结果表明，Token-Level的扰动法的效果在不同敏感度估计下表现最优(0.36%的微弱优势)&lt;/p&gt;&#10;&lt;p&gt;基于上述分析，我们知道，按Token的细粒度量化方法可能会有更好的效果。因此作者声称基于公理化归因的启发。下面简单介绍一下公理化归因，这个方法来源于可解释AI。&lt;/p&gt;&#10;&lt;p&gt;我们从经典的积分梯度（IG）出发。IG用来衡量从参考输入x&amp;rsquo;到真实输入x的真实路径上，每个Token的累积贡献，其中$f(\cdot,\cdot)$表示该Block的输出：&#10;&lt;/p&gt;&#10;$$&#10;\text{IG}(x) = (x - x')\int_{0}^{1}\frac{\partial f(x^\alpha ,w)}{\partial x^{\alpha}}d\alpha \tag{QIG 1}&#10;$$&lt;p&gt;&#10;其中$x^\alpha = \alpha(x-x')$,而$f(\cdot,w)$表示全精度模型。&lt;/p&gt;&#10;&lt;p&gt;我简单介绍一下这个是怎么来的吧，本质上我们是想知道某个输入的Token发生变化后会对模型的输出产生怎样的变化。由导数的定义我们知道:&#10;&lt;/p&gt;&#10;$$&#10;f(x)-f(x') = \int_{x'}^x\frac{\partial f(t)}{\partial t}dt&#10;$$&lt;p&gt;&#10;在一维的情况下，因为只有一个变量，因此我们上式就是该Token的归约。当我们将输入扩展到多维，我们自然想知道每个维度对变化的贡献。&lt;/p&gt;&#10;&lt;p&gt;IG的做法是，我们从参考输入x‘出发，沿一条直线走到真实输入x，可以将这条路径写作:&#10;&lt;/p&gt;&#10;$$&#10;x^\alpha = x' + \alpha(x - x'),\quad \alpha \in [0,1]&#10;$$&lt;p&gt;&#10;那么此时，我们可以把函数写作按照路径变化的形式:&#10;&lt;/p&gt;&#10;$$&#10;F(\alpha) = f(x^\alpha)&#10;$$&lt;p&gt;&#10;这是一个一维函数，自变量只有$\alpha$，于是输入变化带来的变化可以写作:&#10;&lt;/p&gt;&#10;$$&#10;f(x)-f(x') = F(1)-F(0)&#10;$$&lt;p&gt;&#10;写作积分形式:&#10;&lt;/p&gt;&#10;$$&#10;F(1)-F(0) = \int_0^1 \frac{dF(\alpha)}{d\alpha}d\alpha = \int_{0}^1 \frac{\partial f(x^\alpha)}{\partial x^\alpha}\cdot \frac{\partial x^\alpha}{\partial \alpha}&#10;$$&lt;p&gt;&#10;而:&#10;&lt;/p&gt;&#10;$$&#10;x_i^\alpha = x_i' + \alpha(x_i-x_i')&#10;$$&lt;p&gt;&#10;故:&#10;&lt;/p&gt;&#10;$$&#10;\frac{\partial x_i^\alpha}{\partial \alpha} = x_i-x_i'&#10;$$&lt;p&gt;&#10;代入有：&#10;&lt;/p&gt;&#10;$$&#10;\frac{dF(\alpha)}{d\alpha} = \sum_{i=1}^n \frac{\partial f(x^\alpha)}{\partial x^\alpha}(x_i-x_i')&#10;$$&lt;p&gt;&#10;因此:&#10;&lt;/p&gt;&#10;$$&#10;f(x)-f(x') = \int_{0}^1 \sum_{i=1}^n\frac{\partial f(x^\alpha)}{\partial x^\alpha}(x_i-x_i') d\alpha = \sum_{i=1}^n (x_i-x_i')\int_{0}^1 \frac{\partial f(x^\alpha)}{\partial x^\alpha}d\alpha&#10;$$&lt;p&gt;&#10;那么IG就定义第i维的规约为:&#10;&lt;/p&gt;&#10;$$&#10;\text{IG}_i(x) = (x_i-x_i')\int_{0}^1 \frac{\partial f(x^\alpha)}{\partial x^\alpha}d\alpha&#10;$$&lt;p&gt;&#10;写作向量形式就是式子QIG(1)中的形式。&lt;/p&gt;&#10;&lt;p&gt;对应到量化场景，我们取原始输入$x'$为量化后的输入$x'=x^q$,那么可以写出量化感知积分梯度:&#10;&lt;/p&gt;&#10;$$&#10;\text{QIG} = (x-x_q)\int_{0}^1 \frac{\partial f(x^\alpha)}{\partial x^\alpha}d\alpha&#10;$$&lt;p&gt;&#10;不过我们不能直接将QIG作为优化的权，因为它呈现了重尾分布，这会导致极少部分token主导优化过程。为了抑制这种现象，作者选择按照四分位距(IQR)进行裁剪，从而得到裁剪后的分数:&#10;&lt;/p&gt;&#10;$$&#10;C(QIG_i) = clip(QIG_i,Q_1-1.5\cdot IQR,Q_3+1.5\cdot IQR)&#10;$$&lt;p&gt;&#10;其中$Q_1,Q_3$分别表示第一和第三四分位数，且$IQR=Q_3-Q_1$.随后对这些分数进行归一化，得到最终的token重要系数:&#10;&lt;/p&gt;&#10;$$&#10;\lambda_i = \frac{C(QIG_i)}{\sum C(QIG_i)}&#10;$$&lt;p&gt;&#10;之后按照类似于MBQ的思路，将这个加权融入量化优化的目标函数即可。&lt;/p&gt;&#10;</description></item></channel></rss>