Engineers and data scientists work with large amounts of data in a variety of formats such as sensor, image, video, telemetry, databases, and more. They use machine learning to find patterns in data and to build models that predict future outcomes based on historical data. With MATLAB®, you have immediate access to prebuilt functions, extensive toolboxes, and specialized apps for classification, regression, and clustering. You can:

  • Compare approaches such as logistic regression, classification trees, support vector machines, ensemble methods, and deep learning.
  • Use model refinement and reduction techniques to create an accurate model that best captures the predictive power of your data.
  • Integrate machine learning models into enterprise systems, clusters, and clouds, and target models to real-time embedded hardware.

Choosing the Best Classification Model and Avoiding Overfitting

Explore Products for Machine Learning

  • Statistics and Machine Learning Toolbox™
  • Neural Network Toolbox™
  • Computer Vision System Toolbox™
  • Fuzzy Logic Toolbox™


Build models to classify data into different categories. This can help you more accurately analyze and visualize your data.

You can use classification for applications such as credit scoring, tumor detection, and face recognition. Common algorithms for performing classification include support vector machine (SVM), boosted and bagged decision trees, k-nearest neighbor, Naïve Bayes, discriminant analysis, logistic regression, and neural networks.

You can use deep learning to achieve state-of-the-art accuracy in object classification using convolutional neural networks.

Classification Resources


Build models to predict continuous data. With this information, you can make predictions about future data points. Regression applications include electricity load forecasting, and algorithmic trading.

Common algorithms for performing regression include linear model, nonlinear model, regularization, stepwise regression, boosted and bagged decision trees, neural networks, and adaptive neuro-fuzzy learning.

Regression Resources


Find natural groupings and patterns in data. Clustering is used on unlabeled data to find natural groupings and patterns. Applications of clustering include pattern mining, medical imaging, and object recognition.

Common algorithms for performing clustering include k-means and k-medoids, hierarchical clustering, Gaussian mixture models, hidden Markov models, self-organizing maps, fuzzy c-means clustering, and subtractive clustering.

Machine Learning Community

Explore and share user-generated examples or toolboxes, and view MATLAB Answers for solutions to your questions.