The first difference between the supervised learning and the unsupervised learning occurs in the data that is being used in any of the two machine learning. In supervised learning, the input data that is used there is labeled and well known. This simply denotes that the machine is meant to distinguish between the hidden patterns and the already labeled data.
Conversely, in supervised learning, the input data used there is neither known nor labeled. Hence, the machine is designed to give categories and then label the raw data, after which it goes ahead to determine the functions of the input data and the hidden patterns. The complexity in computation is another difference between the supervised learning and the unsupervised learning.
On a general note, the supervised learning is considered to be more complex when compared to the unsupervised learning. This is most likely due to the fact that you will have to understand and label the input data in supervised learning; but in unsupervised learning, you are not required to fully understand and label the input data.