Comments (4)
Here's my attempt to list them, let me know if I'm missing anything:
- SwiGLU Activation instead of ReLU / GeLU. #29
This is defined asSwish(xW) * xV
- Parallel formulation of the transformer block. #18
Instead ofy = x + MLP(LN(x + Attention(LN(x))))
they doy = x + MLP(LN(x)) + Attention(LN(x))
- Multi-Query Attention. #30
Fork
attention heads with head sizeh
, we usually we project the input intoquery
,key
,value
, each of shape(k, h)
. In PaLM thequery
andvalue
projections are shape(1, h)
, i.e. they use the same projection for each attention head. This results in more efficient inference during decoding. - RoPE embeddings. #63
⁉️ I'm not sure why they went with RoPE instead of ALiBi. Maybe because implementing flash attn with support for ALiBi was too complex? (PyTorch's built-in flash attn doesn't work with ALiBi) - Shared input-output embeddings.
We're already doing this. - No bias terms. #27
- They use a SentencePiece tokenizer with a vocabulary of 256k tokens.
They construct the vocabulary in such a way that tokenization is completely reversible, as it is with byte-level BPE tokenizers like GPT's. That's quite a large vocab size though. - Scaling "logits" (pre-softmax outputs) by
$1 / \sqrt{d_{model}}$ . See Section 5 under "Weight initialization."
There's a PyTorch implementation PaLM here: https://github.com/lucidrains/PaLM-pytorch
from olmo.
@epwalsh, is this done? Scaling logits, do we care?
from olmo.
Scaling logits got overlooked for bigger things, but we should at least have the option implemented. I'll take care of it.
from olmo.
Scaling logits implemented in #239
from olmo.
Related Issues (20)
- Key 'https://olmo_checkpoints' not in 'TrainConfig' HOT 1
- How the 1B and 7B model are initialized?
- Tokenizer with relative path import fails when using olmo as pip library
- Multi node training
- Resuming training on unsharded checkpoint HOT 5
- What did OLMo 1B converge to? HOT 1
- Issue with tokenizer wrapper
- start_index not getting reset in data loader when moving to new epoch HOT 4
- Cannot convert internal OLMo checkpoint to HF HOT 2
- Can long text be splitted into short texts?
- Is there explicitly instruction-following data in the version of Dolma used to train v1? HOT 1
- DDP training tries to save sharded checkpoint on the last step
- Does global_train_batch_size support gradient accumulation? HOT 1
- mlp_ratio not adjusted in config if mlp_hidden_size is set
- Initial Loss increased from 10 (0.3.0 v) to 60 (0.4.0) ! HOT 9
- Model ladder has no documentation
- Olmo 0724 `-hf` checkpoints don't load the proper config when instantiating with OLMoForCausalLM HOT 2
- why CrossEntropyLoss is zero,i HOT 2
- Gflops computation is faulty for FSDP due to bug in `OLMo.num_params()`
- Number of tokens Olmo-1B was trained: 2T or 3T?
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 olmo.