Machine Learning

Top Machine Learning Frameworks used by Data Scientists

Here are the Top ML frameworks used by data scientists in 2021.

Benedict Neo
bitgrit Data Science Publication
8 min readJan 5, 2022

--

Photo by Ales Nesetril on Unsplash

Wondering what are the top ML frameworks used by working data scientists today? Here’s what over 25,000 data scientists and ML engineers have to say.

If you don’t know, machine learning frameworks are interfaces that help data scientists worldwide build and design ML models faster and easier.

According to the State of Data Science and Machine Learning 2021, here are the top machine learning frameworks used by working data scientists.

source

As Data Scientists, it’s important to stay up to date with the latest technology as data science is a fast-changing field. That said, there are a few key technologies that every data scientist should know and learn about.

To help you know more about these frameworks, this article will give a brief introduction to them, along with helpful tutorials and articles for each of them.

Let’s dive in!

1. scikit-learn

What started out as a Google Summer of Code is now known as the swiss army knife in the ML world, as it applies to most projects. Based on the survey, it was the top ML framework used, with over 80% of data scientists using it.

scikit-learn can perform all the necessary tasks in ML — classification, regression, clustering, dimensionality reduction, model selection, pre-processing.

Tutorials

Resources

2. TensorFlow

Developed by researchers and engineers working on the Google Brain team, TensorFlow is an end-to-end open-source platform for machine learning.

It has a comprehensive, flexible ecosystem of tools, libraries, and community resources that lets researchers push the state-of-the-art in ML and developers easily build and deploy ML-powered applications. It’s also robust and can be easily trained and deployed in the cloud, in browsers, or even on-device in multiple languages.

Tutorials

Resources

3. XGBoost

eXtreme Gradient Boosting or better known as XGBoost initially started as a research project by Tianqi Chen, and now it’s one of the most popular ML packages today, especially in Data Science competitions.

It is an optimized distributed gradient boosting library designed to be highly efficient, flexible, and portable. It implements machine learning algorithms under the Gradient Boosting framework.

Tutorials

Resources

4. Keras

Keras is an API designed for human beings, not machines. Keras follows best practices for reducing cognitive load: it offers consistent & simple APIs, it minimizes the number of user actions required for common use cases, and it provides clear & actionable error messages.

Tutorials

Resources

5. PyTorch

PyTorch is an open-source machine learning framework developed by Facebook’s AI Research lab (FAIR). It accelerates the path from research prototyping to production deployment.

It is production-ready, allowing for scalable distributed training and performance optimization. It also has a rich ecosystem of tools and libraries that extends PyTorch and supports development in computer vision, NLP, and more.

Tutorials

Resources

6. LightGBM

LightGBM is a fast, distributed, high-performance gradient boosting (GBT, GBDT, GBRT, GBM, or MART) framework based on decision tree algorithms, used for ranking, classification, and many other machine learning tasks.

It is designed to be distributed and efficient with the following advantages — faster training speed and higher efficiency, lower memory usage, better accuracy, support of parallel, distributed, and GPU learning, and capability of handling large-scale data.

Tutorials

Resources

7. CatBoost

The name comes from two words — “Category” and “Boosting”. CatBoost is another high-performance open-source library algorithm for gradient boosting on decision trees.

It was developed by Yandex researchers and engineers and is used for search, recommendation systems, personal assistants, self-driving cars, weather prediction, and many other tasks at Yandex and in other companies, including CERN, Cloudflare, Careem Taxi. It is open-source and can be used by anyone.

Tutorials

Resources

8. HuggingFace

Hugging Face was initially a company that built a chat app for bored teens. Today, it’s an NLP-focused startup with a large open-source community, particularly around the Transformers library. The company aims to advance NLP and democratize it for use by everyone.

On their website, you can find tons of NLP models that perform tasks such as summarization, text generation, translation, etc., datasets for you to train your own models, and spaces where you can host your ML apps for free!

Tutorials

Resources

9. Prophet

Prophet is an open-source time series forecasting software released by Facebook’s Core Data Science team. It provides features for forecasting time series data based on an additive model where non-linear trends are fit with yearly, weekly, and daily seasonality, plus holiday effects.

