Memory usage in EvolutionWeighting
What data does RM need to retain as it processes multiple generations in an EvolutionaryWeighting node? I have a process that is trying to optimize attribute weights for a NearestNeighbor model, and I'm finding that after a relatively small number of generations (as low as 15), all the memory allocated to RM has been used, and the java process freezes.
This is on 32-bit Win XP, with a few thousands records in an example set, and about a dozen attributes. The relevant process snippet is:
EvolutionaryWeighting (50 generations, 5 population_size, using intermediate weights file, tournament selection, keep_best_individual)
-MemoryCleanUp (attempt to limit memory usage)
-OperatorChain
--XValidationParallel (5 validations, shuffled sampling)
---NearestNeighbor (k=10, weighted vote)
---OperatorChain
----ModelApplier
----Performance
---ProcessLog (logging generation, best, performance)
My hope was that I'd be able to leave the process running for a long time, potentially days, to allow it to evolve throughout the search space for a best answer, but the reality right now is that RM stalls out. No error message, just a lack of processing. Even the system time display fails to update. My guess is some sort of Java memory management, but I don't know if the amount of memory in use should grow so high or not.
Any ideas?
Thanks,
Keith
This is on 32-bit Win XP, with a few thousands records in an example set, and about a dozen attributes. The relevant process snippet is:
EvolutionaryWeighting (50 generations, 5 population_size, using intermediate weights file, tournament selection, keep_best_individual)
-MemoryCleanUp (attempt to limit memory usage)
-OperatorChain
--XValidationParallel (5 validations, shuffled sampling)
---NearestNeighbor (k=10, weighted vote)
---OperatorChain
----ModelApplier
----Performance
---ProcessLog (logging generation, best, performance)
My hope was that I'd be able to leave the process running for a long time, potentially days, to allow it to evolve throughout the search space for a best answer, but the reality right now is that RM stalls out. No error message, just a lack of processing. Even the system time display fails to update. My guess is some sort of Java memory management, but I don't know if the amount of memory in use should grow so high or not.
Any ideas?
Thanks,
Keith