机器学习和深度学习之数学基础:多元逻辑回归算法的矩阵参数求导
作者头像
  • 2020-06-25 20:54:07 8

文章重点

在本文中,我们将探讨如何对多元逻辑回归进行求导操作。为了实现这一目标,我们需要使用损失函数 ( l ) 和 softmax 函数。首先,我们不再采用之前对逻辑回归的参数矩阵求导方法,而是转向更为复杂的多元逻辑回归求导过程。具体来说,损失函数 ( l ) 如下所示:

[ l = -frac{1}{m} sum{i=1}^{m} yi^T log(text{softmax}(W x_i + b)) ]

其中,softmax 函数可以表示为:

[ text{softmax}(z)j = frac{exp(zj)}{sum{k=1}^{K} exp(zk)} ]

这里的 ( z ) 是一个 ( n times 1 ) 的向量,不同于之前处理的多个样本情况,现在我们只处理单个样本。

计算工具

微分运算工具

我们使用一些常见的微分公式来简化计算过程。这些公式包括:

  • ( frac{d}{dx} log(x) = frac{1}{x} )
  • ( frac{d}{dx} exp(x) = exp(x) )

跟踪工具

我们还需要一些跟踪工具来简化矩阵运算。例如:

  • ( text{tr}(AB) = text{tr}(BA) )

计算过程

首先,我们将 softmax 函数代入损失函数 ( l ) 中:

[ l = -frac{1}{m} sum{i=1}^{m} yi^T logleft(frac{exp(W xi + b)}{sum{k=1}^{K} exp(W x_i + b)}right) ]

接下来,我们逐步展开并简化这个表达式。从初始表达式出发,我们可以得到:

[ l = -frac{1}{m} sum{i=1}^{m} yi^T left( (W xi + b) - logleft(sum{k=1}^{K} exp(W x_i + b)right) right) ]

进一步地,我们计算 ( frac{partial l}{partial a} ),其中 ( a = W x + b ):

[ frac{partial l}{partial a} = -frac{1}{m} sum{i=1}^{m} yi^T + frac{1}{m} sum{i=1}^{m} frac{exp(a)}{sum{k=1}^{K} exp(a)} ]

这可以简化为:

[ frac{partial l}{partial a} = text{softmax}(a) - y ]

接下来,我们计算 ( frac{partial l}{partial w} ):

[ frac{partial l}{partial w} = frac{partial l}{partial a} cdot x^T ]

最终,我们得到所需的梯度:

[ frac{partial l}{partial x} = W^T (text{softmax}(W x + b) - y) ]

通过以上步骤,我们完成了对多元逻辑回归的求导操作,从而能够优化模型参数。

    本文来源:图灵汇
责任编辑: :
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
习之求导数学基础矩阵算法多元深度逻辑回归机器
    下一篇