Common packages

This page provides support with commonly used python packages and libraries, for tasks such as machine learning, numerical analysis, and data manipulation and visualization.

Machine Learning

The major machine learning python package is sk-learn. This library provides interfaces and APIs for the most common ML algorithms such as SVM, PCA, linear regression, nearest neighbors, and the likes, as well as functions for data preprocessing, and dataset handling. Moreover, it is designed to work seamlessly with numpy, matplotlib, and others.

Deep learning

There are many deep learning libraries, such as TensorFlow, Theano, PyTorch, CNTK, or Caffe. These are low-level libraries providing high performances at the price of a steel learning curve.

Most often, it is desirable to use a high-level library which employs any of the above as backends. The most common ones are:

  • keras: APIs implementing most common neural network building blocks such as dense layers, convolutional layers, LSTM units, batch normalization, and various optimizers (SGD, Adam, Adagrad...). Supports TensorFlow, Theano, and CNTK as backends.

  • fast.ai: high-level platform based on PyTorch, for easily develop and train deep models using current best practices. The same developer team offers highly accessible online courses on deep learning.

Audio processing

  • libROSA: audio analysis, feature extraction, music information retrieval

  • scipy.signal: signal processing, linear time-invariant systems, spectral analysis

Data manipulation/visualization

  • pandas: data analysis and manipulation

  • matplotlib: plotting (similar to MATLAB)

  • numpy: numerical analysis, multi-dimensional matrices and arrays

Sample conda environment

Tensorflow/keras

Last updated