Today, corporations like Google, Facebook and Microsoft have been dominating tools and deep learning frameworks that AI researchers use globally. Many of their open-source libraries are now gaining popularity on GitHub, which is helping budding AI developers across the world build flexible and scalable machine learning models.
From conversational chatbot, self-driving cars to the weather forecast and recommendation systems, AI developers are experimenting with various neural network architectures, hyperparameters, and other features to fit the hardware constraints of edge platforms. The possibilities are endless. Some of the popular deep learning frameworks include Google’s TensorFlow and Facebook’s Caffe2, PyTorch, Torchcraft AI and Hydra, etc.
According to Statista, AI business operations global revenue is expected to touch $10.8 billion by 2023, and the natural language processing (NLP) market size globally is expected to reach $43.3 billion by 2025. With the rise of AI adoption across businesses, the need for open-source libraries and architecture will only increase in the coming months.
Sign up for your weekly dose of what's up in emerging technology.
Advancing in artificial intelligence, Facebook AI Research (FAIR) at present is leading the AI race with the launch of state of the art technology tools, libraries and frameworks to bolster machine learning and AI applications across the globe.
Source: Analytics India Magazine
Here are some of the latest open-source tools, libraries and architecture developed by Facebook:
PyTorch is the most widely used deep learning framework, besides Caffe2 and Hydra, which helps researchers build flexible machine learning models.
PyTorch provides a Python package for high-level features like tensor computation (NumPy) with strong GPU acceleration and TorchScript for an easy transition between eager mode and graph mode. Its latest release provides graph-based execution, distributed training, mobile deployment and more.
Flashlight is an open-source machine learning library that lets users execute AI/ML applications using C++ API. Since it supports research in C++, Flashlight does not need external figures or bindings to perform tasks such as threading, memory mapping, or interoperating with low-level hardware. Thus, making the integration of code fast, direct and straightforward.
Opacus is an open-source high-speed library for training PyTorch models with differential privacy (DP). The library is claimed to be more scalable than existing methods. It supports training with minimal code changes and has little impact on training performance. It also allows the researchers to track the privacy budget expended at any given moment.
PyTorch3D is a highly modular and optimised library that offers efficient, reusable components for 3D computer vision research with the PyTorch framework. It is designed to integrate smoothly with deep learning methods for predicting and manipulating 3D data. As a result, the library can be implemented using PyTorch tensors, handle mini-batches of heterogeneous data, and utilise GPUs for acceleration.
Detectron2 is a next-generation library that provides detection and segmentation algorithms. It is a fusion of Detectron and maskrcnn-benchmark. Currently, it supports several computer vision research work and applications. Detection can be used on Mask R-CNN, RetinaNet, Faster R-CNN, RPN, TensorMask as well.
Detectron is an open-source software architecture that implements object detection algorithms like Mask R-CNN. The software has been written in Python and powered by the Caffe2 deep learning framework.
Detectron has enabled various research project at Facebook, including Feature pyramid networks for object detection, Mask R-CNN, non-local neural networks, detecting and recognising human-object interactions, learning to segment everything, data distillation: towards Omni-supervised learning, focal loss for dense object detection, DensePose: dense human pose estimation in the wild, and others.
Prophet is an open-source architecture released by Facebook’s core data science team. It is a procedure for forecasting time series data based on an additive model where non-linear trends fit yearly, weekly, and daily seasonality, plus holiday effects. The model works best with time-series data, which has several seasons of historical data such as weather records, economic indicators and patient health evolution metrics.
Classy Vision is a new end-to-end PyTorch-based framework for large-scale training of image and video classification models. Unlike other computer vision (CV) libraries, Classy Vision claims to offer flexibility for researchers.
Typically, most CV libraries lead to duplicative efforts and require users to migrate research between frameworks and relearn the minutiae of efficient distributed training and data loading. On the other hand, Facebook’s PyTorch-based CV framework claimed to offer a better solution for training at scale and deploying to production.
BoTorch is a library for Bayesian optimization built on the PyTorch framework. Bayesian optimization is a sequence design strategy for machines that do not assume any functional forms.
BoTorch seamlessly provides a modular and easily extensible interface for composing Bayesian optimization primitives such as probabilistic models, acquisition functions and optimizers and others. In addition to this, it also enables seamless integration with deep or convolutional architectures in PyTorch.
FastText is an open-source library for efficient text classification and representation learning. It works on standard and generic hardware. Machine learning models can be further reduced on mobile devices as well.
TC is a fully-functional C++ library that automatically synthesises high-performance machine learning kernels using Halide, ISL, NVRTC or LLVM. The library can be easily integrated with Caffe2 and PyTorch and has been designed to be highly portable and machine-learning framework agnostic. Also, it requires a simple tensor library with memory allocation, offloading, and synchronisation capabilities.