| 69 | |
| 70 | |
| 71 | class HiddenLayer(object): |
| 72 | def __init__(self, M1, M2, f): |
| 73 | self.M1 = M1 |
| 74 | self.M2 = M2 |
| 75 | self.f = f |
| 76 | W = np.random.randn(M1, M2) * np.sqrt(2.0 / M1) |
| 77 | b = np.zeros(M2) |
| 78 | self.W = tf.Variable(W.astype(np.float32)) |
| 79 | self.b = tf.Variable(b.astype(np.float32)) |
| 80 | |
| 81 | def forward(self, X): |
| 82 | return self.f(tf.matmul(X, self.W) + self.b) |
| 83 | |
| 84 | |
| 85 | class ANN(object): |