3
逻辑函数中成本函数的Python实现:为什么在一个表达式中使用点乘法但在另一个表达式中使用逐元素乘法
我有一个非常基本的问题,涉及逻辑回归设置中的Python,numpy和矩阵乘法。 首先,让我为未使用数学符号表示歉意。 我对矩阵点乘法与元素明智的倍增的使用感到困惑。成本函数由下式给出: 在python中,我将其写为 cost = -1/m * np.sum(Y * np.log(A) + (1-Y) * (np.log(1-A))) 但例如,此表达式(第一个表达式-J关于w的导数) 是 dw = 1/m * np.dot(X, dz.T) 我不明白为什么在上面使用点乘法是正确的,但是在成本函数中使用逐元素乘法,即为什么不这样做: cost = -1/m * np.sum(np.dot(Y,np.log(A)) + np.dot(1-Y, np.log(1-A))) 我完全理解这一点并没有得到详尽的解释,但是我想这个问题是如此简单,以至于即使具有基本逻辑回归经验的人也会理解我的问题。