libcm is a C development framework with an emphasis on audio signal processing applications.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

cmRbm.h 935B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef cmRbm_h
  2. #define cmRbm_h
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. //( { file_desc:"Restricted Bolzmann Machine object." kw:[model] }
  7. enum
  8. {
  9. kOkRbmRC = cmOkRC,
  10. kInvalidParmRbmRC,
  11. kStackFailRbmRC,
  12. kMonitorWrFailRbmRC
  13. };
  14. typedef cmHandle_t cmRbmH_t;
  15. typedef cmRC_t cmRbmRC_t;
  16. extern cmRbmH_t cmRbmNullHandle;
  17. cmRbmRC_t cmRbmAllocate( cmCtx_t* ctx, cmRbmH_t* hp, const unsigned nodesPerLayer[], unsigned layerCnt );
  18. cmRbmRC_t cmRbmFree( cmRbmH_t* hp );
  19. bool cmRbmIsValid( cmRbmH_t h );
  20. cmRbmRC_t cmRbmConfigure( cmRbmH_t h, const unsigned nodesPerLayerV[], unsigned layerCnt );
  21. typedef struct
  22. {
  23. double maxX;
  24. double minX;
  25. double initW;
  26. double eta; // learning rate
  27. double holdOutFrac;
  28. unsigned epochCnt;
  29. unsigned batchCnt;
  30. double momentum;
  31. } cmRbmTrainParms_t;
  32. void cmRbmBinaryTest(cmCtx_t* ctx);
  33. //)
  34. #ifdef __cplusplus
  35. }
  36. #endif
  37. #endif