Since the release of PyTorch in 2016, it is on a rollercoaster ride as its adoption among developers and researchers is continually increasing. Although it was released long after one of the most popular deep learning frameworks TensorFlow, over the years, PyTorch has quickly gained grounds and has overtaken advantage its competitors had due to their early release.
Numerous organisations are utilising PyTorch in their business processes to innovate and eliminate various business challenges. More notably, Microsoft and Tesla have embraced PyTorch in their organisations for adding artificial intelligence capabilities. While Tesla has integrated it for autopilot in the car, Microsoft has been using it for internal developments and have also brought support on Azure.
The Rise Of PyTorch
As per reports, PyTorch grew 194% in the first half of 2019 alone (Jan-Jun 2018 to Jan-Jun 2019). The statistics were implemented based on the number of papers posted on arXiv.org. A total of 1,800 papers mentioned TensorFlow, while PyTorch more or less had similar mention in the papers. Which means it is on par with TensorFlow among researchers.
Earlier, deemed as a research-only library, PyTorch has now become a developer-friendly framework too. Although in the StackOverflow survey 2019, TensorFlow was head and shoulders ahead of PyTorch in popularity, PyTorch was 2nd in the most loved tools, whereas TensorFlow was a distant 5th.
This implies that people who are using PyTorch are willing to continue using it than the ones who are using TensorFlow. Developers who are dreaded about TensorFlow may well be moving towards PyTorch. Among many reasons, this could be the driving force behind the proliferation of PyTorch.
Advantages That Led To Increasing Adoption Of PyTorch
- TorchScript: One of the merits of PyTorch is its usability and readability. On the other hand, developers complain about boilerplate code, thereby, making it complex for new users. Although it has its own advantages, new users and researchers who mostly do not focus on production-level code, embrace PyTorch as coding is very straightforward. Torchscript delivers flexibility in transitioning between eager mode and graph mode for taking advantages of both the processes.
- Distributed Training: Through asynchronous execution, it helps researchers to parallelise computation for processing a large batch of input data. Researchers often prefer a plethora of data for their projects as their sole focus is to get the most accurate results. However, in production, organisations try to find the balance between quality and usability.
- Tools & Libraries: The above advantages, over the years, have led to an active community of researchers. Therefore, one can get more insightful support to mitigate their problems. Consequently, aspirants of deep learning technology are adopting PyTorch.
And with the latest addition of new features such as mobile, privacy, quantization, and named tensors, in PyTorch 1.3, it has further encouraged developers and researchers to develop robust deep learning products.
Poised To Further Gain Momentum Among Developers
Mobile Applications: While the TorchScript, distributed training, and libraries were empowering developers and researchers to streamline their workflows, with PyTorch 1.3, it has brought support to the model deployment to mobile devices. This has encouraged mobile app developers to leverage PyTorch and create production-level applications. Today, mobile applications play a very important role in every human life, thus businesses develop robust applications to offer their solutions and services.
Java programming dominance was powered due to the proliferation of Android applications. Similarly, one can foretell that PyTorch demand in business will gain momentum to offer end-to-end workflows while developing ML-based IoT applications.
Quantization: Another remarkable addition in PyTorch is Quantization for better performance at servers and edge through efficient use of server-side and on-device computation. This will further democratise Facebook’s ML library and make it developer-friendly.
Other Tools: PyTorch was already well designed and had the best readability and easy-to-code, but with the new release, it has further enhanced the ability to write clear algorithms for eliminating the need for inline comments.
Besides, the community has worked towards increasing its flexibility such that it can be utilized in the production. They have added additional tools and libraries to support model interpretability and bringing multimodal research to production.
Many GitHub popular projects have implemented PyTorch for their ML-projects. Such a rise in adoption has increased its community, thereby, it has now become easier for beginners to start learning with the community support.
PyTorch is no more only a research-friendly tool but has made its presence in developers and new data science aspirants. This has guided PyTorch to be on par with TensorFlow in the deep learning most popular frameworks. However, it has the potential to outpower TensorFlow in the future and become the go-to deep learning framework.