Comments (2)
In parallel_forward
, you can try setting the padding as 0 after mask = mask / mask.sum(dim=-1, keepdim=True).sqrt()
. Your implementation also looks fine to me.
In inference, the padding token doesn't influence the subsequent encoding, maybe just skipping it is enough?
from torchscale.
Thank you for the quick reply. My reasoning for the parallel code was so that the decay would start from the first non-pad token instead of an arbitrary decay**idx
. I'll test the two variants and see if there's any meaningful difference.
For the forward_recurrent
code, I believe I'm ignoring the previous pad tokens as the prev_scale
will be 0 and scale
1. Thus ignoring the previous kv entry.
Would you be interested in merging this code to the torchscale package? I will fork the repo with the changes if that's the case. Thank you for the help nonetheless :)
from torchscale.
Related Issues (20)
- How to use retention in RetNet for cross-attention?
- Question about learnable segment lengths and dilation rates
- can't use longvit
- Where is the offset implemented in Multi-head dilated attention ?
- pip error
- How to test the model
- Different batch sizes lead to different evalution results for LongVIT
- Question about LongNet attention map overlap
- about gamma/decay in RetNet HOT 2
- Question about RetNetRelPos HOT 2
- Question about the normalization in attention HOT 2
- [Minor issue] Discrepancy inside arxiv paper
- Training RetNet on A100 GPUs HOT 1
- Question regarding the configuration of decoder_retention_heads HOT 2
- Wrong Rnm Normalization. HOT 1
- about the longnet's ppl HOT 2
- about attention mask
- What WSI level was used for pretraining LongVit? HOT 1
- Checkpoint for RetNet
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 torchscale.