We may earn an affiliate commission when you visit our partners.
Course image
Course image
Coursera logo

Machine Learning

Concepts and Applications

Dr. Nick Feamster

This course gives you a comprehensive introduction to both the theory and practice of machine learning. You will learn to use Python along with industry-standard libraries and tools, including Pandas, Scikit-learn, and Tensorflow, to ingest, explore, and prepare data for modeling and then train and evaluate models using a wide variety of techniques. Those techniques include linear regression with ordinary least squares, logistic regression, support vector machines, decision trees and ensembles, clustering, principal component analysis, hidden Markov models, and deep learning.

Read more

This course gives you a comprehensive introduction to both the theory and practice of machine learning. You will learn to use Python along with industry-standard libraries and tools, including Pandas, Scikit-learn, and Tensorflow, to ingest, explore, and prepare data for modeling and then train and evaluate models using a wide variety of techniques. Those techniques include linear regression with ordinary least squares, logistic regression, support vector machines, decision trees and ensembles, clustering, principal component analysis, hidden Markov models, and deep learning.

A key feature of this course is that you not only learn how to apply these techniques, you also learn the conceptual basis underlying them so that you understand how they work, why you are doing what you are doing, and what your results mean. The course also features real-world datasets, drawn primarily from the realm of public policy. It is based on an introductory machine learning course offered to graduate students at the University of Chicago and will serve as a strong foundation for deeper and more specialized study.

Enroll now

What's inside

Syllabus

Machine Learning and the Machine Learning Pipeline
In this module you will be introduced to the machine-learning pipeline and learn about the initial work on your data that you need to do prior to modeling. You will learn about how to ingest data using Pandas, a standard Python library for data exploration and preparation. Next, we turn to the first approach to modeling that we explore in this class, linear regression with ordinary least squares.
Read more
Least Squares and Maximum Likelihood Estimation
In this module, you continue the work that we began in the last with linear regressions. You will learn more about how to evaluate such models and how to select the important features and exclude the ones that are not statistically significant. You will also learn about maximum likelihood estimation, a probabilistic approach to estimating your models.
Basis Functions and Regularization
This module introduces you to basis functions and polynomial expansions in particular, which will allow you to use the same linear regression techniques that we have been studying so far to model non-linear relationships. Then, we learn about the bias-variance tradeoff, a key relationship in machine learning. Methods like polynomial expansion may help you train models that capture the relationship in your training data quite well, but those same models may perform badly on new data. You learn about different regularization methods that can help balance this tradeoff and create models that avoid overfitting.
Model Selection and Logistic Regression
In this module, you first learn more about evaluating and tuning your models. We look at cross validation techniques that will help you get more accurate measurements of your model's performance, and then you see how to use them along with pipelines and GridSearch to tune your models. Finally, we look a the theory and practice of our first technique for classification, logistic regression.
More Classifiers: SVMs and Naive Bayes
You will learn about two more classification techniques in this module: first, Support Vector Machines (SVMs) and then Naive Bayes, a quick and highly interpretable approach that uses Bayes' theorem.
Tree-Based Models, Ensemble Methods, and Evaluation
In this module, you will first learn about classification using decision trees. We will see how to create models that use individual decision trees, and then ensemble models, which use many trees, such as bagging, boosting, and random forests. Then, we learn more about how to evaluate the performance of classifiers.
Clustering Methods
To this point, we have been focusing on supervised learning and training models that estimate a target variable that you have specified. In this module, we take our first look at unsupervised learning, a domain of machine learning that uses techniques to find patterns and relationships in data without you ever defining a target. In particular, we look at a variety of clustering techniques, beginning with k-means and hierarchical clustering, and then distribution and density-based clustering.
Dimensionality Reduction and Temporal Models
You will look at two new techniques in this module. The first is Principal Component Analysis, a powerful dimensionality reduction technique that you can use to project high-dimensional features into lower-dimensional spaces. This can be used for a range of purposes, including feature selection, preventing overfitting, visualizing in two- or three-dimensional spaces higher dimensional data, and more. Then, you will study hidden Markov models, a technique that you can use to model sequences of states, where each state depends on the one that came before.
Deep Learning
This module introduces you to one of the most hyped topics in machine learning, deep learning with feed-forward neural networks and convolutional neural networks. You will learn about how these techniques work and where they might be very effective--or very ineffective. We explore how to design, implement, and evaluate such models using Python and Keras.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Introduces learners to the conceptual underpinnings of machine learning, so they understand not only how to use techniques but why
Uses Pandas, a popular Python library in industry, for data prep, making skills very relevant to industry
Taught by a professor at the University of Chicago, a highly respected academic program in computer science, building confidence in the course materials
Develops skills and knowledge important to public policy, a field with growing demand for data analysis
Builds a strong foundation in machine learning for those who want to move on to more advanced studies
May not be suitable for beginners without some prior background knowledge in computer science and statistics

