Image for post
Image for post
Photo by @hasanalmasi

PyTorch Governance and History

PyTorch’s design philosophy and increasing popularity makes it an interesting programming language to better understand

It would be strange for an ‘outsider’ someone who does not frequently use PyTorch to write about governance and history within the programming language. I decided to try to map out parts and bits of the story as best as I can. Understanding this the text you are about to read is an attempt at doing so.

  • A total of 1,800 papers mentioned TensorFlow, while PyTorch more or less had similar mention in the papers
  • 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.”
  1. 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.
  2. 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.”

A short history

In October 2016 PyTorch began as an internship project by Adam Paszke.

  • Soumith Chintala (soumith). Researcher at Facebook AI.
  • Edward Yang (ezyang). Research Engineer, Facebook AI Research.
  • Greg Chanan (gchanan). Technical Lead / Software Engineering Manager at Facebook.
  • Dmytro Dzhulgakov (dzhulgakov). Technical Lead at Facebook AI.
  • (sunsetting) Sam Gross (colesbury). Software Engineer at Facebook AI Research.
  • Uber’s Pyro.
  • HuggingFace’s Transformers.
  • PyTorch Lightning.
  • Catalyst.
  1. Deep neural networks built on a tape-based automatic differentiation system.

“PyTorch defines a class called Tensor (torch.Tensor) to store and operate on homogeneous multidimensional rectangular arrays of numbers.”

PyTorch supports various sub-types of Tensors.

Governance Philosophy and Guiding Tenets

Looking at the PyTorch website their governance is described there.

“PyTorch adopts a governance structure with a small set of maintainers driving the overall project direction with a strong bias towards PyTorch’s design philosophy where design and code contributions are valued.“

There are core maintainers, and a broader set of core developers that directly can merge pull requests and own various parts of the core code base.

  • File issues.
  • Make proposals.
  • Review pull requests.
  • Be present in the community.
  1. Project influence is gained through contributions (whether PRs, forum answers, code reviews or otherwise)”

Written by

AI Policy and Ethics at Student at University of Copenhagen MSc in Social Data Science. All views are my own.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store