База

Тригонометрия

Единичная окружность

Точка на окружности радиуса 1 под углом $\theta$ имеет координаты $(\cos\theta, \sin\theta)$.

unit circle

  • Радианы: полный оборот $= 2\pi$ рад $= 360°$; $\pi$ рад $= 180°$; 1 рад ≈ 57.3°. В коде и формулах — всегда радианы: np.sin(np.pi / 2) == 1.0.
  • Основное тождество: $\sin^2\theta + \cos^2\theta = 1$ (теорема Пифагора на окружности).
  • Периодичность: $\sin(\theta + 2\pi) = \sin\theta$.
θ 0 π/6 π/4 π/3 π/2 π
sin 0 1/2 √2/2 √3/2 1 0
cos 1 √3/2 √2/2 1/2 0 −1

Поворот

Повернуть точку $(x, y)$ на угол $\theta$:

$$ \begin{pmatrix} x' \\ y' \end{pmatrix} = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} \begin{pmatrix} x \\ y \end{pmatrix} $$

Где в ML: - RoPE — позиционное кодирование почти всех современных LLM — поворачивает пары координат запросов и ключей на угол, пропорциональный номеру токена. - Синусоидальные позиционные кодировки исходного трансформера — набор синусов и косинусов разных частот. - Косинусное сходство эмбеддингов — косинус угла между векторами. - Cosine learning rate schedule — половина периода косинуса от пика LR до минимума. - Преобразование Фурье раскладывает сигнал (звук, временной ряд) на синусоиды.

🏋️ Практика Б5

Б5.1. Переведите 45° и 120° в радианы.

▶️ Ответ $45° = \pi/4 \approx 0.785$; $120° = 2\pi/3 \approx 2.094$.

Б5.2. Поверните вектор $(1, 0)$ на 90°. Что с его длиной?

▶️ Ответ $(\cos 90°, \sin 90°) = (0, 1)$. Длина осталась 1 — повороты не меняют длины, поэтому RoPE не портит масштаб векторов.

Б5.3. Косинус угла между эмбеддингами равен 0.5. Какой угол? А если −1?

▶️ Ответ 60°: похожи частично. −1 — 180°, противоположны по смыслу направления.