Machine learning (ML) expands the boundaries of what's possible by letting software do things that can't be done algorithmically. From fraud detection and sentiment analysis to spam filtering and facial recognition, it touches lives every day. Deep learning is a subset of machine learning that relies on deep neural networks. It is how computers identify objects in images, translate speech in real time, and perform other tasks that would have been impossible just a few short years ago.
Together, these technologies comprise what is popularly known as Artificial Intelligence, or AI. Learn the basics of machine learning and deep learning and discover how they can be used to solve business problems and write software that is smarter than ever before. And do your learning through a combination of lectures and hands-on exercises designed to impart the knowledge you need to skill up on the hottest technologies in software development.
Key Learning Areas
- Learn what ML and AI are
- Learn what ML and AI can (and cannot) do
- Learn how to build and consume sophisticated ML and AI models
- Learn how to solve business problems with ML and AI
- Learn how to write intelligent software that incorporates ML and AI
- Learn how to use Intelligence-as-a-Service in the form of Azure Cognitive Services
Introduction to Machine Learning
Learn what machine learning is, what types of machine-learning models there are, and how to use Scikit-learn to build simple unsupervised- and supervised-learning models using algorithms such as k-means clustering and k-nearest neighbors. Also learn the basics of data preparation.
Learn how to build supervised-learning models that use regression algorithms to predict numeric values such as how long a flight will be delayed or how much a house might sell for. Also learn how to score regression models for accuracy, how to handle categorical values in datasets, and about popular regression algorithms such as linear regression, random forests, and gradient-boosting machines (GBMs).
Learn how to build classification models that predict binary outcomes such as whether a flight will or will not arrive on time. Also learn about precision, recall, confusion matrices, and other metrics used to score binary-classification models, and how to build machine-learning models around textual data – for example, models that predict whether an e-mail is “spam” or “not spam” and models that analyze text for sentiment.
Learn how to build classification models that predict non-binary outcomes such as what character a hand-written digit represents or what category a document belongs to. Also take a deep dive into Support Vector Machines (SVMs), hyperparameter tuning, and data normalization, and put your skills to work building a facial-recognition model.
Azure ML Studio
Azure ML Studio is a browser-based tool that provides an easy to use, drag-and-drop interface for building machine-learning models. Learn the basics of using it and put it to work building a classification model that predicts who will survive the sinking of the RMS Titanic.
Operationalizing Machine-Learning Models
Machine-learning models built in Python are easily consumed from Python applications, but consuming them in other languages such as C# and Java is not so straightforward. Learn about various ways to operationalize ML models so they can be consumed by any application, regardless of platform or programming language. Also see an alternative way to build ML models in C# using ML.NET. Then test your skills by adding machine-learning capabilities to Microsoft Excel.
Deep learning is a form of machine learning that relies on neural networks. Learn what neural networks are, how they work, and why they are continually advancing the state of the art in machine learning.
Learn how to use Keras and TensorFlow to build sophisticated neural networks that perform regression or classification. Then put your skills to work building a neural network that does facial recognition.
Convolutional Neural Networks (CNNs)
State-of-the-art image classification typically isn't done with traditional neural networks. Rather, it is performed with Convolutional Neural Networks (CNNs), which excel at computer-vision tasks such as identifying objects in images. Learn what CNNs are and how they work, and learn how to use transfer learning to build sophisticated CNNs that can be trained on a laptop.
Azure Cognitive Services
Azure Cognitive Services is a set of cloud-based services and APIs for building intelligent applications in any language and on any platform. Backed by state-of-the-art ML and AI algorithms, they can caption images, analyze text for sentiment, determine whether a photo contains inappropriate content, translate speech in real time, and much more. Learn how to use Azure Cognitive Services to add intelligence to your apps, and then build a Web site that extracts text from uploaded images and translates that text into the language of your choice.
Most coding will be done in Python, so familiarity with Python is helpful but not required.