Hyperdimensional Computing
github.com
github.com
So for instance, a typical NLP algorithm (although not GPT-3, IIRC) might represent a word as a 500-float-long vector, which is the same as saying the algorithm considers each word as a point in 500-dimensional space. This turns out to have weirdly useful properties, to the point where directions in this 500-dimensional space start to have semantic correspondences (e.g. [0], still one of the coolest things in ML, IMHO.) You can't do the same trick with a 3D space- the algorithm doesn't have enough to work with when all it knows about a word is three numbers.
Another cool example- in gradient descent, you're constantly trying to find the lowest point in a "fitness landscape"; in a 3D landscape, you might easily find yourself in a "valley" where every direction is worse than you currently are (a local minima), and you won't know where to go. In a 500D landscape, it's unlikely that you'll find yourself in a valley where all 500 available directions lead somewhere worse. So the algorithm will be much less likely to get stuck, and this effect gets more robust the more dimensions you have.
[0] https://colah.github.io/posts/2014-07-NLP-RNNs-Representatio...
Introductory article - "Hyperdimensional computing and its role in AI" by,Givi Odikadze:
https://medium.com/dataseries/hyperdimensional-computing-and...
When I read over SDM I got the impression it wasn't terribly useful, if anyone wants to set me right please do.
After glancing through a couple papers I can't entirely shake the feeling that the entire thing might be a social experiment to see how much jargon and fantastical sound words can be mashed together before people notice it's nonsense (even though I realise it's not).
Are you sure? The jargon is heavy to parse, but the claims are just plainly absurd.
All the jargon is probably there to cover-up to the fact that the claims tell only half of the history, and you won't like the other half.
- holy jargon, Batman! From what I've gleaned, "holographic" refers to Tony Plate's Holographic Reduced Representations
- "hypervector" is just a swanky term for very-high-dimensionality vectors, a la "hypersonic", "hypervisor", hyper-encabulator, etc.
- this reminds me an awful lot of thought vectors. The first abstract linked mentions HRRs alongside semantic vectors, so both are types of hypervectors I think?
- this also reminds me of Numenta/Nupic/sparse distributed represntations. I think SDR's are also hypervectors?
Or a la hypercube. Hyper- is an established prefix for describing n-dimensional objects
You can do this yourself by the way: click the time of the post (".. minutes ago" / ".. days ago") to view the comment on its own and click the link to "Vouch" in the top line, where also the name and the time since commenting is shown.
That said, it's pretty marginal stuff. ESNs are weird. Cool weird anyway.
If I were looking at it in a serious way rather than reading the funny papers, I'd think about ways of applying topological ideas to ESNs. ESNs on the critical ridge probably have an interesting graph when projected onto a topological space.
My quick impression is that it's something similar to "embeddings", where some features (e.g. words) are mapped to some high-dimensional vector space and computations are done in that space. What those computations are seem to vary quite a bit from paper to paper.
https://patents.google.com/patent/US20190227739A1/en?oq=US20...
By dimension they mean the number of items in the list. In the above example it's a 4 dimensional vector.
Make the numbers binary digits and voila.
By hyperdimensional they mean the list has 500 or more items.
relevant https://en.wikipedia.org/wiki/Sparse_distributed_memory