paint-brush
How is PyTorch different from Tensorflow?by@debarko
6,435 reads
6,435 reads

How is PyTorch different from Tensorflow?

by Debarko De
Debarko De HackerNoon profile picture

Debarko De

@debarko

Write, Read and Distribute

January 19th, 2017
Read on Terminal Reader
Read this story in a terminal
Print this story
Read this story w/o Javascript
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

PyTorch early release version was announced yesterday 1/19. PyTorch is currently maintained by <a href="https://apaszke.github.io/" target="_blank">Adam Paszke</a>, <a href="https://github.com/colesbury" target="_blank">Sam Gross</a> and <a href="http://soumith.ch/" target="_blank">Soumith Chintala</a>. The first question that comes to mind is <strong>What exactly is PyTorch? </strong>Well to put in the words of the makers, PyTorch gives

Companies Mentioned

Mention Thumbnail
Facebook
Mention Thumbnail
Intel
featured image - How is PyTorch different from Tensorflow?
Debarko De HackerNoon profile picture
Debarko De

Debarko De

@debarko

Write, Read and Distribute

About @debarko
LEARN MORE ABOUT @DEBARKO'S
EXPERTISE AND PLACE ON THE INTERNET.

PyTorch early release version was announced yesterday 1/19. PyTorch is currently maintained by Adam Paszke, Sam Gross and Soumith Chintala. The first question that comes to mind is What exactly is PyTorch? Well to put in the words of the makers, PyTorch gives

GPU Tensors, Dynamic Neural Networks and deep Python integration.

It’s a Python first library, unlike others it doesn’t work like C-Extensions, with a minimal framework overhead, integrating with acceleration libraries such as Intel MKL and NVIDIA (CuDNN, NCCL) to maximise speed.

Let’s take a pause here and try to realise that till last few months, people were under the assumption that the deep learning library ecosystem was stabilising but it was far from the ground reality. Cutting edge tech in that ecosystem is ensuring efficient support for dynamic computation graphs and PyTorch just aces that is all aspects.

image

Dynamic computation graphs arise whenever the amount of work that needs to be done is variable. This may be when we’re processing text, one example being a few words while another being paragraphs of text, or when we are performing operations against a tree structure of variable size. This problem is particularly prominent in particular subfields, such as natural language processing, where I spend most of my time.

PyTorch is heavily influenced by Chainer and DyNet. In Chainer’s words, it is a difference between “Define-and-Run” frameworks and “Define-by-Run” frameworks. TensorFlow is a “Define-and-Run” framework where one would define conditions and iterations in the graph structure whereas in comparison Chainer, DyNet, PyTorch are all “Define-by-Run” frameworks. In this case at runtime the system generates the graph structure. This is closer to writing code in any language as a for loop in code will behave as a for loop inside the graph structure as well. TensorFlow doesn’t handle dynamic graphs very well though there are some not so flexible and frankly quite limiting primitive dynamic constructs.

Do follow me on twitter and you can also signup for a small and infrequent mailing list that I maintain. If you want to understand Deep Learning, go through this Medium post.

Hacker Noon is how hackers start their afternoons. We’re a part of the @AMIfamily. We are now accepting submissions and happy to discuss advertising &sponsorship opportunities.

To learn more, read our about page, like/message us on Facebook, or simply, tweet/DM @HackerNoon.

If you enjoyed this story, we recommend reading our latest tech stories and trending tech stories. Until next time, don’t take the realities of the world for granted!

L O A D I N G
. . . comments & more!

About Author

Debarko De HackerNoon profile picture
Debarko De@debarko
Write, Read and Distribute

TOPICS

THIS ARTICLE WAS FEATURED IN...

Permanent on Arweave
Read on Terminal Reader
Read this story in a terminal
 Terminal
Read this story w/o Javascript
Read this story w/o Javascript
 Lite
Stackovercoder
Qastack
Qastack
Qastack
Stackovercoder
Fritz
Qastack
Qastack
In
Com
Co
Qastack
Qastack
Info
Com

Mentioned in this story

X REMOVE AD