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

Функция linalg.set_diag

Функция linalg.set_diag устанавливает переданные значения на диагональ тензора. Первым параметром функция принимает исходный тензор, вторым - значения диагонали. Третьим необязательным параметром можно передать смещение диагонали. Функция возвращает новый тензор с измененной диагональю.

Синтаксис

tf.linalg.set_diag(input, diagonal, [k])

Пример

Давайте создадим квадратный тензор и установим новые значения на его главной диагонали:

import tensorflow as tf t = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) res = tf.linalg.set_diag(t, [10, 11, 12]) print(res)

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

tf.Tensor( [[10 2 3] [ 4 11 6] [ 7 8 12]], shape=(3, 3), dtype=int32)

Пример

Давайте установим значения на диагональ, смещенную на одну позицию вправо:

import tensorflow as tf t = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) res = tf.linalg.set_diag(t, [10, 11], k=1) print(res)

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

tf.Tensor( [[ 1 10 3] [ 4 5 11] [ 7 8 9]], shape=(3, 3), dtype=int32)

Пример

Давайте установим значения на диагональ, смещенную на одну позицию влево:

<+python+> import tensorflow as tf t = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) res = tf.linalg.set_diag(t, [10, 11], k=-1) print(res) <-python+>

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

tf.Tensor( [[ 1 2 3] [10 5 6] [ 7 11 9]], shape=(3, 3), dtype=int32)

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

  • функцию diag,
    которая извлекает диагональ тензора
  • функцию band_part,
    которая выделяет диагональную часть тензора
  • функцию trace,
    которая вычисляет сумму диагональных элементов
  • функцию matmul,
    которая выполняет матричное умножение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить