生活随笔
收集整理的這篇文章主要介紹了
keras 自定义层 2
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
- 本質就是矩陣相乘 Amn *Bnp
- 這里會提取輸入矩陣最后一層的dim 比如說是Amn的n
import keras
import tensorflow as tf
class Linear(keras.layers.Layer):def __init__(self, units=32):super(Linear, self).__init__()self.units = unitsdef build(self, input_shape):print(input_shape)self.w = self.add_weight(#本質就是矩陣相乘 Amn *Bnp #這里會提取輸入矩陣最后一層的dim 比如說是Amn的nshape=(input_shape[-1], self.units),initializer="random_normal",trainable=True,)self.b = self.add_weight(shape=(self.units,), initializer="random_normal", trainable=True)# super().build(input_shape)def call(self, inputs):# print(self.input_shape(inputs))return tf.matmul(inputs, self.w) + self.b
x = tf.ones((2, 2))
linear_layer = Linear(6)
y = linear_layer(x)
print(y)
(2, 2)
tf.Tensor(
[[-0.0910622 -0.04033005 -0.0540841 -0.06019955 0.05445318 0.07133652][-0.0910622 -0.04033005 -0.0540841 -0.06019955 0.05445318 0.07133652]], shape=(2, 6), dtype=float32)
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
總結
以上是生活随笔為你收集整理的keras 自定义层 2的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。