我们通过一个简单的例子来理解这个公式:

(aTx)x=(xTa)x=a\frac{\partial (\vec{a}^T \vec{x})}{\partial \vec{x}} = \frac{\partial (\vec{x}^T \vec{a})}{\partial \vec{x}} = \vec{a}


1. 问题设定

假设我们有一个常数向量 a\vec{a} 和一个变量向量 x\vec{x}

a=(a1a2an)\vec{a} = \begin{pmatrix} a_1 \\ a_2 \\ \vdots \\ a_n \end{pmatrix}

x=(x1x2xn)\vec{x} = \begin{pmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{pmatrix}

它们的点积为:

aTx=a1x1+a2x2++anxn\vec{a}^T \vec{x} = a_1 x_1 + a_2 x_2 + \cdots + a_n x_n

我们下面通过具体的例子看看计算这种点积对 x\vec{x} 的导数。

2. 具体例子

假设:

a=(23)\text{常数向量} \vec{a} = \begin{pmatrix} 2 \\ 3 \end{pmatrix}

x=(x1x2)\text{变量向量} \vec{x} = \begin{pmatrix} x_1 \\ x_2 \end{pmatrix}

则点积为:

aTx=2x1+3x2\vec{a}^T \vec{x} = 2x_1 + 3x_2

3. 计算导数

根据公式:

(aTx)x=a\frac{\partial (\vec{a}^T \vec{x})}{\partial \vec{x}} = \vec{a}

具体计算过程如下:
x1x_1 求偏导:

(2x1+3x2)x1=2 \frac{\partial (2x_1 + 3x_2)}{\partial x_1} = 2

注:
在对 (x_1) 求偏导时,(x_2) 被看作常数。这是因为偏导数的定义是:在多元函数中,对某一个变量求导时,其他变量都视为常数
偏导数的定义
偏导数是多元函数对其中一个变量的导数,而其他变量保持不变。对于函数 f(x1,x2,,xn)f(x_1, x_2, \ldots, x_n),对 xix_i 的偏导数记为:fxi\frac{\partial f}{\partial x_i}
在计算时,除了 xix_i 以外的所有变量都被视为常数。
例子分析
以函数 (f(x_1, x_2) = 2x_1 + 3x_2) 为例:
对 (x_1) 求偏导时,(x_2) 被看作常数。因此:

(2x1+3x2)x1=(2x1)x1+(3x2)x1=2+0=2 \frac{\partial (2x_1 + 3x_2)}{\partial x_1} = \frac{\partial (2x_1)}{\partial x_1} + \frac{\partial (3x_2)}{\partial x_1} = 2 + 0 = 2

其中:
2x12x_1x1x_1 的导数是 2。
3x23x_2x1x_1 的导数是 0(因为 x2x_2 是常数)。
几何意义
偏导数 fx1\frac{\partial f}{\partial x_1} 表示函数ffx1x_1方向上的变化率
在这个过程中,x2x_2 被固定为常数,相当于在 x2x_2 方向上“切片”观察函数的行为。

x2x_2 求偏导:

(2x1+3x2)x2=3 \frac{\partial (2x_1 + 3x_2)}{\partial x_2} = 3

因此,导数为:

(aTx)x=(23)=a\frac{\partial (\vec{a}^T \vec{x})}{\partial \vec{x}} = \begin{pmatrix} 2 \\ 3 \end{pmatrix} = \vec{a}

4. 几何意义 ★★★

点积 aTx\vec{a}^T \vec{x} 表示向量 x\vec{x} 在向量 a\vec{a} 方向上的投影长度乘以 a\vec{a} 的长度。

导数 (aTx)x=a\frac{\partial (\vec{a}^T \vec{x})}{\partial \vec{x}} = \vec{a} 表示,当 x\vec{x} 变化时,点积 aTx\vec{a}^T \vec{x} 的变化率由 a\vec{a} 决定。

5. 应用场景

优化问题:假设我们需要最小化目标函数 f(x)=aTxf(\vec{x}) = \vec{a}^T \vec{x},则梯度为 a\vec{a}。梯度下降法的更新规则为:

xnew=xoldηa \vec{x}_{\text{new}} = \vec{x}_{\text{old}} - \eta \vec{a}

其中 η\eta 是学习率。

线性回归:在线性回归中,损失函数可能包含 aTx\vec{a}^T \vec{x} 这样的项,其中 a\vec{a} 是数据向量,x\vec{x} 是模型参数。通过这个公式,可以快速计算损失函数对参数的梯度。

6. 总结

通过这个简单的例子,我们可以看到:
公式 (aTx)x=a\frac{\partial (\vec{a}^T \vec{x})}{\partial \vec{x}} = \vec{a} 的意义是:点积 aTx\vec{a}^T \vec{x}x\vec{x} 的导数就是 a\vec{a}
这个公式在优化、机器学习等领域中非常有用,可以简化梯度计算