Use weak-pointer for Controllable learning