对数求导法公式 对数求导( 二 )


一种解决 *** 是将该函数的定义域限定为?? ∪ ?? \0,但对于负数来说,函数依然不可微 。因此,为了正确推导出复变指数函数x?的导数,只需要把该函数的定义域严格限定为正数即可 。排除0是因为此时导数也为0,左右导数需相等,但在这种情况下,此条件是不成立的 。因为左极限是没有定义的,函数在0处不可微,因此函数的定义域只能限定为正数 。

对数求导法公式  对数求导

文章插图
在继续以下内容之前,先考考你,这里有一个比复变指数函数f(x) = x?更高级的函数f(x) = x?2 。如果你理解了之一个例子背后的逻辑和步骤,再加一个指数应该毫无难度,可以推导出以下结果:

对数求导法公式  对数求导

文章插图

对数求导法公式  对数求导

文章插图
导数3:多元输入函数的梯度
对数求导法公式  对数求导

文章插图
到目前为止,前面讨论的函数导数都是从?映射到?的函数,即函数的定义域和值域都是实数 。但机器学习本质上是矢量的,函数也是多元的 。
下面这个例子最能阐释这种多元性:当神经 *** 的输入层大小为m和输出层大小为k时,即f(x) = g(W?x + b),此函数是线性映射W?x(权阵W和输入向量x)和非线性映射g(激活函数)按元素组成的 。一般情况下,该函数也可视作是从??到??的映射 。
我们把k=1时的导数称为梯度 。现在来计算以下从?3映射到?的三元函数:

对数求导法公式  对数求导

文章插图
可以把f看作是一个函数,它从大小为3的向量映射到大小为1的向量 。

对数求导法公式  对数求导

文章插图
图源:unsplash
多元输入函数的导数被称为梯度,用倒三角符号?(英文为nabla)表示 。从??映射到?的函数g的梯度是n个偏导数的 ***,每个偏导数都是一个n元函数 。因此,如果g是一个从??到?的映射,其梯度?g是一个从??到??的映射 。
要推导出函数f(x,y,z) = 2?? + zcos(x)的梯度,需要构造一个矢量的偏导数:?f/?x,?f/?y和?f/?z,结果如下:

对数求导法公式  对数求导

文章插图
需要注意,此处也需要利用公式进行等值转化,即2??=exp(xy ln(2)) 。
总之,对于一个从?3映射到 ?的三元函数f,其导数是一个从?3映射到?3的梯度? f 。从??映射到??(k > 1)的一般式中,一个从??映射到??的多元函数的导数是一个雅可比矩阵,而非一个梯度向量 。

对数求导法公式  对数求导

文章插图
导数4:多元输入输出函数的雅可比矩阵
对数求导法公式  对数求导

文章插图
上一节中已经提到从??映射到?的函数的导数,是一个从??映射到??的梯度 。但如果输出域也是多元的,即从??映射到??(k > 1),那又当如何?
这种情况下,导数为雅可比矩阵 。可以把梯度简单视为一个m x 1的特殊雅可比矩阵,此时m与变量个数相等 。雅可比矩阵J(g)是一个从??到??*?的映射,其中函数g从??映射到?? 。这也就是说输出域的维数是k x m,即为一个k x m矩阵 。换言之,在雅可比矩阵J(g)中,第i行表示函数g?的梯度? g? 。
假设上述函数f(x, y) = [2x2, x √y]从?2映射到?2,通过推导该函数的导数可以发现函数的输入和输出域都是多元的 。在这种情况下,由于平方根函数在负数上没有定义,需要把y的定义域限定为?? 。输出雅可比矩阵的之一行就是函数1的导数,即? 2x2;第二行为函数2的导数,即? x √y 。

对数求导法公式  对数求导

文章插图
雅可比矩阵在深度学习中的可解释性领域中有一个有趣用例,目的是为了理解神经 *** 的行为,并分析神经 *** 的输出层对输入的灵敏度 。
雅可比矩阵有助于研究输入空间的变化对输出的影响,还可以用于理解神经 *** 中间层的概念 。总之需要记住梯度是标量对向量的导数,雅可比矩阵是一个向量对另一个向量的导数 。

对数求导法公式  对数求导

文章插图
导数5:多元输入函数的黑塞矩阵
对数求导法公式  对数求导

文章插图
目前仅讨论了一阶导数求导,但在神经 *** 中,会经常讨论多元函数的高阶导数 。其中一种特殊情况就是二阶导数,也被称为黑塞矩阵,用H(f)或? 2(微分算符的平方)表示 。从??映射到?的函数g的黑塞矩阵是从??到??*?的映射H(g) 。

推荐阅读