Калькулятор тензорного произведения

Вычислите тензорное (внешнее) произведение двух векторов и отобразите результат как матрицу или развернутый вектор.

Введите два вектора числами, разделёнными запятыми или пробелами, выберите формат вывода и нажмите «Вычислить».

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

О калькуляторе тензорного произведения

Тензорное произведение, также называемое внешним произведением в контексте векторов, — это базовая операция линейной алгебры, которая берёт два вектора и строит из них матрицу. Пусть вектор u имеет m компонент, а вектор v — n компонент; тогда их тензорное произведение u ⊗ v — это матрица m × n, в которой элемент в строке i и столбце j равен произведению uᵢ на vⱼ. Это резко отличается от скалярного произведения, которое сводит два вектора к одному скаляру, и от векторного произведения, применимого только к трёхмерным векторам и возвращающего другой вектор. Математически, если u = [u₁, u₂, …, uₘ] и v = [v₁, v₂, …, vₙ], то для любой допустимой пары (i, j) верно (u ⊗ v)ᵢⱼ = uᵢvⱼ. Вычислительная сложность равна O(mn), поэтому операция эффективна даже для сравнительно больших векторов. Тензорное произведение билинейно: умножение любого из векторов на коэффициент масштабирует результат тем же коэффициентом, и оно распределительно относительно сложения векторов. Тензорное произведение некоммутативно: u ⊗ v и v ⊗ u обычно дают разные матрицы (одна — m × n, другая — n × m), если только m = n и не выполняется особое соотношение. Первый вектор всегда задаёт строки, второй — столбцы. Эта асимметрия особенно важна в физике и машинном обучении, где порядок несёт физический или смысловой смысл. В квантовой механике тензорные произведения незаменимы для описания составных систем. Когда объединяются две квантовые системы, пространство состояний составной системы является тензорным произведением пространств состояний отдельных систем. Например, система из двух кубитов имеет 4-мерное пространство состояний, являющееся тензорным произведением двух 2-мерных пространств кубита. Квантовая запутанность возникает именно тогда, когда составное состояние нельзя представить как простое тензорное произведение отдельных состояний. В машинном обучении и анализе данных тензорные произведения (и их более высокие обобщения, называемые тензорами) лежат в основе механизма внимания в моделях Transformer, операций пересечения признаков в рекомендательных системах и separable-свёрток в обработке изображений. Например, ядро гауссова размытия — это тензорное произведение одномерного горизонтального гауссова фильтра и одномерного вертикального гауссова фильтра, что позволяет выполнять эффективные раздельные вычисления. В обработке сигналов представление многомерных фильтров как тензорных произведений одномерных фильтров даёт существенную экономию вычислений. Развернутый вектор, который создаёт этот калькулятор, особенно полезен, когда результат нужно передать следующей операции, ожидающей одномерный вход, например полностью связному слою нейронной сети.

Примеры тензорного произведения

Четыре разобранных примера с разными размерностями векторов и форматами вывода.

ВекторыРезультатПримечания
u = [1, 2], v = [3, 4][[3, 4], [6, 8]]Матрица 2 × 2. Элемент (1,1) = 1×3 = 3; элемент (2,2) = 2×4 = 8.
u = [1, 2, 3], v = [4, 5][[4, 5], [8, 10], [12, 15]]Матрица 3 × 2 показывает, что длины векторов могут различаться.
u = [1, 0], v = [0, 1][[0, 1], [0, 0]] | flattened: [0, 1, 0, 0]Внешнее произведение стандартных базисных векторов. Ненулевой элемент находится только в строке 1, столбце 2.
u = [2, 3], v = [1, 4][[2, 8], [3, 12]]Общий случай 2 × 2. Каждая строка результата — это v, масштабированный соответствующей компонентой u.

Как пользоваться калькулятором тензорного произведения

  1. Введите компоненты первого вектора u как числа, разделённые запятыми или пробелами, например: 1, 2, 3.
  2. Введите компоненты второго вектора v в том же формате. Число компонентов у векторов может различаться.
  3. Выберите формат вывода: 'Matrix Format' показывает результат в виде таблицы строк и столбцов; 'Flattened Vector' показывает все элементы в одной строке.
  4. Нажмите «Вычислить». Матрица результата (или развернутый список) отобразится вместе с размерами матрицы.
  5. Нажмите «Сбросить», чтобы очистить все поля и начать новый расчёт.

FAQ по калькулятору тензорного произведения

Чем тензорное произведение отличается от скалярного?
Скалярное произведение берёт два вектора одинаковой длины и возвращает одно число (скаляр), суммируя произведения соответствующих компонент. Тензорное произведение берёт два вектора любой длины и возвращает матрицу: каждая компонента первого вектора умножается на каждую компоненту второго. Тензорное произведение сохраняет всю информацию об обоих векторах, тогда как скалярное сводит её к одному числу.
Должны ли два вектора быть одинаковой длины?
Нет. У векторов может быть разное число компонент. Если у u m компонент, а у v n компонент, результат — матрица m × n. Это одна из причин, почему тензорное произведение более общее, чем такие операции, как скалярное произведение, которое требует одинаковой длины.
Является ли тензорное произведение коммутативным?
Нет. u ⊗ v обычно отличается от v ⊗ u. Первый вектор всегда задаёт строки, а второй — столбцы, поэтому при перестановке порядка матрица результата транспонируется и, возможно, меняет форму.
Что означает формат развернутого вектора?
Развернутый вектор — это просто матрица результата m × n, прочитанная построчно в один список из mn чисел. Он полезен, когда нужно передать тензорное произведение как одномерный вход в следующий расчёт, например в модель машинного обучения, ожидающую вектор признаков фиксированного размера.
Как тензорное произведение используется в квантовых вычислениях?
В квантовой механике состояние многочастичной системы описывается тензорным произведением состояний отдельных частиц. Для двух кубитов, находящихся в состояниях [a, b] и [c, d], состояние объединённой системы — их тензорное произведение, 4-компонентный вектор. Именно эта формализация и даёт квантовым компьютерам экспоненциально растущее пространство состояний.
Какова связь с произведением Кронекера?
Произведение Кронекера — это обобщение тензорного произведения для матриц. Когда входы — векторы (рассматриваемые как столбцовые матрицы), u ⊗ v равен произведению Кронекера столбца u на строку vᵀ и даёт ту же матрицу m × n. Для общих матриц произведение Кронекера создаёт блочную матрицу.