From 0db18616a7c64534a02f69cda5d71be0cbc228b7 Mon Sep 17 00:00:00 2001 From: Phil Wang Date: Wed, 25 Nov 2020 11:49:19 -0800 Subject: [PATCH] add docs for concentrated attention paper --- README.md | 26 +++++++++++++++++++++++++- images/topk-attention.png | Bin 0 -> 48447 bytes 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 images/topk-attention.png diff --git a/README.md b/README.md index 55e02301..8af54346 100644 --- a/README.md +++ b/README.md @@ -297,6 +297,30 @@ model = TransformerWrapper( ) ``` +### Explicit Sparse Transformer: Concentrated Attention Through Explicit Selection + + + +https://arxiv.org/abs/1912.11637 + +This paper proposes an efficient way to sparsify attention by zeroing all dot-product query/key values not within the top k values. The show that this cheap method was as effective as other more expensive operations like sparsemax or entmax15. This technique comes with the cost of an extra hyperparameter (the top k values to keep). The paper recommends a value of `k = 8` + +```python +import torch +from x_transformers import TransformerWrapper, Decoder, Encoder + +model = TransformerWrapper( + num_tokens = 20000, + max_seq_len = 1024, + attn_layers = Decoder( + dim = 512, + depth = 6, + heads = 8, + sparse_topk = 8 # keep only the top 8 values before attention (softmax) + ) +) +``` + ## Todo To be explained and documented @@ -306,7 +330,7 @@ To be explained and documented - [x] ~~scale normalization - Transformers Without Tears~~ - [x] ~~feedforward gated linear variant - Noam's GLU Variants~~ - [x] ~~rezero - Rezero is all you need~~ -- [x] topk attention - Explicit Sparse Attention +- [x] ~~topk attention - Explicit Sparse Attention~~ - [x] entmax15 instead of softmax - Adaptively Sparse Transformers - [x] mixing head information - Noam's Talking Heads - [x] gating multi-head attention output - Attention on Attention diff --git a/images/topk-attention.png b/images/topk-attention.png new file mode 100644 index 0000000000000000000000000000000000000000..c78ae82350655812a7c53c3266ff601eda731737 GIT binary patch literal 48447 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®Bz7T%F(E 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 literal 0 HcmV?d00001