对于CIFAR10数据集的多类别分类,我难以实现反向传播
我的神经网络有2层
X-> L1-> L2
权重w2初始化为随机
np.random.randn(L1.shape[0], X.shape[0]) * 0.01
X是大小的输入(no_features *示例数)
Z1 = (w1 * x) + b1
A1 = relu(Z1)
L1具有ReLu激活
Z2 = (w2 * A1) + b2
A2 = softmax(Z1)
L2具有softmax激活
使用此等式计算成本
cost = -(1/m)*np.sum((Y * np.log(A2) ) + ((1 - Y)*np.log(1-A2)))
计算成本导数
dA2 = -(1/m)*(np.divide(Y, A2) - np.divide(1 - Y, 1 - A2))
dA2 = A2的导数
Y =一个热编码的True值
现在如何从这里开始
我如何使用dA2找到dZ2(Z2的衍生物)