This document discusses machine learning techniques for intrusion detection systems. It begins by defining intrusion detection systems and the two main approaches of anomaly detection and misuse detection. It then discusses several machine learning techniques that can be used for anomaly detection, including single classifiers like k-nearest neighbors, support vector machines, artificial neural networks, and decision trees. It also covers hybrid and ensemble classifiers. It notes challenges in intrusion detection like the high costs of errors, diversity of network traffic, and lack of training data. It concludes with recommendations for using machine learning like understanding the system, threat model, and reducing costs and scope.