Векторные вычисления важны либо напрямую, либо как метод, который вносит небольшие изменения в алгоритм обучения, чтобы модель лучше обобщала.

Векторы используются во всей области машинного обучения при формулировании алгоритмов и процессов для достижения оптимальной целевой переменной (y) после обучения алгоритма.

Что такое векторная норма?

Операции с векторной матрицей часто требуют, чтобы вы вычислили длину (или размер) вектора. В двумерном пространстве длина вектора определяется как,

Квадратный корень из суммы квадратов горизонтальной и вертикальной составляющих.

Длина вектора называется величиной вектора или нормой вектора.

Длина вектора всегда неотрицательна. Для ненулевых векторов величина всегда положительна, а для нулевых векторов всегда равна нулю.

Нулевой вектор в трехмерном пространстве равен (0,0,0).

Существует несколько различных типов вычислений векторных норм, используемых в машинном обучении. Эти

  • Норма вектора L1
  • Норма вектора L2
  • Максимальная норма вектора.

Вектор L1 Норма

Норма вектора L1 также известна как норма такси или норма Манхэттена.

Норма L1 рассчитывается как сумма абсолютных значений компонент вектора.

Следует отметить, что в норме L1 1 на самом деле является верхним индексом, поэтому норму L1 лучше записывать как норму L¹.

Например, в 2D-пространстве, если вектор v = x + y, где x - компонент в направлении x, а y - компонент в направлении y.

В этом случае векторная норма L¹ будет

l¹(v) = ||v||₁ = |x| + |y|

Норма L¹ может быть реализована с использованием numpy следующим образом:

import numpy as np
from numpy.linalg import norm
v = np.array([2,8,9])
l1_norm = norm(v, 1)
print(l1_norm)

Второй параметр нормы - 1, который говорит, что NumPy должен использовать L¹ norm для вычисления величины.

В этом случае наш код будет печатать 19.

Вектор L2 Норма

Векторная норма L2 также известна как евклидова норма.

Норма L2 вычисляется как квадратный корень из суммы квадратов компонент вектора.

Так же, как норма L¹, в норме L2 2 фактически является верхним индексом, поэтому норму L2 лучше записывать как норму L².

Например, в 2D-пространстве, если вектор v = x + y, где x - компонент в направлении x, а y - компонент в направлении y.

В этом случае векторная норма L² будет

l² (v) = || v || ₂ = sqrt ((| x | ² + | y ​​| ²))

Норма L² может быть реализована с использованием numpy следующим образом:

import numpy as np
from numpy.linalg import norm
v = np.array([2,10,11])
l2_norm = norm(v, 2)
print(l2_norm)

Второй параметр нормы - 2, который сообщает, что NumPy должен использовать норму L² для вычисления величины.

В этом случае наш код будет печатать 15.

Вектор Макс Норма

Длину вектора можно вычислить, используя максимальную норму, которую можно записать как L (inf)

L (inf) = || v || (бесконечность)

Максимальная норма рассчитывается как максимальное значение вектора.

Например, в 2D-пространстве, если вектор v = x + y, где x - компонент в направлении x, а y - компонент в направлении y.

Итак, || v || инф = макс (| х |, | у |)

Норма L max может быть реализована с использованием numpy следующим образом:

import numpy as np
from numpy.linalg import norm
v = np.array([2,10,11])
lmax_norm = norm(v, np.inf)
print(lmax_norm)

Второй параметр нормы - np.inf, который сообщает, что NumPy должен использовать норму L max для вычисления величины.

В этом случае наш код будет печатать 11.

В этом блоге мы узнали о векторных нормах и различных способах их вычисления для различных приложений в машинном обучении.

Обязательно попробуйте код Python с разными значениями, чтобы лучше понять, как они работают.

использованная литература