added training init and requirements