A walk through of the DeltaNet family of linear attention variants (blog.doubleword.ai)

270 points by AnhTho_FR 5 hours ago

TrackerFF 4 hours ago

Machine learning could need, and probably has needed, some unified math notation for the past 15 years IMO. With that said, it was worse back in the day - when ML papers were the products of researchers from all over, you'd see some wild notation.

Many will likely disagree with me, but inconsistent notation (across papers!) is to me friction. At least in this article the author explicitly explains the notation at the very start...that is not always the case. Rarely, even.

EDIT: Didn't even notice the notation switch, much appreciated.

olalonde 3 hours ago

I never understood people who preferred traditional math notation (e.g. single letter symbols, weird characters like ∣q⟩ instead of writing down an explicit type, etc.). I guess the main advantage is terseness? To me, the mathematical expressions would be so much easier to understand if they were just written in pseudo code or an actual programming language like Python.

OkayPhysicist 2 hours ago

Terseness is a significant advantage in pattern recognition. If you write a long, detailed breakdown of every step, not only are you spending a bunch of time writing, you're also obscuring the natural symmetries of the statement.

It's like saying "I never understood people who prefer to use functions instead of inlining everything". Adding a bunch of visual noise to a statement doesn't improve comprehension.

crubier 2 hours ago

This 1,000%

Trying to read any math paper is basically like trying to read CodeGolf.

aeternum 2 hours ago

Math notation ultimately is pseudo code just with mostly single letter variables and many operators that are encoded purely by position thus not even requiring a symbol.

Remember that the oft-used e^x is actually an infinite series, even writing it out in summation form would be quite verbose given its frequency in many equations.

crubier 2 hours ago

SkyBelow 2 hours ago

glaslong 2 hours ago

You really just get tired of writing/reading "AbstractJavaSerializerBeanFactoryFactoryAbstactMutatorFactoryAccessEnterpriseBeanFactory()" over and over again.

So you and all your peers agree to call that procedure "ẽ"

htrp 2 hours ago

math notation doesn't bias towards English language understanding like pseudocode

dfee 2 hours ago

dboreham 2 hours ago

Well, humanity struggled for 2000 years trying to do mathematics without notation, so its benefit is not to be sniffed at. But really it's just an APL-vs-Fortran type debate. They're not fundamentally different. Remember also that Ramanujan had to re-use paper it was so costly/hard to find.

Asraelite 2 hours ago

> At least in this article the author explicitly explains the notation at the very start

They explain one particular aspect of the notation but never define the variables used. What is k? q? S?

It's obvious if you've studied machine learning before, and for some of them you can make an educated guess, but it makes the article mostly opaque if you don't already have some domain-specific background knowledge.

loubbrad an hour ago

The author does define these terms implicitly at the beginning of §1, where they define standard MHA in this notation. From the formula, (q_t) is the query generated from the hidden state at the (t)-th position (e.g. the token at position (t)), (k_i) is the key for the token at the (i)-th position, (o_t) is the (vector) attention output for the (t)-th position, etc. (S) is then defined later as the sum of the outer products of (k_i) and (v_i) over all positions up to (t). However, I do agree with you that it would not hurt to make this more explicit.

whatsakandr 2 hours ago

I used to think this, then I realized that the amount of time you spend with equations is so much more than code, and the terseness makes them much easier to read once you know what the symbols are.

Also, letters avoid having to name them, naming being a hard problem and all.

benjiro29 2 hours ago

> You Could Have Come Up with ...

Creating or combining to have something new, that does not already exist is actually freaking hard!

The moment its presented and people go "o, that is not that difficult", "i was able to also do that", or some nonsense like that. Everything looks simply the moment somebody did the hard work.

We have all been there was developers. Thinking we invented something new, and ... then you discover somebody already made it in the 70's and its everywhere. But because it never cross your path, you never realized it existed.

dr_kretyn an hour ago

The bra-ket notation makes this all very simple/intuitive for me. With "vectors" I always get confused which is horizontal/vertical, and then I just follow blobs, and get distracted, and leave. With bra-kets the whole thing was very intuitive! I'm now going to covert other articles to the notation as I must have missed a lot of good stuff!

