Supervised learning uses labeled input data to teach a machine using examples to predict future events, while unsupervised learning sorts unlabeled data without predefined labels by finding hidden patterns in the data. Supervised learning is used for applications like credit card fraud detection and text sentiment analysis and has labeled classification and regression algorithms, while unsupervised learning is applied to problems like image segmentation, social network analysis and anomaly detection using clustering and association algorithm types.