РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
148 of 824 menu

Функция matmul

Функция matmul выполняет матричное умножение двух тензоров. Первым параметром функция принимает первый тензор, вторым параметром - второй тензор. Третьим параметром можно передать флаг transpose_a, который транспонирует первый тензор перед умножением. Четвертым параметром можно передать флаг transpose_b, который транспонирует второй тензор перед умножением. Операция следует правилам линейной алгебры: число столбцов первого тензора должно совпадать с числом строк второго тензора.

Синтаксис

tf.matmul(a, b, [transpose_a], [transpose_b])

Пример

Давайте перемножим две матрицы размером 2x3 и 3x2:

import tensorflow as tf a = tf.constant([[1, 2, 3], [4, 5, 6]]) b = tf.constant([[1, 2], [3, 4], [5, 6]]) res = tf.matmul(a, b) print(res)

Результат выполнения кода:

tf.Tensor( [[22 28] [49 64]], shape=(2, 2), dtype=int32)

Пример

Давайте перемножим два вектора. Вектор-строка умножается на вектор-столбец, результатом будет скаляр:

import tensorflow as tf a = tf.constant([1, 2, 3]) b = tf.constant([4, 5, 6]) res = tf.matmul(a, b) print(res)

Результат выполнения кода:

tf.Tensor(32, shape=(), dtype=int32)

Пример

Давайте используем флаг transpose_a, чтобы транспонировать первую матрицу перед умножением:

import tensorflow as tf a = tf.constant([[1, 4], [2, 5], [3, 6]]) b = tf.constant([[1, 2], [3, 4], [5, 6]]) res = tf.matmul(a, b, transpose_a=True) print(res)

Результат выполнения кода:

tf.Tensor( [[22 28] [49 64]], shape=(2, 2), dtype=int32)

Пример

Давайте перемножим матрицу и вектор:

import tensorflow as tf a = tf.constant([[1, 2, 3], [4, 5, 6]]) b = tf.constant([1, 2, 3]) res = tf.matmul(a, b) print(res)

Результат выполнения кода:

tf.Tensor([14 32], shape=(2,), dtype=int32)

Смотрите также

  • функцию multiply,
    которая выполняет поэлементное умножение
  • функцию tensordot,
    которая выполняет тензорное произведение
  • функцию einsum,
    которая выполняет умножение по правилу Эйнштейна
  • функцию add,
    которая выполняет поэлементное сложение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить