当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。