3 ms·
Also, it seems that current LLMs suffer from the quirks of tokenization, hence they can't spell letter by letter or don't know anything about pronunciation. I w
by RicoElectrico 3y ago
Also, it seems that current LLMs suffer from the quirks of tokenization, hence they can't spell letter by letter or don't know anything about pronunciation. I wonder if efficiently training character level LLMs is the way to go.
- tmalsburg2 3y agoWhy do you think that tokenization is to blame on this particular limitation?
- RicoElectrico 3y agoThere's no inductive bias in the model for it to understand that a particular token is composed of some characters. It _does_ work for commmon words, but it's not super reliable. Transformers are powerful enough to pick up the relationship if it were in the training data, but there's like tens of thousands of tokens, right? I checked just now a simple letter counting task, it's hilarious: https://chat.openai.com/share/4d4926b1-a6fe-4815-af77-4456c7f2a6c8 https://chat.openai.com/share/4d4926b1-a6fe-4815-af77-4456c7...
- adhesive_wombat 3y agoNo, it's right: you might think there are 17 letters in "superconductivity" but if it's actually superconducting, r goes to zero. Hence, 16.
- tmalsburg2 3y agoWhat you say is correct but it doesn’t explain why the model fails to capture the semantics of “is”.
- wongarsu 3y agoLLMs started out as letter-by-letter. The issue is that this makes you context window much smaller than compressing words into tokens. Tokens make both training and inference much more effective and efficient, at the cost of trading away some capabilities. But I believe there is a lot of room in exploring better tokenization. An obvious example some models are playing with is how to tokenize numbers. In GPT3 10000 is a single token, while 10001 is two tokens (100-01), which obviously makes it harder for the model to learn math. Some models improved on this by special-casing numbers in the tokenizer to turn each digit into one token. I think GPT4 settled one one token for ever three digits. For pronunciation, maybe throwing some IPA dictionaries into the training set might already do the trick. The model can already infer facts across languages, so if we can somehow teach it a phonetic model it might be able to use that.
- PeterisP 3y agoIt's a tradeoff - compared to character level tokens, larger tokens allow you to get much longer context windows with the same amount of computation and slightly faster transfer from tokens to concepts (perhaps extra 1-2 transformer layers on the character model would make it equivalent), so getting the same outcome from a character level model would require much more computation, perhaps something like a 3x increase just because you'd have so much more tokens for the same amount of text. Since all the letter counting/spelling/rhyming issues are pretty much irrelevant for the vast majority of practical text understanding tasks as they pretty much trigger on toy puzzle problems, it makes all sense to spend any available computing power on increasing model size (which helps all tasks) instead of switching to character models; when some niche use case does need character analysis, that can get a specialized model, but we don't want to pay so large overhead cost for every task.