generator.py 578 B

123456789101112131415161718192021222324252627282930
  1. # Generate neural network
  2. from lab import neural
  3. import numpy as np
  4. # Random generators
  5. def uniform(layer):
  6. # TODO
  7. return layer
  8. def gaussUnitDev(layer):
  9. return np.random.normal(size = layer.shape)
  10. def gaussAdaptedDev():
  11. # TODO
  12. return layer
  13. # Network weight initialization
  14. def generate(activation, derivative, weightGenerator = None):
  15. """
  16. Weight generator can be
  17. np.random.normal
  18. """
  19. net = neural.Network(activation, derivative)
  20. if (weightGenerator is not None):
  21. net.layer1 = weightGenerator(net.layer1)
  22. net.layer2 = weightGenerator(net.layer2)
  23. return net