*In the next few minutes, we shall get Numpy covered! An extremely popular core scientific computing Python library that every Machine Learning practitioner must be familiar with!*

** NumPy** —

*Num**erical*

*Py**thon*is a popular Python library for large

*multi-dimensional array*and

*matrix processing*, with the help of a large collection of high-level mathematical functions.

It is very useful for fundamental scientific computations in ** Machine Learning**. It is particularly useful for

*linear algebra*,

*Fourier transform*, and

*random number capabilities*. High-end libraries like

**uses NumPy internally for**

*TensorFlow**manipulation of Tensors*.

Numpy employes something called — ‘*Vectorization’.*

** Vectorization** is a powerful ability within Numpy to express operations as occurring on

*entire arrays*rather than their

*individual elements*.

Here’s a concise definition from ** Wes McKinney **—

*“This practice of replacing **explicit loops** with array expressions is commonly referred to as **vectorization**. In general, vectorized array operations will often be **one or two (or more) **orders of magnitude faster than their pure Python equivalents, with the biggest impact [seen] in any kind of numerical computations” — **Source**.*

** Why is this needed? **This basically enables a program to run a

*lot faster*and

*computationally simpler*relative to an ordinary program.

The

gistbelow demonstrates this very aspect.