(Side notes: I have physics PhD and mild dyslexia)

croemer 4 hours ago

LLM written for sure:

> The identity [...] is the whole trick. The outer product is a matrix; the inner product is a number. We no longer store every past key and value. We store their summed outer products in the fixed-size state S_t.

robertclaus 3 hours ago

Ya, probably started with asking for a buzzy title.

geraneum 3 hours ago

This is what you get when you prompt claude to avoid –

HonshinM 3 hours ago

xp84 2 hours ago

When I see these types of articles and headlines, it just makes me supremely grateful for all the many people far smarter[1] than me. And humbles me, too, since I actually passed for a "very smart person" in places like high school and undergrad. In fact, I'm 'smart' for an average person, but there are definitely millions of people who make me look like a rube in comparison.

[1] I specifically mean those who are able to hold very big complex ideas and systems in their head, and reason about them, which seems to be an important talent for mathematicians.

abixb 2 hours ago

Yes. I continue to believe that humans will still be the source of the vast majority of novel ideas, even as they increasingly use AI-related tools to accelerate their works.

One of the though experiments I ran with one of my friends during a recent conversation over drinks was this: raising a bunch of "control group" kids away from the screens and the algorithmic ocean of "normie-tier content," and in a very learner-friendly setting with hyper-strict control on the quality of media and source material they get access to, just like we've been doing it with frontier models. Think of it like a monastery but for kids, while teaching them all the latest advances in our understanding of reality through mathematics, engineering, computer science, deep learning, and whatnot.

What I'm getting at it is that we might still need super smart people to push the boundaries of knowledge while using super-advanced AI tools, and anyone who says AI will "completely replace" humans are just misguided. We will always need super smart people with largely unadulterated thinking.

dmd 2 hours ago

You should read 'Anathem' by Neal Stephenson, which goes into great deal about this kind of establishment.

abixb an hour ago

rhymeswithjazz 2 hours ago

phoghed 2 hours ago

Not sure I follow, what are you doing with these philosopher kings after you mint them?

abixb an hour ago

inanutshellus an hour ago

moffkalast an hour ago

We should be (and kind of are) doing that with all kids really. I think you've just reinvented the boarding school.

juancn 3 hours ago

I really liked the ket notation. I was aprehensive at first, but it makes operations much more clear.

I would have liked some refresher on some variables though (like d_k in quadratic attention).

_Microft 3 hours ago

Side note, before you ask: yes, bra-ket notation is called like that because of the brackets.

https://en.wikipedia.org/wiki/Bra-ket_notation

piterrro 4 hours ago

At first I felt bad about not having come up with this solution. But then I realized I have problems with writing binary search by myself in JS and immediately felt better.

Now way I could have come up with Kimi Delta Attention.

bee_rider 3 hours ago

Lots of linear algebra codes are actually “easy to write” in a way. It isn’t like conventional CS where you are always going a bunch of recursive nonsense going on. There should be mathematical relationships between all of the variables, there are well implemented libraries for the common mathematical concepts, and it is rare to need to go more than a couple loops deep (anything more complex than that should get shunted off into a library anyway).

Kushagra125 4 hours ago

The toggle is really useful. Liked it!!

neutrinobro 4 hours ago

You know its a doozy when the author writes a disclaimer at the top saying that bra-ket notation was chosen in order to make the algorithm and data structures clearer.

CodesInChaos 4 hours ago

One of the more annoying parts of my physics study was getting used to the new matrix multiplication notation they came up with every semester.

kurthr 3 hours ago

bra-ket is the (most?) general form of tensor manipulation.

Raising and lowering operators for summation notation are the beginner tools for covariant derivatives of the metric tensor.

Christoffel symbols are where it's at, if you need to write out the Ricci tensor. The more constrained the space the more concise the notation can be.

Note that MechE tensor notation has an even more compact (eigen) form for principal stresses.

LogicFailsMe 2 hours ago

neutrinobro an hour ago

scarmig 4 hours ago

I like the math vs physics toggle.

MrFiskarBengt an hour ago

You could've also came up with Newton's laws. After all, they look trivial in retrospect. But, there's an important lesson in a story about balancing an egg here that can teach us something.

Filippo Brunelleschi said he could build the large dome for the church that had stood unfinished for a century. Skeptical, other's demanded he'd explain how. He refused. Instead he challenged everyone to balance an egg on its tip. Nobody could do it. He then demonstrated by lightly tapping the egg on the table, flattening the tip, making it stand. "Anyone could've done that! You never said we could break the egg!". And that's the point. Anyone could've done it. But nobody did. Nobody thought 'outside the box'. And likewise, his solution to building the dome is as simple, and as ingenious.

It's called Egg of Columbus. (there's a similar story about Columbus that's more famous, but apparently fictitious). It teaches us that hindsight is 20/20.

_davide_ 4 hours ago

Loved this incremental evolution, things gets way more understandable...usually xD

andai 3 hours ago

>You Could Have Come Up With Kimi Delta Attention

What? Little old me! Well, then, let's have a look...

> (First paragraph)

> A note on notation: this article defaults to bra-ket notation because (in my quantum-inspired opinion) it makes the shapes in this derivation very clear. The Math notation switch above rewrites every equation using conventional bold vectors and explicit transposes instead. In bra-ket mode, ∣ q ⟩ ∣q⟩ is a column vector, ⟨ k ∣ ⟨k∣ is a row vector, ⟨ k ∣ q ⟩ ⟨k∣q⟩ is a number, and ∣ v ⟩ ⟨ k ∣ ∣v⟩⟨k∣ is a matrix. Vectors face right by default, while keys face left when written into the linear-attention state. We work with one causal attention head and real-valued vectors, assume DeltaNet’s keys are normalized, and let the state map from key space to value space.

Hmm... Guess not!

5555watch 3 hours ago

I love that they let you switch to a more common q'k notation!

bee_rider 3 hours ago

Where do linear algebra folks go to get started with ML stuff? It seems pretty easy but the hardware is expensive.

sva_ 3 hours ago

I think Karpathys nn zero to hero is a good starting point. And you can experiment on small networks using pretty normal hardware.

thatjoeoverthr 2 hours ago

I’m having a great time with an NVIDIA 3090. 24 GB RAM will run a lot of neat models. But at zero you can for sure just do CPU until you build a project ambitious enough.

stuxnet79 3 hours ago

> It seems pretty easy but the hardware is expensive.

Huh?

If your aim is to truly 'get started' with ML then hardware is absolutely not a bottleneck (either local or cloud).

Remember that ML is much more than LLMs. Even modern day LLMs can be quantized to a point where they can run on local hardware although their capabilities won't be as impressive.

I would recommend looking into some of Andrej Karpathy's videos if you want a grasp of the basics.

nifets 3 hours ago

what is a linear algebra folk?

sodapopcan 2 hours ago

Ohhhhh Diag(αt), right. I was almost there but had left the placeholder "Diag(foo)" and never noticed. I now see is why I didn't come up with it first. So close!

luciana1u 2 hours ago

love the toggle between math notation and physics notation. two flavors of confusion, nicely packaged.

anshumankmr 3 hours ago

joe_the_user 2 hours ago

Overall, all the different linear attentions out there are approximations the original (quadratic) attention and this is important for the whole "AI" enterprise[2].

Original attention involves (very crudely) an approach of scanning how every token (roughly a word) relates every other token and training a classic neural network on related tokens - to get either language translation or next word prediction (and next word prediction is what "seems intelligent" in LLMs). [1]

The problem is that since original attention is "everything to everything else" it scales quadratically (O(n^2)) with the size of the train set (or train set window) and so basically even the largest data center can use that once a truly vast training set is accumulated. Which is to say that "dirty little secret" of LLMs following the "Attention Is All You Need" paper don't actually scale. That model (in my crude, amateur understanding) is elegant for allowing every word's connection to every other word to be weighed and still brute-force for not starting with or achieving "understanding" of the words [3 give only some background but also why "full" attention is powerful].

Linear attention is a way around the quadratic quality of original attention so everyone is naturally using clever approaches to make it work. Simplifying terribly - you're trying to determine the value of word before you see in context. But my intuition is that since (Everything X Everything) is inherently a quadratic relationship, none of these can capture their expanded data set in the way original LLMs did - not they are worse but all the models seem likely to hit diminishing returns in terms of blindly capturing meaning from all-the-world's text (and data).

Background and notes: [1] https://en.wikipedia.org/wiki/Transformer_(deep_learning_arc... [2] Linear Transformers Are Secretly Fast Weight Programmers: https://proceedings.mlr.press/v139/schlag21a/schlag21a.pdf [3] Transformers are Deep Infinite-Dimensional Non-Mercer Binary Kernel Machines: https://arxiv.org/pdf/2106.01506

mnky9800n 4 hours ago

why are you using braket notation?

leonvoss 4 hours ago

He has a master's degree in physics from Oxford. Also there is a toggle to normal notation. Well, CS notation. I'm not a fan of transpose marks everywhere. I like an even more mathematics notation.

mezark 3 hours ago

And a PhD in Quantum Computing! I'm a physicist so a fan of bra-ket tbh

brcmthrowaway 4 hours ago

I could never get this about modern machine/deep learning or even the Transformers. Yes, it's not exactly rocket science, but when I see the data flow diagrams, it's not clear what is calculated in real time or multiple steps.

Is it really one big computation f(g(h(x)))?

malwrar 4 hours ago

Yes.

Each token prediction is one big function call. Then you just recursively generate more tokens until run out of context or the model predicts a next token indicating end of sequence. Technically the model outputs a matrix where the last row is a probability distribution, but I’m counting sampling from it as part of the chain. Hundreds of billions of dollars has gone into just making the function fatter and gradually changing pieces here and there.

brcmthrowaway an hour ago

I remember the concept of layers, as essentially defining the matrix math dimensions. And for a given model/framework, they were static. That always bugged me (not very dynamic).. is this still the case?

malwrar 19 minutes ago

choilive 4 hours ago

What's your distinction between real time vs multiple steps? All computation is done in steps.

Is it all one big computation? Its turtles all the way down.

leonvoss 4 hours ago

It's all vibes.

nurettin 2 hours ago

It is heartwarming to see how sarcasm turns into a celebration of mediocrity.

lain98 3 hours ago

Its greek to me.

enraged_camel 3 hours ago

If I could, I'd be working for one of the labs and commanding a seven-figure salary. :)

asdfman123 4 hours ago

codeduck 3 hours ago

Hmm. Hmmm. Hmm. HMMM. Hmm.

Yep! I know some of these words.

rekshaw 4 hours ago

after a cursory read, I can confidently say I could not, in fact, have come up with Kimi Delta Attention.

penguin_booze 3 hours ago

"you could have..." is among the top insulting phrases used by maths-adjacent people. Others in that league are "it should now be obvious...", "it's abundantly clear...", "it can be easily shown that...", "this is nothing but..." etc.

The rest of us reading this are like, holy batman, what the fuck was that?!

ozgung 3 hours ago

Also the proof is so trivial that it’s left to the reader.

BurnerOptical 2 hours ago

cubefox 2 hours ago

egeozcan 2 hours ago

Answer with:

You could have your own hacker news, it's just a textbox, a bunch of tables and headings! Once you add these, it'll be abundantly clear that you also need a database. It should now be obvious that you also need a user system and it can be easily shown that needs a backend. Admin tools, tests, statistics, performance checks and so on can easily be derived from such backend.

jameshart 2 hours ago

Math educators like Grant Sanderson (3blue1brown) use it in a very specific way: the goal of a mathematical explanation is to make the learner feel like they could have come up with something. And a really good mathematical communicator can absolutely do that.

A piece like this which uses it in a headline but in no way makes an average reader feel like they could have come up with it is just badly misjudging how good of an explanation it is.

wrs 2 hours ago

sva_ 2 hours ago

Chill, it's just a rhetorical phrase. They want to show that this KDA is the result of a series of incremental improvements, and I think they did a pretty good job at that.

I often find people get annoyed at mathy stuff because they seem to think that they should be able to read it like a (comparatively low information dense) newspaper article or something similar.

Math isn't like that, it usually has high information density and you need to parse every single symbol. And also people make this mistake where they gloss over stuff they don't get because they think they'll just understand things from context. Works great in normal literature - but math ain't like that. If you don't understand something, go back to the definitions.

Razengan 3 hours ago

Right next to "Learn More" by software UI designers.

devy 2 hours ago

Doubleword AI is conducting a classic textbook marketing trick called newsjacking.

Writing a detailed technical post behind the news of Kimi K3 and KDA algorithm with an audacious title like "You Could Have Invent Breakthrough It too" they are pre-filtering out the ones who couldn't comprehend with quick read (myself included) and attracting the ones who agreed with the blog post. At the end with a strong CTA to promoting their 10x cheapter open weight model AI inference and hiring too.

Good job Doubleword, I see what you are doing there.

mezark 2 hours ago

lol - co-founder of Doubleword here. honoured you think we have sophisticated enough marketing to 'newsjack'. What actually happened is my cofounder wrote it over the weekend because he's a mega-nerd and put it live yesterday. I hadn't even read it until I saw this hacker news thread lol

We're just a group of guys and gals who like inference!

arkj an hour ago

Barbing 2 hours ago

“Kimi Delta Attention” because “Kimi K3 Delta Attention (oh that’s just our little internal name for it as a joke)” passes no sniff tests.

Barbing 5 minutes ago

nope1000 4 hours ago

I don't even know most words they used in the paper haha

dd8601fn 3 hours ago

Yeah, pretty sure the “you” in “you could have” is a different “you” than “we”.

londons_explore 3 hours ago

The notation looks complex, but underneath it's all just adding and multiplying.

Nothing complex

teach 3 hours ago

Grand Theft Auto VI looks complex, but underneath it's all just ones and zeros and NAND

ReactiveJelly 3 hours ago

"I invented a new algorithm"

"New algorithm, or fmadd?"

"... fmadd."

baq 3 hours ago

as is practically all of transformer maths if you squint hard enough...

glaslong 2 hours ago

* a completely different "you" who spent countless hours gaining expertise on a wholly diverged life path

yongjik 3 hours ago

Imagine reading the title again in the voice of the Asian Father Meme.

"You could have come up with Kimi Delta Attention, but you didn't, did you."

world2vec 4 hours ago

Not even close for me too.

vovavili 4 hours ago

I thought I was the only one.

trollbridge 4 hours ago

Thank goodness. There are dozens of us.

ma-r-s 3 hours ago

queenkjuul 3 hours ago

They lost me just describing the notation lol

denysvitali 2 hours ago

Same!

spwa4 4 hours ago

No, you couldn't have. There are plenty of ML innovations that when push comes to shove only depend on having access to more compute, but this is one of the worst examples I've ever seen.

I always thought that the jump from LSTM/GRU -> Attention wasn't a particularly big one. Instead of partial unroll, do a full unroll. Why not (because it's too expensive, that's why not). Every component was known, and everybody anywhere near ML knew perfectly well why NOT to try that: because you just don't have the compute to fully unroll an LSTM. From that point attention is optimized (they key-query mechanic). The big innovation is not so much the mechanism itself but realizing the parallelize-ability of it.

It's sort of like if one would today make the "improvement" to attention to replace they key-query-value mechanic by just dropping it while making the entire context the latent space. That will outperform attention, nearly guaranteed. It'll also make even Google's cluster networks meltdown. Attention is one of those innovations that came mostly from realizing you had better hardware than everybody else and asking yourself how to use it. It's still quite the accomplishment, they had to get it working. But nobody else was really capable of making this leap.

leonvoss 4 hours ago

I agree 100%. This field is not amenable to progress from people with a pen sitting in a corner proving theorems. The math is mostly uncertain vibes and to test it you need millions of dollars of compute. Smart loners just can't.

p1esk 3 hours ago

replace they key-query-value mechanic by just dropping it while making the entire context the latent space.

What do you mean by this? Like concatenating all token embeddings into one large vector?