In this post, you will learn about **when to use Scikit-learn vs Tensorflow. **For data scientists/machine learning enthusiasts, it is very important to understand the **difference** such that they could use these libraries appropriately while working on different business use cases.

## When to use Scikit-learn?

Scikit-learn is a **great entry point for beginners data scientists**. It provides an** efficient implementation of many machine learning algorithms**. In addition, it is very **simple** and **easy to use.** You can get started with Scikit-learn in a very easy manner by using Jupyter notebook. Scikit-learn can be used to solve different kinds of machine learning problems including some of the following:

- Classification (SVM, nearest neighbors, random forest, logistic regression, etc)
- Regression (SVR, nearest neighbors, random forest, etc)
- Clustering (K-means, spectral clustering, etc)
- Model selection (grid search, cross-validation, metrics etc)
- Dimensionality reduction (K-means, feature selection, etc)

Scikit-learn mainly works with tabular data.

## When to use Tensorflow?

Tensorflow, on the other hand, makes it possible to **train and run very large neural networks **efficiently based on deep learning algorithms by **distributing** **the computations** across potentially **thousands of multi-GPU servers**. It is a more complex library for distributed numerical computation using data flow graphs. Simply speaking, **Tensorflow** is a low-level library that is used for **deep learning models**, unlike** scikit-learn** which can be considered as the high-level library used to train classical **machine learning models**.

Tensorflow works with a variety of data such as tabular, text, images, audio, and video.

## Leave a Reply