316 points speckx 16 hours ago 73 comments
craftkiller 14 hours ago | parent
1. It uses math notation. This is a software development site, wouldn't this be much more clear to this audience written as psuedo code instead of a complex series of greek and latin letters?
2. It doesn't step through a concrete example. What is hollow R raised to the (M * d_v) ? Is it a number, a set, a list, a matrix?
To use an example I understand: RAG used to seem complicated to me when only math people were talking about it in math words. For example, let's take a line from wikipedia on embeddings:
> the representation is a real-valued vector that encodes the meaning of the word in such a way that the words that are closer in the vector space are expected to be similar in meaning
What made it clear was learning that generating an embedding is just a function(string) -> list[float], and RAG is just taking a list[float] for your prompt and finding other list[float] that are close to it in your dataset.
So what would make this article more clear, is step through a simplified example of putting a value into a memory store and querying that memory store, showing the actual data structures.
saghm 13 hours ago | parent
At the risk of stating the obvious, this is a forum where people can post arbitrary links to other sites, some of which might have audiences that might not be "the exact set of people who read Hacker News". I'm not sure you'd be able to make a compelling argument that alexwang.ai is aimed at software developers and no one else.
craftkiller 13 hours ago | parent
This article is a bit more of a grey area. It is on a subject that is deeply relevant to this site and I'm sure some HN readers will get value from it. My point is that an even better submission to HN would have been an article on the same topic but written for programmers rather than mathematicians.
saghm 13 hours ago | parent
craftkiller 13 hours ago | parent
Perhaps, but HN apparently is pretty hostile to people explaining why something is not clear and how it could be more clear based on all the downvotes. I'll keep that in mind: "If you don't understand something, shut up!"
SyneRyder 12 hours ago | parent
Clear explanations are a good thing, but different explanations help people in different ways. Your explanation seems helpful to me, and reminds me of Ben Affleck's explanation in the GQ interview. But Ben Affleck connected it directly to arrays of RGB pixel data, which clicks more with me personally, but probably wouldn't with everyone. It certainly didn't make things any clearer to the interviewer.
saghm 12 hours ago | parent
SyneRyder 11 hours ago | parent
https://news.ycombinator.com/hackernews.html
"... the thing that makes hackers such good startup founders is that they care about more than business. They have intellectual curiosity driving them as well as the desire to make money. So the way to make a news site for startup founders is to make it be about more than just startups. ... If you had to reduce it to a sentence, the answer might be: anything that gratifies one's intellectual curiosity."
My thought was to show some grace, considering that not everyone's been around here for 20 years or knows that "hacker" doesn't apply only to computer programmers. That was my thinking anyway.
craftkiller 11 hours ago | parent
saghm 12 hours ago | parent
craftkiller 12 hours ago | parent
Imagine a nursing home that serves steak every day. One resident says "this food isn't helpful to me because I no longer have teeth to chew it. Wouldn't this be better for everyone if we had soup?". They're not suggesting outlawing steak, after all some people will get value from it. They suggesting a way to better serve the entire population of the nursing home.
Nevermark 12 hours ago | parent
Also not an issue: the quality of the article.
Expect to be challenged by content here. Everybody is from time to time. Asking for a mathy analysis to drop the math, fundamentally misunderstands the value of the math.
craftkiller 11 hours ago | parent
HN is a site for programmers (or specifically "hackers"). Posting an article to a site for programmers in math notation is like posting a French article to an English message board. Some people will be able to read it with varying levels of difficulty, but wouldn't it be better to post an English version of the same information so everyone can read it easily?
pestatije 10 hours ago | parent
Nevermark 5 hours ago | parent
As an isolated wish, your ideas might be reasonable.
But framing them as necessary HN values, as a critique, as ideas others should conform to, you are not being sensible or reasonable.
mdp2021 3 hours ago | parent
> If you don't understand something
Ask, but if you advance weak ideas be prepared to be hit - and be glad about it, you are advised to revise the weak ideas.
ergonaught 12 hours ago | parent
soulofmischief 9 hours ago | parent
craftkiller 8 hours ago | parent
Got it. Stay classy HN.
soulofmischief 8 hours ago | parent
craftkiller 6 hours ago | parent
They're the same thing on an internet forum. There is no space to move through, so while in the physical world "move on" is different from "shut up", on an online forum they both mean exactly the same thing: "don't say anything".
And yes, this is stressing me out. I took the time and effort to think about and explain how this post could reach a wider audience on hackernews, citing an example from my own learning experience, and nearly everyone has attacked me for it. The original article was clearly meant to explain/educate. You'd think "here's how you can do that for more people" would be useful feedback.
soulofmischief 6 hours ago | parent
The thing is, there are fundamental issues with your post. You said, "if I posted to HN a link to a really good cookie recipe, it wouldn't be a good fit for this site", which is wrong; Hackers might be interested in cookies. The site guidelines state,
On-Topic: Anything that good hackers would find interesting. That includes more than hacking and startups. If you had to reduce it to a sentence, the answer might be: anything that gratifies one's intellectual curiosity.
Off-Topic: Most stories about politics, or crime, or sports, or celebrities, unless they're evidence of some interesting new phenomenon. If they'd cover it on TV news, it's probably off-topic.
If that cookie recipe is really good, I'm curious! Cooking is something many hackers love to do.You also criticized the article for... using math notation... and wrongly assumed that other engineers on this site who also are interested in mathematics, like Alex Wang, would rather dispense with the compact notation and instead deliver pseudocode. This is entirely the author's prerogative, just as it's your prerogative to skip it and move on, or even criticize it. But you cannot get upset when your criticism is then itself critically evaluated, or claim others are being hostile for examining the content of your comment just as you did the content of the article. I know you weren't being hostile in your criticism, and I'm not aiming to be hostile in mine.
> You'd think "here's how you can do that for more people" would be useful feedback.
Sure! What this mostly comes down to is your misunderstanding of the breadth of our community, and the site guidelines. You truly did mean well, and I also mean well here, even if I am being blunt. The rest of your comment was fine and I don't take issue with the general sentiment.
fc417fc802 1 hour ago | parent
> What this mostly comes down to is your misunderstanding of the breadth of our community
Actually I think it's the people responding to him that aren't being sufficiently careful to read what he actually wrote and to understand the message he was attempting to convey. Granted he could have done a better job communicating (case in point, this very conversation) but that's often going to be the case.
It seems like people are interpreting it in a hostile manner when from my perspective the core of it is both actionable and reasonable feedback for anyone attempting to explain a technical topic. Both of the original points (using mathematical notation and failing to step through concrete examples) are each things that will alienate a decent chunk of any potential audience. In fact the former is one of my primary complaints about wikipedia articles on math adjacent topics.
mdp2021 4 hours ago | parent
That is really your interpretation only - and it directly clashes with the explicitly intended: "intellectually curious" (which will be, if not polymaths, at least open).
Of course an intellectual curiosity space hosted around the world of startup enterprises will attract membership of people with experience in engineering.
If you check the submissions, it should be immediately evident that there is no closure.
fc417fc802 1 hour ago | parent
Going to have to disagree with you here. That would very much depend on the particulars of and circumstances surrounding the recipe. This is a site for anything that would interest the typical hacker (whatever that actually is) after all.
CamperBob2 13 hours ago | parent
andai 12 hours ago | parent
>It's easy to forget that the average person probably only knows the formulas for Olivine and one or two Feldspars
That being said the llm is indeed the universal translator — the babelfish supreme — and is excellent at translating whatever you want into pseudocode in your language of choice.
bluegatty 11 hours ago | parent
aDyslecticCrow 11 hours ago | parent
This is pretty approachable maths, and explain really well. I've seen far worse in programming language theory papers, which would qualify as "software development" in my mind. There are plenty of users of this forum that would find this paper useful and interesting, with sufficient math background to read it to boot.
msisk6 10 hours ago | parent
kccqzy 8 hours ago | parent
plaguuuuuu 7 hours ago | parent
You should give it a go.
craftkiller 6 hours ago | parent
1. The notation used
2. The lack of concrete examples
I'm not saying they should remove any of the content, just put it in a form more accessible to us. For example, I can read and mostly understand a news article in French, but it will take a lot of time and effort. If it was written in English, it would be easy for me to read. The two news articles have exactly the same content, one is just written in a form easier for me to understand.Well putting this article in math notation without defining any of the data structures behind it, that's not like putting the article in French, it's like putting the article in Japanese. I can't understand any of it. Some Japanese speakers on this site are saying "I don't understand the problem, just learn Japanese." which is pretty much the least constructive comment they could make.
mrandish 7 hours ago | parent
To be clear, I have no problem with math people conveying math stuff with math notation but it seemed like the type of article which, even if it will get into notation, first at least explains "the main idea of it" without notation, then expands with notation as necessary when fleshing details or implementation.
planckscnst 5 hours ago | parent
Fortunately, LLMs can work wonders in adapting content to be more accessible to a wide variety of audiences. Just give it a link and feed your exact post to it. It will be able to translate it into pseudocode and provide examples.
sailfast 13 hours ago | parent
I recall awhile back hearing someone ask whether intelligence was actually the same or similar to “compression” or storing all of this knowledge in weights - IE the ability to create something from reason or weights or relationships / connections. This article makes it even more interesting!
yhjc2692 9 hours ago | parent
(For anyone not familiar with 3B1B, it's a YouTube channel that visualizes intriguing math concepts to explain them intuitively!)
361994752 12 hours ago | parent
andai 12 hours ago | parent
NNCP: Lossless Data Compression with Neural Networks (2019)
yoz-y 12 hours ago | parent
layer8 11 hours ago | parent
yoz-y 10 hours ago | parent
NikolaNovak 10 hours ago | parent
wk_end 9 hours ago | parent
mdp2021 4 hours ago | parent
satvikpendem 3 hours ago | parent
fc417fc802 1 hour ago | parent
zahlman 9 hours ago | parent
(Even the audience for, say, 3b1b's explanation of what a transformer is, is niche.)
penguin_booze 2 hours ago | parent
Recently, Jensen Huang reportedly said he doesn't know where he lives (the address) with a straight face. This 'you' situation here is kind of like the Jensen situation: neither party understands what it's like to be the other party.
vatsachak 12 hours ago | parent
kooi 12 hours ago | parent
If you think that is crazy, ohh boy, just wait til you see all the other papers underlying LLMs, AI, and optimization in general.
I appreciate this post because starting from linear algebra is the correct way to form an intuition of the higher dimensional semantic spaces we're dealing with.
dullcrisp 11 hours ago | parent
For an LLM, the keys are the tokens in your context, and the values are … what exactly?
wilkystyle 10 hours ago | parent
Q = XW_q
K = XW_k
V = XW_v
From there, you can think of K and V like keys and values in a Python dictionary, and Q as the key you pass (e.g. d[Q] in Python to return some value V). The difference in an attention layer is that the query is matched to each key using a dot product, and rather than getting a single value back you get a weighted sum of values.
asgraham 10 hours ago | parent
argee 7 hours ago | parent
I understand you meant to compare it to dicts, but this is more like (the only?) similarity to outer product memory. Worth calling out since GP is confused about this connection specifically.
hum3hum3 11 hours ago | parent
femto 11 hours ago | parent
kridsdale1 6 hours ago | parent
ketothekingdom 10 hours ago | parent
nico 7 hours ago | parent
The concepts of fidelity/recall and the images/animation at the top reminded me of this small playful project that touches upon these topics: https://nicobrenner.github.io/lossy-git/
ketothekingdom 7 hours ago | parent
_svm 5 hours ago | parent
plasticeagle 1 hour ago | parent
What is d_k - I assume it's the dimension of the k vector. Similarly, I assume d_v is the dimension of the v vector. What is the "i" suffix for here at this early stage? It doesn't need to be there, it's just confusing.
You say the keys are "used for lookup based on similarity". What does this mean? Similarity to what? The existing keys? Something else?
Your first example then introduces the identifier "M", which seems to be the number of memories. Again, this is not defined. It speaks again of similarities, and introduces "weights". But the matrix Mxd_k is a matrix made of all your keys, which aren't "weights" - or at least this term is new. The term "tokens" makes an appearance around this time also - something else that needs defining.
I think you need to go through the text of this article, with an eye to someone who is reading it for the first time. Define every term you use, remove unnecessary notation - and also perhaps explain at the start why one would be interested in a "memory store" of this nature.
There is a place for something that really explains what's going on here. I've yet to find it.
justinnk 40 minutes ago | parent
sixdimensional 7 hours ago | parent
netfortius 2 hours ago | parent