The TensorFlow community at GitHub is a mature, established community, and it is one of the top Python packages used by the GitHub community. According to the latest State of the Octoverse report by GitHub, the top ten repositories here are based on the identified “topics” tag in /explore.
Also, similar to the trends on GitHub, developers are the most common users of this TensorFlow machine learning platform. As per the reports, the TensorFlow community depends on over 11,200 repositories — work of almost 380,000 contributors from over 200 countries and regions.
Below is a compilation of the top ten GitHub repositories that the TensorFlow community relied heavily upon, in 2020.
NumPy
About: NumPy is a popular fundamental package for scientific computing with Python. The package offers comprehensive mathematical functions, random number generators, linear algebra routines, Fourier transforms, and more.
Some of its features include —
- The NumPy vectorisation, indexing, and broadcasting concepts are the de-facto standards of array computing.
- It supports a wide range of hardware and computing platforms.
- The core of NumPy is well-optimised C code.
Know more here.
TensorFlow
About: TensorFlow is a popular, open-source machine learning framework for developers. It is an end-to-end open-source platform for machine learning that includes a comprehensive, flexible ecosystem of tools, libraries, and community resources. Originally developed by the Google Brain team, TensorFlow leverages Google’s machine intelligence in order to conduct machine learning and deep neural networks research.
Know more here.
Matplotlib
About: Matplotlib is a comprehensive library for creating static, animated, and interactive visualisations in Python. The library is well-known to produce publication-quality figures in various hardcopy formats and interactive environments across platforms. Matplotlib can be used in Python scripts, Python and IPython shells, web application servers, and various graphical user interface toolkits.
Know more here.
SciPy
About: SciPy is a popular open-source software for mathematics, science, and engineering. It includes modules for statistics, optimisation, integration, linear algebra, Fourier transforms, signal and image processing, ODE solvers, and more. The SciPy library is one of the core packages that make up the SciPy stack. It provides many user-friendly and efficient numerical routines, such as numerical integration, interpolation, optimisation, linear algebra, and statistics.
Know more here.
scikit-learn
About: scikit-learn is another well-known Python module for machine learning built on top of SciPy. scikit-learn works on any numeric data stored as NumPy arrays or SciPy sparse matrices.
Some of its features include —
- Simple and efficient tools for predictive data analysis
- It is built on NumPy, SciPy, and Matplotlib
- Accessible to everybody due to its open-source and commercially usable.
Know more here.
Pillow
About: Pillow is a Python Imaging Library (PIL) fork. The goal of this fork’s developer is to foster and support the active development of PIL through continuous integration testing. The Python Imaging Library adds image processing capabilities to a Python interpreter. Further, this library provides extensive file format support, an efficient internal representation, and fairly powerful image processing capabilities.
Know more here.
Six
About: Six is a Python 2 and 3 compatibility library. It provides utility functions for smoothing over the differences between the Python versions to write Python code compatible with both the versions. It is intended to support codebases that work on both Python 2 and 3 without modification. Six supports Python version 2.7 and 3.3+.
Know more here.
Pandas
About: Pandas is a popular, flexible data analysis and manipulation library for Python. The library provides labelled data structures similar to R data.frame objects, statistical functions, and much more.
Some of its features include —
- Easy handling of missing data
- Size mutability
- Automatic and explicit data alignment
- Flexible reshaping and pivoting of data sets
Know more here.
H5PY
About: The h5py package is a Pythonic interface to the HDF5 binary data format. It is a thin, pythonic wrapper around the HDF5, which runs on Python 3 (3.6+). The package allows developers to store huge amounts of numerical data, and easily manipulate that data from NumPy. H5py uses NumPy and Python metaphors, such as dictionary and NumPy array syntax.
Know more here.
Protocol Buffers
About: Protocol Buffers or protobuf are Google’s language-neutral, platform-neutral, extensible mechanism for serialising structured data. The protocol compiler is written in C++, and it currently supports generated code in Java, Python, Objective-C, and C++.
Know more here.