What is the difference between supervised learning and unsupervised learning?

I’m newbie to Machine Learning and would like to understand what is the difference between supervised and unsupervised learning. It will be good if you can explain with examples.

In machine learning, we basically derive patterns or predictions based on the past data.

Supervised Machine Learning

The problems in which are given the past data with input and expected output, and objective is to find the output for unseen inputs. The input data is generally made up rows where each row represents a sample point. The columns of each row represents the characteristics or features of the sample point also called instance. The output is called labels.

In supervised learning problems, given training data with labels, we have to predict the labels of some unseen test data.

Examples of supervised learning methods are Regression, Decision Trees, Neural Networks.

Unsupervised learning problems

The problems in which we do not have the labels and the objective is generally to find a pattern in the data such as outlier detection, reducing the dimensions, forming clusters, creating hierarchy from the data are called unsupervised learning problems.