在本文中,我们将探讨如何对多元逻辑回归进行求导操作。为了实现这一目标,我们需要使用损失函数 ( 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 ) 的向量,不同于之前处理的多个样本情况,现在我们只处理单个样本。
我们使用一些常见的微分公式来简化计算过程。这些公式包括:
我们还需要一些跟踪工具来简化矩阵运算。例如:
首先,我们将 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) ]
通过以上步骤,我们完成了对多元逻辑回归的求导操作,从而能够优化模型参数。