-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Newbie-friendly documentation would be a huge benefit #60
Comments
@elidupree
returned tensors have the same shapes as corresponding xs's ones. It's so by the mathematical definition of gradient.
So the gradients's shapes and ys's are not related. |
Thanks for the reply! I recognize that writing comprehensive documentation is hard work. But I figured I should leave an issue, because ultimately, documentation is a critical part of any library.
Sorry – and I don't want to get too bogged down in this specific example – but there's one thing I'm still having trouble understanding. The gradient of a single-output function is shaped exactly like the inputs, of course. But if you pass multiple |
agree. I'll think about it again.
As for |
I'm currently working on some ML projects where autograd looks like the ideal tool for the job. Unfortunately, I had a bit of trouble figuring out the basics of autograd, because of the somewhat terse documentation.
At the moment, the main content of the docs begins with
followed by a block of code which does exactly that. This is helpful as an example, but what's missing is a conceptual overview: What's a placeholder? What's a tensor? What does
ag::run
mean? What's feeding?I was able to figure these things out by digging through the rest of the docs, but it wasn't easy, and it would be much more difficult for someone who was less familiar with ML concepts than me (I am perhaps in the middle of the spectrum). And considering how much work has gone into the implementation, making it more accessible would be very valuable!
Many of the individual functions could also benefit from more-detailed documentation. As an example, the documentation for
tensor_ops::grad()
currently says:and returns a vector of Tensors; but it could be much clearer about what the returned values are, and what sizes they are. (One for each of
xs
, I assume? but what shape are they if there are more than one ofys
?)(This is only an example; almost every function has a similar level of detail at present.)
The text was updated successfully, but these errors were encountered: