5 ms·
This is a surprising result to me, given that (in my mind) the method simply does a few more forward passes, without encoding or transferring meaningful state b
by diziet 2y ago
This is a surprising result to me, given that (in my mind) the method simply does a few more forward passes, without encoding or transferring meaningful state between each pass.
- sdenton4 2y agoYou get embeddings at every activation layer of the network, at every token. That's extra state accessible to the network when running in recurrent 'generate the next token' mode.
- ehsanu1 2y agoHow much extra state and computation is it per token exactly? Can we account for the improvement in just those terms?
- sdenton4 2y agoThat's the point of this paper: investigating whether 'chain of thought' promoting kinda-works because it actually induces reasoning, or whether it's just that more verbose answers give the model more tokens to work with, and this more state in which to hide interesting computations. This work introduced a way to give the model more tokens - and thus compute and state - to work with, independent of the prompt, which makes it easier to separate the computational impacts of verbosity from prompting.
- PoignardAzur 2y agoBasically in a chain of N tokens, the state of the token at layer L reflects L * N / 2 intermediary states worth of info. (In practice a lot less, since attention is a somewhat noisy channel between tokens.)
- ehsanu1 2y agoI've only read the abstract, but also find this strange. I wonder if this is just tapping into the computational chains that are already available when tokens are further away, due to the positional encodings being trained that way. If so, that makes the reasoning/modeling powers of LLMs even more impressive and inscrutable.
- dist-epoch 2y agoYou can transfer some state just through dots. The dot count could mean "the first n ideas do not work, analyze the n+1 one, if that's bad, emit another dot"
- wongarsu 2y agoAnd this works even if we assume the dots don't actually transfer information but just slightly mutate the state. First it tries a random approach, if that approach doesn't lead to a powerful result it emits a dot to try another random approach in the next round, until you get a sufficiently good path forwards. Essentially a brute-force search. Which is a bit wasteful, but better than just blindly taking the first idea
- diziet 2y agoI believe the model is trained to always output the same number of dots. Additionally, the way LLMs generate output tokens are not really in in line with transferring state this way.
- pyinstallwoes 2y agoCan't anything be compressed into one word by comparison?
- ivankolev 2y agoGodel and Heisenberg say no, in the most generalized case. Our universe is not deterministic
- ants_everywhere 2y agoI'm not sure what Godel is doing here but quantum mechanics is consistent with the universe being deterministic https://en.wikipedia.org/wiki/Superdeterminism https://en.wikipedia.org/wiki/Superdeterminism
- pyinstallwoes 2y agoExplain how words do that?
- HarHarVeryFunny 2y agoI think the general idea is that since partial embeddings can be copied laterally (between token positions) from one layer of a transformer to the next, then additional work done at filler positions can also be copied to following real token positions. There's obviously a limit to how useful this can be since these are added parallel token steps rather than sequential transformer layer ones, and results from different experiments seem to be mixed. Still, I don't see how this really works .. more compute / embedding transformations are being potentially applied to the prediction, but in what circumstances are these filler positions being used in a useful way? The filler token embeddings themselves presumably aren't matching attention keys, but positional encodings for adjacent tokens will be similar, which is maybe what triggers lateral copying into (and perhaps out of) filler positions?
- mmoskal 2y agoEvery token generates a KV cache entry based on this token and all previous KV cache entries. This happens in every layer. KV cache is 100k-1MB per token so quite a bit. Edit: also you can forward generate 5 or 10 dots in batch without much overhead compared to a single dot since the main cost is pulling KV cache from VRAM so you have free tensor units.
- deleted 2y ago[deleted]
- diziet 2y agoI understand what you are trying to say, but correct me if I am wrong: Each forward pass is stateless. The KV cache you describe is a clever method to make compute scale closer to linear complexity for attention. I am trying to build some conceptual understanding of how performance on 3SUM problem improves on this fine-tuned example but not on the fine-tuned no shot.
- edmara 2y agoIn the case of 3sum, because the LLM has been fine tuned to use 'blank' token key values as a register to represent the sums of specific integer triplets.
- imtringued 2y agoGiven an algorithm that takes 100 iterations, ask the computer to perform it in ten iterations. It gives you a nonsense answer. Tell it to do it in 100 steps and it might just be able to do it. What this tells us is that context size appears to be a limiting factor as models get bigger and bigger.