FFNet_Matrix.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef _FFNet_Matrix_h_
  2. #define _FFNet_Matrix_h_
  3. /* FFNet_Matrix.h
  4. *
  5. * Copyright (C) 1997-2017 David Weenink
  6. *
  7. * This code is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or (at
  10. * your option) any later version.
  11. *
  12. * This code is distributed in the hope that it will be useful, but
  13. * WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. * General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this work. If not, see <http://www.gnu.org/licenses/>.
  19. */
  20. /*
  21. djmw 19950206
  22. djmw 20020712 GPL header
  23. djmw 20110307 Latest modification
  24. */
  25. #include "Matrix.h"
  26. #include "FFNet.h"
  27. /* The Matrix organization is as follows: */
  28. /* */
  29. /* nx = nUnitsInLayer[layer] */
  30. /* ny = nUnitsInLayer[layer-1]+1 */
  31. /* xmin = 1 xmax = nx */
  32. /* ymin = 1 ymax = ny */
  33. /* dx = dy = 1 */
  34. /* x1 = y1 = 1 */
  35. /* */
  36. autoMatrix FFNet_weightsToMatrix (FFNet me, integer layer, bool deltaWeights);
  37. /* (delta) weights connected to layer into Matrix */
  38. autoFFNet FFNet_weightsFromMatrix (FFNet me, Matrix matrix, integer layer);
  39. /* creates a new FFNet in which the weights that connect to layer are */
  40. /* replaced by the weights in the matrix */
  41. #endif /* _FFNet_Matrix_h_ */