MCPcopy Create free account
hub / github.com/lazyprogrammer/machine_learning_examples / derivative_w2

Function derivative_w2

ann_class/backprop.py:37–67  ·  view source on GitHub ↗
(Z, T, Y)

Source from the content-addressed store, hash-verified

35
36
37def derivative_w2(Z, T, Y):
38 N, K = T.shape
39 M = Z.shape[1] # H is (N, M)
40
41 # # slow
42 # ret1 = np.zeros((M, K))
43 # for n in xrange(N):
44 # for m in xrange(M):
45 # for k in xrange(K):
46 # ret1[m,k] += (T[n,k] - Y[n,k])*Z[n,m]
47
48 # # a bit faster - let's not loop over m
49 # ret2 = np.zeros((M, K))
50 # for n in xrange(N):
51 # for k in xrange(K):
52 # ret2[:,k] += (T[n,k]* - Y[n,k])*Z[n,:]
53
54 # assert(np.abs(ret1 - ret2).sum() < 0.00001)
55
56 # # even faster - let's not loop over k either
57 # ret3 = np.zeros((M, K))
58 # for n in xrange(N): # slow way first
59 # ret3 += np.outer( Z[n], T[n] - Y[n] )
60
61 # assert(np.abs(ret1 - ret3).sum() < 0.00001)
62
63 # fastest - let's not loop over anything
64 ret4 = Z.T.dot(T - Y)
65 # assert(np.abs(ret1 - ret4).sum() < 0.00001)
66
67 return ret4
68
69
70def derivative_w1(X, Z, T, Y, W2):

Callers 1

mainFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected