This document is a project report on machine learning submitted by Mohit Modyani towards the partial fulfillment of his bachelor's degree. The report defines machine learning and discusses various machine learning methods including supervised learning, unsupervised learning, semi-supervised learning, and reinforcement learning. It provides examples of applications of machine learning such as speech recognition, pattern recognition, optical character recognition and more. The report also covers challenges and the future of machine learning.