tf.keras.initializers.Orthogonal
Инициализатор, генерирующий ортогональную матрицу.
Наследуется от: Initializer
tf.keras.initializers.Orthogonal(
gain=1.0, seed=None
)
Также доступен через сокращённую функцию tf.keras.initializers.orthogonal.
Если форма тензора, который нужно инициализировать, двумерная, он инициализируется ортогональной матрицей, полученной из QR-разложения матрицы случайных чисел, сгенерированных из нормального распределения. Если количество строк в матрице меньше, чем столбцов, то выход будет иметь ортогональные строки. В противном случае, выход будет иметь ортогональные столбцы.
Если форма тензора для инициализации имеет размерность больше двух, инициализируется матрица формы (shape[0] * ... * shape[n - 2], shape[n - 1]), где n — длина вектора формы. Затем матрица переформатируется, чтобы получить тензор нужной формы.
Примеры:
# Standalone usage: initializer = tf.keras.initializers.Orthogonal() values = initializer(shape=(2, 2))
# Usage in a Keras layer: initializer = tf.keras.initializers.Orthogonal() layer = tf.keras.layers.Dense(3, kernel_initializer=initializer)
| Аргументы | |
|---|---|
gain | множительный коэффициент, применяемый к ортогональной матрице |
seed | Целое число Python. Используется для обеспечения детерминированного поведения инициализатора. Обратите внимание, что инициализатор с заданным зерном не будет генерировать одинаковые случайные значения при многократном вызове, но несколько инициализаторов будут генерировать одну и ту же последовательность, если они были созданы с одинаковым значением зерна. |
Ссылки:
Методы
from_config
@classmethod
from_config(
config
)
Инициализирует инициализатор из словаря конфигурации.
Пример:
initializer = RandomUniform(-1, 1) config = initializer.get_config() initializer = RandomUniform.from_config(config)
| Аргументы | |
|---|---|
config | Словарь Python, результат get_config. |
| Возвращает | |
|---|---|
Экземпляр tf.keras.initializers.Initializer. |
get_config
get_config()
Возвращает конфигурацию инициализатора в формате JSON-сериализуемого словаря.
| Возвращает | |
|---|---|
| JSON-сериализуемый словарь Python. |
__call__
__call__(
shape, dtype=None, **kwargs
)
Возвращает объект тензора, инициализированный ортогональной матрицей.
| Аргументы | |
|---|---|
shape | Форма тензора. |
dtype | Необязательный тип данных тензора. Поддерживаются только типы с плавающей точкой. Если не указано, используется tf.keras.backend.floatx(), который по умолчанию равен float32, если вы не настроили его иначе (через tf.keras.backend.set_floatx(float_dtype)) |
**kwargs | Дополнительные ключевые аргументы. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/keras/initializers/Orthogonal