Tivadar Danka Profile picture
Apr 15, 2021 9 tweets 3 min read Read on X
In machine learning, the inner product (or dot product) of vectors is often used to measure similarity.

However, the formula is far from revealing. What does the sum of coordinate products have to do with similarity?

There is a very simple geometric explanation!

🧵 👇🏽
There are two key things to observe.

First, the inner product is linear in both variables. This property is called bilinearity.
Second, is that the inner product is zero if the vectors are orthogonal.
With these, given an 𝑦, we can decompose 𝑥 into two components: one is orthogonal, while the other is parallel to 𝑦.

So, because of the bilinearity, the inner product equals to the inner product of 𝑦 and the parallel component of 𝑥.
If we write 𝑦 as a scalar multiple of 𝑥, we can see that their inner product can be expressed in terms of the magnitude of 𝑦 and the scalar.
In addition, if we assume that 𝑥 and 𝑦 have unit magnitude, the inner product is even simpler: it describes the scaling factor between 𝑦 and the orthogonal projection of 𝑥 onto 𝑦.

Note that this factor is in [-1, 1]. (It is negative if the directions are opposite.)
There is more. Now comes the really interesting part!

Let's denote the angle between 𝑥 and 𝑦 by α. The scaling factor r equals the cosine of α!

(Recall that we assume that 𝑥 and 𝑦 have unit magnitude.)
If the vectors don't have unit magnitude, we can simply scale them.

The inner product of the scaled vectors is called cosine similarity.

This is probably how you know this quantity. Now you see why!
If you have liked this thread, consider following me and hitting a like/retweet on the first tweet of the thread!

I regularly post simple explanations of seemingly complicated concepts in machine learning, make sure you don't miss out on the next one!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Tivadar Danka

Tivadar Danka Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @TivadarDanka

Dec 4, 2023
Understanding graph theory will seriously enhance your engineering skills; you must absolutely be familiar with them.

Here's a graph theory quickstart, in collaboration with Alejandro Piad Morffis.

Read on: Image
What do the internet, your brain, the entire list of people you’ve ever met, and the city you live in have in common?

These are all radically different concepts, but they share a common trait.

They are all networks that establish relationships between objects. Image
As distinct as these things seem to be, they share common properties.

For example, the meaning of “distance” is different for

• physical networks,
• information netorks,
• orf social networks,

but in all cases, there is a sense in which some objects are “close” or “far”. Image
Read 15 tweets
Sep 13, 2023
Neural networks are stunningly powerful.

This is old news: deep learning is state-of-the-art in many fields, like computer vision and natural language processing. (But not everywhere.)

Why are neural networks so effective? I'll explain. Image
First, let's formulate the classical supervised learning task!

Suppose that we have a dataset D, where xₖ is a data point and yₖ is the ground truth. Image
The task is simply to find a function g(x) for which

• g(xₖ) is approximately yₖ,
• and g(x) is computationally feasible.

To achieve this, we fix a parametrized family of functions. For instance, linear regression uses this function family: Image
Read 19 tweets
Sep 12, 2023
A question we never ask:

"How large that number in the Law of Large Numbers is?"

Sometimes, a thousand samples are large enough. Sometimes, even ten million samples fall short.

How do we know? I'll explain. Image
First things first: the law of large numbers (LLN).

Roughly speaking, it states that the averages of independent, identically distributed samples converge to the expected value, given that the number of samples grows to infinity.

We are going to dig deeper. Image
There are two kinds of LLN-s: weak and strong.

The weak law makes a probabilistic statement about the sample averages: it implies that the probability of "the sample average falling farther from the expected value than ε" goes to zero for any ε.

Let's unpack this. Image
Read 15 tweets
Aug 24, 2023
With the power of mathematical induction, I'll prove that everyone has the same eye color.

Don't believe me? Read on.

(And see if you can spot the sleight of hand.) Image
To formalize the problem, define the proposition Aₙ by

Aₙ = "in a set of n people, everyone has the same eye color".

If n equals the human population of planet Earth, we get the original statement. We'll prove that Aₙ is true via induction. Image
Proof by induction works like climbing an infinite staircase.

First, we'll show A₁. Then, we'll show that if Aₙ is true, then Aₙ₊₁ is true as well.

This way, Aₙ is true for any positive integer via the chain of implications

A₁ → A₂ → ... → Aₙ. Image
Read 13 tweets
Aug 21, 2023
The single biggest argument about statistics: is probability frequentist or Bayesian? It's neither, and I'll explain why.

Buckle up. Deep-dive explanation incoming. Image
First, let's look at what is probability.

Probability quantitatively measures the likelihood of events, like rolling six with a dice. It's a number between zero and one. This is independent of interpretation; it’s a rule set in stone. Image
In the language of probability theory, the events are formalized by sets within an event space.

(The event space is also a set, usually denoted by Ω.) Image
Read 34 tweets
Aug 8, 2023
The Japanese multiplication method makes everybody feel "I wish they taught math like this in school."

It's not just a cute visual tool: it illuminates how and why long multiplication works.

Here is the full story. Image
First, the Japanese multiplication method.

The first operand (21 in our case) is represented by two groups of lines: two lines in the first (1st digit), and one in the second (2nd digit).

One group for each digit.
Similarly, the second operand (32) is encoded with two groups of lines, one for each digit.

These lines are perpendicular to the previous ones.
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(