Lineární algebra, 10 min čtení

Skalární součin

Jedno číslo, které říká, jak moc dva vektory míří stejným směrem.

  • Klíčová myšlenka
  • Definice
  • Intuice
  • Příklad
  • Pozor

Skalární součin vezme dva vektory a vrátí jedno číslo. Počítá se snadno, ale hlavně se dá číst: číslo ti řekne, jak moc spolu vektory souhlasí.

Zkus to rukama

Táhni za konce vektorů a sleduj tři věci: znaménko čísla, úhel a žlutý stín.

Hřiště: skalární součintáhni za oba konce
u · v = 6.00úhel = 53°míří stejným směrem

Žlutá úsečka je stín vektoru v na přímku vektoru u.

Podobnost vektorů
import numpy as np

u = np.array([3, 1])
v = np.array([1, 3])

dot = u @ v
cos = dot / (np.linalg.norm(u) * np.linalg.norm(v))
uhel = np.degrees(np.arccos(cos))

print("skalární součin:", dot)
print("kosinová podobnost:", round(cos, 3))
print("úhel ve stupních:", round(uhel, 1))

Proč to v ML potřebujeme

Každý neuron v neuronové síti dělá právě tohle: skalární součin vstupů s váhami. Vyšel kladný? Vstup se podobá tomu, co neuron hledá. Až se k neuronovým sítím dostaneme, vrátíme se k tomuhle obrázku.

Skalární součin dvou nenulových vektorů vyšel 0. Co to znamená?