refactored part of learnable network(need to be tested
module structure for learnable network