tf.linalg.normalize
| Просмотреть исходный код на GitHub |
Нормализует tensor по размерности axis с использованием заданной нормы.
tf.linalg.normalize(
tensor, ord='euclidean', axis=None, name=None
)
Это использует tf.linalg.norm для вычисления нормы по axis.
Эта функция может вычислять различные нормы векторов (1-норма, евклидова или 2-норма, бесконечная норма и, в общем случае, p-норма для p > 0) и матричные нормы (Фробениуса, 1-норма, 2-норма и бесконечная норма).
| Аргументы | |
|---|---|
tensor | Tensor типов float32, float64, complex64, complex128 |
ord | Порядок нормы. Поддерживаемые значения - 'fro', 'euclidean', 1, 2, np.inf и любое положительное вещественное число, дающее соответствующую p-норму. По умолчанию это 'euclidean', что эквивалентно норме Фробениуса, если tensor является матрицей, и эквивалентно 2-норме для векторов. Применяются некоторые ограничения: а) норма Фробениуса 'fro' не определена для векторов, б) если ось является 2-кортежем (норма матрицы), поддерживаются только 'euclidean', 'fro', 1, 2, np.inf. См. описание axis о том, как вычислять нормы для набора векторов или матриц, хранящихся в тензоре. |
axis | Если axis равно None (по умолчанию), вход рассматривается как вектор, и вычисляется единственная норма вектора по всему набору значений в тензоре, т.е. norm(tensor, ord=ord) эквивалентно norm(reshape(tensor, [-1]), ord=ord). Если axis является целым числом Python, вход рассматривается как набор векторов, и axis определяет ось в tensor, по которой вычисляются нормы векторов. Если axis является 2-кортежем целых чисел Python, он рассматривается как набор матриц, и axis определяет оси в tensor, по которым вычисляется матричная норма. Поддерживаются отрицательные индексы. Пример: если вы передаете тензор, который может быть либо матрицей, либо набором матриц во время выполнения, передайте axis=[-2,-1] вместо axis=None, чтобы убедиться, что вычисляются матричные нормы. |
name | Название операции. |
| Возвращаемые значения | |
|---|---|
normalized | Нормализованный Tensor с той же формой, что и tensor. |
norm | Вычисленные нормы с той же формой и типом tensor, но последняя ось равна 1. То же самое, что и выполнение tf.cast(tf.linalg.norm(tensor, ord, axis keepdims=True), tensor.dtype). |
| Исключения | |
|---|---|
ValueError | Если ord или axis неверны. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/linalg/normalize