Attention, Intuitively
AI & ML: lesson 6 of 15
Every position decides which others to listen to.
Lesson 6 of 15 · 5 min
Attention, Intuitively
Step 1 of 12
positions3
Attention lets every position decide which of the others to listen to.
The Idea
Attention lets each position build its own mixture of the others. Relevance scores are normalised into weights that sum to one, and the output is the blended values. The weights are recomputed for every input.
Real-World Example
A sound engineer at a mixing desk pushes up the two microphones that carry this line and pulls the rest down, then rebalances the whole desk for the next line.
The Code
values = {"the": [0.0, 1.0], "river": [1.0, 0.0], "bank": [0.5, 0.5]}
weights = {"the": 0.1, "river": 0.7, "bank": 0.2} # already sum to 1.0
out = [0.0, 0.0]
for word, w in weights.items():
for i, v in enumerate(values[word]):
out[i] += w * v # blend, do not choose
print([round(x, 2) for x in out]) # [0.8, 0.2] pulled toward "river"
Your turn
What does this print?
values = {"the": [0.0, 1.0], "river": [1.0, 0.0], "bank": [0.5, 0.5]}
weights = {"the": 0.2, "river": 0.2, "bank": 0.6}
out = [0.0, 0.0]
for word, w in weights.items():
for i, v in enumerate(values[word]):
out[i] += w * v
print([round(x, 2) for x in out])Mini quiz
1 / 3