Facebook released its open-source machine learning library PyTorch in 2016. Developers and researchers were immediately hooked, and PyTorch’s popularity soared. Organisations such as Microsoft and Tesla also use Facebook’s brainchild to drive innovation and solve business challenges.
Below, we list some PyTorch-based projects for all the enthusiasts out there.
Sign up for your weekly dose of what's up in emerging technology.
CycelGAN for Image-To-Image Translation
Cycle Generative Adversarial Network or CycleGAN is a technique for automatic training of image-to-image translation models without using paired examples.
CycleGAN is made of two kinds of networks–discriminators and generators. While the discriminator classifies images as real or fake, generators create convincing fake images for both types of images. Unlike conventional methods that require generating synthetic image datasets of the given version with a specific modification, CycleGan is easy and inexpensive.
OneNet is an end-to-end fully convolutional one-stage object detector which eliminates the requirement for techniques such as non-maximal suppression. Instead, it introduces new techniques such as minimum cost assignment.
- End-to-end training
- No RoI operations
- Minimum cost of classification based label assignment as opposed to complex bipartite-matching.
Full paper link.
It is a natural language processing framework based on PyTorch for large scale deployment. PyText is a library built on PyTorch and open-sourced by parent company Facebook in 2018. The previous frameworks suffered from latency and memory problems in production. PyText provides a unified framework from research to production, thereby ensuring a simpler workflow with faster implementation.
Facebook has already deployed PyText in their video calling device portal, M suggestions of Facebook Messenger, DeepText, and Conversational AI.
ArtLine uses deep learning algorithms to produce quality line art portraits. Built using the APDrawing dataset and Anime line art pair, this project generates better high-quality images than the existing methods using PyTorch and Fastai libraries. However, this project’s limitation is that it needs smooth or plain backgrounds with good lighting to output quality results.
Human Pose Estimation and Tracking
This project is based on the 2018 research work titled ‘Simple Baselines for Human Pose Estimation and Tracking’. The research offers simple and effective baseline methods for evaluating new ideas in the field of pose tracking and estimation.
Post estimation in the experiment is based on deconvolutional layers added on the ResNet (Residual Network), a kind of artificial neural network. In terms of pose estimation, the project achieved an improvement of 0.7 percent in the mean average precision (mAP) on Common Objects in Context (COCO) dataset compared to its predecessor. For Pose tracking, this experiment shows an improvement of 51.8 percent on mAP score on the previous best.
The project is carried out using Python 3.6 on Ubuntu 16.04. The code is developed and tested using four NVIDIA P100 GPU cards.
Link to the GitHub project.
Find the complete paper here.
Automatic Speech Recognition System
This open-source project is based on the research work titled, ‘Adversarial Training of End-to-end Speech Recognition Using a Criticising Language Model’. Implemented mostly with Pytorch, this end-to-end ASR is based on listen, attend, and spell model — a neural network that can transcribe speech utterances to text characters.
Full paper link
Multi-Class Text Classification
This project demonstrates how multi-class classification can be done using TorchText — a natural language processing library in PyTorch with data processing utilities and popular datasets.
The model is composed of EmbeddingBag layers, which deals with the text entries of varying length by calculating the mean value of embedding ‘bags’. Besides, the model also has a linear layer. This model is trained on DBpedia data which consists of 14 classes. It has 630,000 text instances, 560,000 training instances, and 70,000 test instances.Click here for further details.