Comments (2)
copy
uses PyTorch copy_
operator behind the hood and from a quick experiment on the python side this seems to properly propagate the gradient through. Did you try it out in rust and that wasn't the case?
>>> t = torch.tensor([0.1], requires_grad=True)
>>> u = torch.tensor([0.])
>>> u.copy_(t + 1)
tensor([1.1000], grad_fn=<CopyBackwards>)
>>> u.backward()
>>> t.grad
tensor([1.])
Re iterating on the trainable variables, this sounds perfectly fine, weight decay is already handled by most optimizers if that's what you're after but for another regularization loss that would probably be the way to go.
from tch-rs.
Thanks. I didn't notice any gradient issues with copy()
but I had heard that some inplace operations don't propagate gradients in PyTorch so I was concerned that copy()
might be problematic in some scenarios.
from tch-rs.
Related Issues (20)
- grads become zeros after a short period of training on metal backend
- Can we `.set_retains_grad(true)` ?
- model in rust, optimizer.step in python
- Can't compile or test tch-rs HOT 3
- What if I am not using `pyo3==0.18.3`? HOT 4
- Error when building burn on Windows when upgrading to tch 0.16 HOT 4
- Can you help me setting environment variables? HOT 2
- la HOT 1
- Publish pyo3-tch 0.16 HOT 2
- getting gradient for intermediate tensors
- Unable to compile on arch-linux HOT 2
- torch download and build location
- Can't compile static
- Rust-bert does not work with Debian 12 errors HOT 1
- Any ideas? HOT 4
- M2 mac os throw error: "found architecture 'x86_64', required architecture 'arm64'" HOT 1
- error adding symbols: DSO missing from command line HOT 2
- Support of X86 quantization engine as in pytorch?
- Is it possible to access device properties with `tch-rs`, like in `torch.cuda.get_device_properties`?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tch-rs.