Save this course

Save Machine Learning: Concepts and Applications to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Machine Learning: Concepts and Applications with these activities:
Review different types of machine learning algorithms
Identify and practice skills in different types of machine learning algorithms to prepare for this course's lecture materials.
Show steps
  • Identify the main types of machine learning algorithms, such as supervised, unsupervised, and reinforcement learning.
  • Understand the differences between different types of supervised learning algorithms, such as linear regression, logistic regression, and decision trees.
  • Get familiar with different types of unsupervised learning algorithms, such as clustering, dimensionality reduction, and anomaly detection.
Practice Python coding
Ensure familiarity and comfort with Python coding syntax, variable types, and data structures.
Browse courses on Python
Show steps
  • Review Python syntax and data types
  • Solve coding exercises on platforms like HackerRank or CodeChef
Review basic probability and statistics
Strengthen understanding of fundamental concepts like probability distributions, statistical inference, and hypothesis testing.
Browse courses on Probability
Show steps
  • Review lecture notes or textbooks on basic probability and statistics
  • Practice solving probability and statistics problems
Six other activities
Expand to see all activities and additional details
Show all nine activities
Solve practice problems from the course textbook
Apply course concepts and techniques to real-world scenarios, reinforcing understanding and identifying areas for improvement.
Show steps
  • Work through practice problems at the end of each textbook chapter
  • Compare solutions with classmates or online forums
Follow online tutorials on machine learning algorithms
Gain hands-on experience implementing machine learning algorithms, enhancing practical skills and deepening conceptual understanding.
Show steps
  • Identify reputable online tutorials on specific machine learning algorithms
  • Follow the tutorials, implementing the algorithms and testing them on sample datasets
Participate in study groups with classmates
Foster collaboration and improve understanding through group discussions, diverse perspectives, and peer support.
Show steps
  • Form a study group with 3-5 classmates
  • Meet regularly to discuss course material, solve problems, and quiz each other
Create visualizations to explain machine learning concepts
Demonstrate understanding of machine learning concepts by creating visual representations, improving retention and communication skills.
Show steps
  • Choose a machine learning concept to explain
  • Design a visualization that effectively conveys the concept
  • Create the visualization using tools like Tableau or Power BI
Participate in Kaggle competitions
Test skills and knowledge in a competitive environment, fostering problem-solving abilities and exposure to real-world machine learning applications.
Show steps
  • Identify a Kaggle competition that aligns with course topics
  • Build a machine learning model and submit predictions
  • Analyze results and compare them with other participants
Contribute to open-source machine learning projects
Gain practical experience and contribute to the machine learning community by collaborating on open-source projects.
Show steps
  • Identify open-source machine learning projects that interest you
  • Find a way to contribute, such as fixing bugs, adding new features, or improving documentation
  • Submit your contributions to the project repository

Career center

Learners who complete Machine Learning: Concepts and Applications will develop knowledge and skills that may be useful to these careers:
Machine Learning Engineer
A Machine Learning Engineer designs, develops, and deploys machine learning models. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Data Scientist
A Data Scientist uses machine learning to solve real-world problems. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Data Analyst
A Data Analyst uses data to solve business problems. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Business Analyst
A Business Analyst uses data to identify and solve business problems. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Product Manager
A Product Manager uses data to make decisions about product development and marketing. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Consultant
A Consultant uses data to help clients solve problems. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Statistician
A Statistician uses data to solve problems. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Software Engineer
A Software Engineer designs, develops, and deploys software. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Quantitative Analyst
A Quantitative Analyst uses data to make investment decisions. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Operations Research Analyst
An Operations Research Analyst uses data to solve problems in business and industry. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Actuary
An Actuary uses data to assess risk and uncertainty. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Economist
An Economist uses data to study the economy. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Financial Analyst
A Financial Analyst uses data to make investment decisions. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
Market Research Analyst
A Market Research Analyst uses data to understand consumer behavior. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.
User Experience Researcher
A User Experience Researcher uses data to understand how people interact with products and services. This course provides a comprehensive introduction to machine learning, including both the theory and practice. You will learn how to use Python along with industry-standard libraries and tools to ingest, explore, and prepare data for modeling, and then train and evaluate models using a wide variety of techniques.

Reading list

We've selected 11 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Machine Learning: Concepts and Applications.
Provides a comprehensive overview of statistical learning. It covers a wide range of topics from linear regression to support vector machines. It good resource for those who want to understand the theoretical foundations of statistical learning.
Provides a comprehensive overview of deep learning. It covers a wide range of topics from neural networks to convolutional neural networks. It good resource for those who want to learn about the latest developments in deep learning.
Provides a comprehensive overview of machine learning with R. It covers a wide range of topics from supervised learning to unsupervised learning. It good resource for those who want to learn about the latest developments in machine learning with R.
Provides a comprehensive overview of machine learning. It covers a wide range of topics from supervised learning to unsupervised learning. It good resource for those who want to understand the theoretical foundations of machine learning.
Provides a comprehensive overview of deep learning with Python. It covers a wide range of topics from neural networks to convolutional neural networks. It good resource for those who want to learn about the latest developments in deep learning with Python.
Provides a probabilistic perspective on machine learning. It covers a wide range of topics from Bayesian inference to Gaussian processes. It good resource for those who want to understand the theoretical foundations of machine learning.
Provides a comprehensive overview of pattern recognition and machine learning. It covers a wide range of topics from discriminant analysis to Bayesian networks. It good resource for those who want to understand the theoretical foundations of machine learning used in pattern recognition.
Provides a comprehensive overview of machine learning with Scikit-Learn, Keras, and TensorFlow. It covers a wide range of topics from data preprocessing to model evaluation. It good resource for those who want to learn about the latest developments in machine learning with these popular frameworks.
Provides a practical introduction to machine learning. It covers a wide range of topics from data preprocessing to model evaluation. It good resource for those who want to get started with machine learning quickly.
Provides a practical introduction to machine learning. It covers a wide range of topics from data preprocessing to model evaluation. It good resource for those who want to get started with machine learning quickly.
Provides a gentle introduction to machine learning. It covers a wide range of topics from supervised learning to unsupervised learning. It good resource for those who want to understand the basics of machine learning without getting too technical.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Machine Learning: Concepts and Applications.
Predictive Analytics: Basic Modeling Techniques
Most relevant
Supervised Machine Learning: Regression
Most relevant
Building Machine Learning Models in Python with scikit...
Most relevant
Machine Learning with Python
Most relevant
Predictive Analytics Using Apache Spark MLlib on...
Most relevant
Linear Regression and Logistic Regression in Python
Most relevant
Complete Linear Regression Analysis in Python
Most relevant
Linear Regression and Logistic Regression using R Studio
Most relevant
Building Classification Models with scikit-learn
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser