标量 $y$ 对 $n$ 维列向量 $x = (x_{1},x_{2},cdots,x_{n})^{T}$ 求导,其结果还是一个 $n$ 维列向量:
$$frac{d y}{d x} = egin{bmatrix}
frac{partial y}{partial x_{1}} \
frac{partial y}{partial x_{2}} \
cdots \
frac{partial y}{partial x_{n}}
end{bmatrix}$$
标量 $y$ 对 $n$ 维行向量 $x^{T} = (x_{1},x_{2},cdots,x_{n})$ 求导,其结果还是一个 $n$ 维行向量:
$$frac{d y}{d x^{T}} = egin{bmatrix}
frac{partial y}{partial x_{1}} & frac{partial y}{partial x_{2}} & cdots & frac{partial y}{partial x_{n}}
end{bmatrix}$$
形状规则:标量 $y$ 对向量 $x$ 的每个元素求导,然后将各个求导结果按向量 $x$ 的形状排列。
1. 标量对列向量 $x$ 求导的应用
1)$f(x) = eta^{T}x$,$eta = (eta_{1},eta_{2},...,eta_{n})^{T}, x = (x_{1},x_{2},...,x_{n})^{T}$,求 $frac{d f}{d x}$。
标量对列向量求偏导,求得的也是一个列向量,结果向量的每个元素为 $f$ 对自变量每个坐标轴的偏导数。
将函数 $f(x)$ 展开得:
$$f(x) = sum_{i = 1}^{n} eta_{i}x_{i}$$
则有
$$frac{partial f}{partial x_{k}} = eta_{k}$$
所以
$$frac{d f}{d x} = egin{bmatrix}
frac{partial f}{partial x_{1}} \
frac{partial f}{partial x_{2}} \
cdots \
frac{partial f}{partial x_{n}}
end{bmatrix} = egin{bmatrix}
eta_{1} \
eta_{2} \
cdots \
eta_{n}
end{bmatrix} = eta$$
2)二次型 $f(x) = x^{T}Ax$,其中 $A = egin{bmatrix}
a_{11} & a_{12} & cdots & a_{1n} \
a_{21} & a_{22} & cdots & a_{2n} \
cdots & cdots & cdots & cdots \
a_{n1} & a_{n2} & cdots & a_{nn}
end{bmatrix}$,现在我们要求 $frac{d f}{d x}$。
标量对列向量求偏导,求得的也是一个列向量,结果向量的每个元素为 $f$ 对自变量每个坐标轴的偏导数。
一个二次型本身是一个多项式,可以写为如下形式:
$$f(x_{1},x_{2},...,x_{n}) = sum_{i=1}^{n}sum_{j=1}^{n}a_{ij}x_{i}x_{j}$$
现在相对 $x_{k}$ 求偏导,它的偏导数由以下四种不重叠的情况组成
a. $i eq k, j eq k$:
这种情况多项式中没有未知数 $x_{k}$,所以这部分偏导数为 $0$
$$ abla 1 = 0$$
b. $i eq k, j = k$:
$$ abla 2 = sum_{i eq k}^{}a_{ik}x_{i}$$
c. $i = k, j eq k$:
$$ abla 3 = sum_{j eq k}^{}a_{kj}x_{j}$$
d. $i = k, j = k$:
$$ abla 4 = 2a_{kk}x_{k}$$
综上可得:
$$frac{partial f}{partial x_{k}} = sum_{i
eq k}^{}a_{ik}x_{i} + sum_{j
eq k}^{}a_{kj}x_{j} + 2a_{kk}x_{k} \
= sum_{i=1}^{n} a_{ik}x_{i} + sum_{j = 1}^{n}a_{kj}x_{j}$$
于是有
$$frac{d f}{d x} = egin{bmatrix}
frac{partial f}{partial x_{1}} \
frac{partial f}{partial x_{2}} \
cdots \
frac{partial f}{partial x_{n}}
end{bmatrix} =
egin{bmatrix}
sum_{i=1}^{n} a_{i1}x_{i} + sum_{j = 1}^{n}a_{1j}x_{j} \
sum_{i=1}^{n} a_{i2}x_{i} + sum_{j = 1}^{n}a_{2j}x_{j} \
cdots \
sum_{i=1}^{n} a_{in}x_{i} + sum_{j = 1}^{n}a_{nj}x_{j}
end{bmatrix} =
egin{bmatrix}
sum_{i=1}^{n} a_{i1}x_{i} \
sum_{i=1}^{n} a_{i2}x_{i} \
cdots \
sum_{i=1}^{n} a_{in}x_{i}
end{bmatrix} + egin{bmatrix}
sum_{j = 1}^{n}a_{1j}x_{j} \
sum_{j = 1}^{n}a_{2j}x_{j} \
cdots \
sum_{j = 1}^{n}a_{nj}x_{j}
end{bmatrix}$$
进一步得:
$$frac{d f}{d x} =
egin{bmatrix}
sum_{i=1}^{n} a_{i1}x_{i} \
sum_{i=1}^{n} a_{i2}x_{i} \
cdots \
sum_{i=1}^{n} a_{in}x_{i}
end{bmatrix} + egin{bmatrix}
sum_{j = 1}^{n}a_{1j}x_{j} \
sum_{j = 1}^{n}a_{2j}x_{j} \
cdots \
sum_{j = 1}^{n}a_{nj}x_{j}
end{bmatrix}
= egin{bmatrix}
a_{11} & a_{21} & cdots & a_{n1} \
a_{12} & a_{22} & cdots & a_{n2} \
cdots & cdots & cdots & cdots \
a_{1n} & a_{2n} & cdots & a_{nn}
end{bmatrix} egin{bmatrix}
x_{1} \
x_{2} \
cdots \
x_{n}
end{bmatrix} + egin{bmatrix}
a_{11} & a_{12} & cdots & a_{1n} \
a_{21} & a_{22} & cdots & a_{2n} \
cdots & cdots & cdots & cdots \
a_{n1} & a_{n2} & cdots & a_{nn}
end{bmatrix} egin{bmatrix}
x_{1} \
x_{2} \
cdots \
x_{n}
end{bmatrix} \
= Ax + A^{T}x = 2Ax$$
3)$f(x) = x^{T}x$,$x = (x_{1},x_{2},...,x_{n})^{T}$,求 $frac{d f}{d x}$。
这个可以换个形式,即 $f(x) = x^{T}Ex$,这样就变成了一个二次型,利用二次型对列向量求导公式可得
$$frac{df}{dx} = 2Ex = 2x$$