It works best with time series that have strong seasonal effects and several seasons of historical data. It’s also robust to missing data and shifts in the trend and typically handles outliers well.

Tutorials

Resources

10. Caret

The caret package (short for Classification And REgression Training) is a package in R that provides a set of functions that attempt to streamline the process for creating predictive models.

The package contains tools for data splitting, pre-processing, feature selection, model tuning using resampling, and variable importance estimation.

Tutorials

Resources

11. PyTorch Lightning

PyTorch Lightning was started by William Falcon while completing his Ph.D. AI research at NYU CILVR and Facebook AI Research, with the vision of making it a foundational part of everyone’s deep learning research code. It essentially provides a high-level interface for PyTorch, a popular deep learning framework.

It is a lightweight and high-performance framework that organizes PyTorch code to decouple the research from the engineering, making deep learning experiments easier to read and reproduce.

It is designed to create scalable deep learning models that can easily run on distributed hardware while keeping the model’s hardware agnostic.

Tutorials

Resources

12. Fast.ai

Fastai is the first deep learning library to provide a single consistent interface to all the most commonly used deep learning applications for vision, text, tabular data, time series, and collaborative filtering.

Fastai library is written in Python; it’s open-source and built on top of PyTorch, one of the leading modern and flexible deep learning frameworks.

It has been created with one main purpose, making AI easy and accessible to all, especially to people from different backgrounds, skills, knowledge, and resources, beyond that of scientists and machine learning experts.

Tutorials

Resources

13. Tidymodels

If you’ve heard or used the caret package, tidymodels is its successor. The tidymodels framework is a collection of packages for modeling and machine learning that share the underlying design philosophy, grammar, and data structures of the tidyverse principles.

Its ecosystem contains more packages that provide functionality for data splitting and resampling, modeling, data pre-processing, hyperparameter tuning, performance metrics, etc.

Tutorials

Resources

14. H2O

H2O v3 is a free, open-source library on python/R that contains many ML algorithms, models, and tuning features that make machine learning more efficient.

H2O provides implementations of many popular algorithms such as Generalized Linear Models (GLM), Gradient Boosting Machines (including XGBoost), Random Forests, Deep Neural Networks, Stacked Ensembles, Naive Bayes, Generalized Additive Models (GAM), Cox Proportional Hazards, K-Means, PCA, Word2Vec, as well as a fully automatic machine learning algorithm (H2O AutoML).

Tutorials

Resources

15. Apache MXNet

Apache MXNet is an open-source deep learning software framework used to train and deploy deep neural networks. The MXNet library is portable and lightweight.

It’s accelerated with the NVIDIA Pascal™ GPUs and scales across multiple GPUs and multiple nodes, allowing you to train models faster. It also allows you to define, train, and deploy deep neural networks on a wide array of devices, from cloud infrastructure to mobile devices.

Tutorials

Resources

16. JAX

Jax is a Python library designed for high-performance ML research. Jax is nothing more than a numerical computing library, just like Numpy, but with some key improvements.

It was developed by Google and used internally both by Google and Deepmind teams. JAX is Autograd and XLA, brought together for high-performance machine learning research.

Tutorials

Resources

There is one library missing from the list that I think deserves an honorable mention. And that library is…

17. PyCaret

If you use scikit-learn, XGBoost, LightGBM, CatBoost, spaCy, Optuna, and more, you should know about PyCaret.

PyCaret is an open-source, low-code machine learning library in Python that automates machine learning workflows. It is an end-to-end machine learning and model management tool that speeds up the experiment cycle exponentially and makes you more productive.

It is essentially a Python wrapper around several machine learning libraries and frameworks. It’s easy-to-use and is a business-ready solution.

Tutorials

Resources

Conclusion

Those were the top ML libraries used in 2021.

Will 2022 introduce us to new revolutionary ML libraries? It’s unlikely that these ML libraries will go away soon, so start exploring these libraries now and use them in your projects!

Happy New Year 🎆

Follow the Bitgrit Data Science Publication for more articles in 2022!

Join our new ✨ discord server and hang out with other data scientists around the world!

Follow Bitgrit’s socials 📱 to stay updated on workshops and upcoming competitions!

--

--