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


Python tf.keras.layers.Layer.set_weights用法及代碼示例


用法

set_weights(
    weights
)

參數

  • weights NumPy 數組的列表。數組的數量及其形狀必須與層權重的維數相匹配(即,它應該與 get_weights 的輸出相匹配)。

拋出

  • ValueError 如果提供的權重列表與圖層的規格不匹配。

從 NumPy 數組中設置層的權重。

層的權重表示層的狀態。此函數設置來自 numpy 數組的權重值。權重值應按層創建它們的順序傳遞。請注意,圖層的權重必須在調用此函數之前通過調用圖層進行實例化。

例如,Dense 層返回兩個值的列表:內核矩陣和偏置向量。這些可用於設置另一個 Dense 層的權重:

layer_a = tf.keras.layers.Dense(1,
  kernel_initializer=tf.constant_initializer(1.))
a_out = layer_a(tf.convert_to_tensor([[1., 2., 3.]]))
layer_a.get_weights()
[array([[1.],
       [1.],
       [1.]], dtype=float32), array([0.], dtype=float32)]
layer_b = tf.keras.layers.Dense(1,
  kernel_initializer=tf.constant_initializer(2.))
b_out = layer_b(tf.convert_to_tensor([[10., 20., 30.]]))
layer_b.get_weights()
[array([[2.],
       [2.],
       [2.]], dtype=float32), array([0.], dtype=float32)]
layer_b.set_weights(layer_a.get_weights())
layer_b.get_weights()
[array([[1.],
       [1.],
       [1.]], dtype=float32), array([0.], dtype=float32)]

相關用法


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