Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Visual introduction to PyTorch (0byte.io)
408 points by 0bytematt 5 days ago | hide | past | favorite | 27 comments
 help



Two more recent articles by this author:

https://0byte.io/articles/neuron.html

https://0byte.io/articles/helloml.html

He also publishes to YouTube where he has clear explanations and high production values that deserve more views.

https://www.youtube.com/watch?v=dES5Cen0q-Y (part 2 https://www.youtube.com/watch?v=-HhE-8JChHA) is the video to accompany https://0byte.io/articles/helloml.html


Very nice. Thanks for sharing.

Very nice overview, however just like 30 years ago, neural networks and deep learning stuff is not for me, regardless of the tutorials.

Yet, 2D and 3D graphics feel relatively natural, maybe because at least I can visualize that kind of math.


Are the gradient visualizations not doing it for you?

Of course it kind of breaks down as the gradient can no longer be visualized as an arrow in 2D or 3D space and not all concepts transfer as easily to higher dimensions, as one would hope, but some do.


It is quite different, because one thing is to look to a math expression like SDF and understand the 3D shape that comes out of it, the math behind a demoscene plasma field, or a ray traced shape.

Other is making heads of tails of what a neural network with backpropagation means.


The PyTorch3D section was genuinely useful for me. I've been doing 2D ML work for a while but hadn't explored 3D deep learning — didn't even know PyTorch3D existed until this tutorial.

What worked well was the progressive complexity. Starting with basic mesh rendering before jumping into differentiable rendering made the concepts click. The voxel-to-mesh conversion examples were particularly clear.

If anything, I'd love to see a follow-up covering point cloud handling, since that seems to be a major use case based on the docs I'm now digging through.

Thanks for writing this — triggered a weekend deep-dive I probably wouldn't have started otherwise.


Tiny suggestion: make the visualization for torch.zeros and torch.ones have the same y-axis limits so the difference is visually separated.

This does an honest good job of walking through the beginnings, I would still say understanding/decomposing a decision tree and going through the details and choices /trade offs one makes with how they prepare the tree like binary split or discrete/binning for continuous data. What reducing entropy means, etc. Maybe even start with parametric versus nonparametric modeling pros/cons. You really get to see how probability and statistics is applied in the formulas that eventually will be thrown into a dot function in python.

There is a lot of content on pytorch, which is great and makes a ton of sense since it's used so heavily, where the industry needs a ton of help/support in is really the fundamentals. Nonetheless, great contribution!


Good post. I think you mixed torch.eye with torch.full though

You're right! It's wrongly labelled on the image. Thank you for letting me know. Will fix it.

This was quite accessible. If I had to pick one point, I wish there was more "handholding" from gradient to gradient-descent i.e. in the style of the math-focused introduction of the function with one parameter, two parameters etc that was done. It felt a bit of sudden jump from the math to the code. I think the gentle introduction to the math is very valuable here.

Are there other similar tutorials like this going into fundamentals of model architectures for example? Something like https://poloclub.github.io/cnn-explainer/ for example

Interesting article. It would be really useful if you have added a full article title to the page meta data, so it would get bookmarked with title. I assume one does not require GPU to try out simple examples provided?

Hi! Yes, I’ll add all the info very soon. No GPU required. I did everything on a MacBook Air.

Thank you, this seems like a very good intro to newcomers! Would be cool if you could continue these series with a few more advanced lessons as well

Thank you! That's the plan. I was thinking of writing a 3D mesh classifier explainer next that'll build on these concepts.

Very nice, thanks! It’s great to be able to play with viz!

For a deeper tutorial, I highly recommend PyTorch for Deep Learning Professional Certificate on deeplearning.ai — probably one of the best mooc I’ve seen so far

https://www.deeplearning.ai/courses/pytorch-for-deep-learnin...


Good introduction! Building pytorch-lite using python and numpy is the way to go.

Free book: https://zekcrates.quarto.pub/deep-learning-library/

Ml by hand : https://github.com/workofart/ml-by-hand

Micrograd: https://github.com/karpathy/micrograd


Did not expect to see a 3D model of Quake 2's grenade launcher in a PyTorch tutorial today.

Yes! Love that you recognised it! Way more fun than yet another 3D model of a chair or a teapot.

Looks like a nice resource for the OMSCS Deep Learning class as well.

Really awesome resource, thanks for posting.

Very well done. I learned something.

Cool tutorial :) Any PDF versions?

You can print to PDF from your browser. It ends up looking nice.

Yes, I ended up doing that.

Thank you, Sol Roth


[flagged]


Thank you so much. Really appreciate the thoughtful feedback!

I've watched many intros. Somehow they always end with 90%+ accuracy and that was just not my experience while learning on datasets I picked myself. I remember spending hours tuning different parameters and not quite understanding why I was getting way worse accuracy. I showed this intentionally, and I'm glad you commented on this!

The XGBoost comparison is a great idea.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: