Learning from Weak and Noisy Labels for Semantic Segmentation