當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.keras.initializers.Orthogonal用法及代碼示例


生成正交矩陣的初始化程序。

繼承自:Initializer

用法

tf.keras.initializers.Orthogonal(
    gain=1.0, seed=None
)

參數

  • gain 應用於正交矩陣的乘法因子
  • seed 一個 Python 整數。用於創建隨機種子。有關行為,請參見tf.compat.v1.set_random_seed。請注意,種子初始化器不會在多次調用中產生相同的隨機值,但多個初始化器在使用相同的種子值構造時會產生相同的序列。

也可通過快捷函數 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)

參考:

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.initializers.Orthogonal。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。