numpy中我的成本函数出了什么问题?

时间:2017-08-22 19:37:49

标签: python numpy machine-learning deep-learning

我试图在Andrew Ng深度学习课程中为编程作业实现成本函数,这需要我自己的原创作品。我也不允许在未经许可的情况下复制作业代码,但无论如何我都是这样做的。

成本的预期结果= 6.000064773192205,但是使用此代码,我的结果成本= 4.50006477319。有没有人知道我在这段代码中做错了什么?

删除了代码

3 个答案:

答案 0 :(得分:2)

你的sigmoid函数有错误。你应该计算np.dot(np.transpose(w), X) + b)的负数。

这是我用过的那个

A = 1 / (1 + np.exp(-(np.dot(np.transpose(w), X) + b)))

答案 1 :(得分:1)

np.sum(np.multiply(Y, np.log(A)) + np.multiply((1-Y), np.log(1-A)))  /m   

答案 2 :(得分:0)

万一你发现它很有用(并且我正在做相同的源码),你也可以通过使用它来调用你在expandate()中定义的上一步中定义的sigmoid()函数:

A = sigmoid(np.dot(w.T,X) + b)

您的工作证明没有必要,但它有点清洁。