Deep learning for human engineered systems: Weak supervision, interpretability and knowledge embedding