ArticleslgStudy

science

Sparse distributed memory

Sparse distributed memory is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Sparse distributed memory rather than just read about it. In short: Sparse distributed memory (SDM) is a mathematical model of human long-term memory introduced by Pentti Kanerva in 1988 while he was at NASA Ames Research Center. This memory exhibits behaviors, both in theory and in experiment, that resemble those previously unapproached by machines – e.g., rapid recognition of faces or odors, discovery of new connections between seemingly unrelated ideas, etc.

Sparse distributed memory — main illustration
Sparse distributed memory — illustration

Key takeaways

  • Sparse distributed memory belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Sparse distributed memory to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Sparse distributed memory from memory before moving on to harder problems.

Reference excerpt

Sparse distributed memory (SDM) is a mathematical model of human long-term memory introduced by Pentti Kanerva in 1988 while he was at NASA Ames Research Center. This memory exhibits behaviors, both in theory and in experiment, that resemble those previously unapproached by machines – e.g., rapid recognition of faces or odors, discovery of new connections between seemingly unrelated ideas, etc. Sparse distributed memory is used for storing and retrieving large amounts ( 2 1000 {\displaystyle 2^{1000}} bits) of information without focusing on the accuracy but on similarity of information. There are some recent applications in robot navigation and experience-based robot manipulation.

General principle It is a generalized random-access memory (RAM) for long (e.g., 1,000 bit) binary words. These words serve as both addresses to and data for the memory. The main attribute of the memory is sensitivity to similarity. This means that a word can be read back not only by giving the original write address but also by giving one close to it, as measured by the number of mismatched bits (i.e., the Hamming distance between memory addresses). SDM implements transformation from logical space to physical space using distributed data representation and storage, similarly to encoding processes in human memory. A value corresponding to a logical address is stored into many physical addresses. This way of storing is robust and not deterministic. A memory cell is not addressed directly. If input data (logical addresses) are partially damaged at all, we can still get correct output data. The theory of the memory is mathematically complete and has been verified by computer simulation. It arose from the observation that the distances between points of a high-dimensional space resemble the proximity relations between concepts in human memory. The theory is also practical in that memories based on it can be implemented with conventional random-access memory elements.

Definition Human memory has a tendency to congregate memories based on similarities between them (although they may not be related), such as "firetrucks are red and apples are red". Sparse distributed memory is a mathematical representation of human memory, and uses high-dimensional space to help model the large amounts of memory that mimics that of the human neural network. An important property of such high dimensional spaces is that two randomly chosen vectors are relatively far away from each other, meaning that they are uncorrelated. SDM can be considered a realization of locality-sensitive hashing. The underlying idea behind a SDM is the mapping of a huge binary memory onto a smaller set of physical locations, so-called hard locations. As a general guideline, those hard locations should be uniformly distributed in the virtual space, to mimic the existence of the larger virtual space as accurately as possible. Every datum is stored distributed by a set of hard locations, and retrieved by averaging those locations. Therefore, recall may not be perfect, accuracy depending on the saturation of the memory. Kanerva's proposal is based on four basic ideas:

The Boolean space { 0 , 1 } n {\displaystyle \{0,1\}^{n}} , or 2 n {\displaystyle 2^{n}} points in 10 0 < n < 10 5 {\displaystyle 10^{0}<n<10^{5}} dimensions, exhibits properties which are similar to humans' intuitive notions of relationships between the concepts. This means that it makes sense to store data as points of the mentioned space where each memory item is stored as an n-bit vector. Neurons with n inputs can be used as address decoders of a random-access memory Unifying principle: data stored into the memory can be used as addresses to the same memory. Distance between two points is a measure of similarity between two memory items. The closer the points, the more similar the stored vectors. Time can be traced in the memory as a function of where the data are stored, if the data are organized as sequences of events.

The binary space N

The SDM works with n-dimensional vectors with binary components. Depending on the context, the vectors are called points, patterns, addresses, words, memory items, data, or events. This section is mostly about the properties of the vector space N = { 0 , 1 } n {\displaystyle \{0,1\}^{n}} . Let n be number of dimensions of the space. The number of points, or possible memory items, is then 2 n {\displaystyle 2^{n}} . We will denote this number by N and will use N and 2 n {\displaystyle 2^{n}} to stand also for the space itself. Concepts Related to the space N: { 0 , 1 } n {\displaystyle \{0,1\}^{n}}

… excerpt ends here. Continue reading the full article.

Illustrations

Sparse distributed memory: The negated-translated sigmoid function
The negated-translated sigmoid function

Worked examples

Example 1 — a first encounter with Sparse distributed memory

Start with the simplest possible case. Write down what Sparse distributed memory claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Sparse distributed memory before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Sparse distributed memory ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Sparse distributed memory

In research
Sparse distributed memory appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Sparse distributed memory in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Sparse distributed memory is common in secondary-school and first-year university syllabi. It links to neighbouring topics Cognitive architecture, Memory, so understanding it makes those chapters shorter.
In everyday life
Look for Sparse distributed memory outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Sparse distributed memory in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Sparse distributed memory means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Sparse distributed memory out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Sparse distributed memory in simple terms?

Sparse distributed memory (SDM) is a mathematical model of human long-term memory introduced by Pentti Kanerva in 1988 while he was at NASA Ames Research Center. This memory exhibits behaviors, both in theory and in experiment, that resemble those previously unapproached by machines – e.g., rapid r…

Why does Sparse distributed memory matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Sparse distributed memory?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Sparse distributed memory.

Tags

  • Cognitive architecture
  • Memory

Keep exploring