This document provides an overview of machine learning and artificial intelligence concepts. It begins with definitions of learning and machine learning. Machine learning is described as programming computers to optimize performance using example data. Common machine learning algorithms like linear regression, naive Bayes, decision trees, and k-means clustering are discussed along with applications. Artificial neural networks and the perceptron learning algorithm are explained in detail. The key point is that perceptron learning will always find weights to correctly classify inputs if a linear solution exists.