Artificial intelligence is the ability of machines to learn and solve problems like humans. There are two main types of machine learning: supervised learning, where the machine is provided labeled input and output data to learn from, and unsupervised learning, where only unlabeled input data is provided. Supervised learning techniques include regression and classification, while unsupervised techniques include clustering and association. Some applications of AI include medical image analysis, autonomous vehicle control, games, robotic toys, bioinformatics, text analysis and natural language processing.