[英]Keras custom layer with custom function
我想創建帶有內置圖像處理 function 的自定義圖層,例如蒙版,或某種模糊/噪聲/顏色變化等。
我寫了這段代碼,但我不知道該怎么辦
__return input* mask[[1,0,1,0][0,1,0,1][1,0,1,0][0,1,0,1]]__
它不能那樣工作,因為該操作需要一個 numpy 數組,但得到“tensorflow.python.framework.ops.Tensor”
class MyLayer(tf.keras.layers.Layer):
def __init__(self, num_outputs):
super(MyLayer, self).__init__()
self.num_outputs = num_outputs
def build(self, input_shape):
self.kernel = self.add_weight("kernel",
shape=[int(input_shape[-1]),
self.num_outputs])
def call(self, input):
return input* mask[[1,0,1,0][0,1,0,1][1,0,1,0][0,1,0,1]]
##return tf.matmul(input, self.kernel)
layer = MyLayer(4,4)
https://i.stack.imgur.com/CCpgr.png圖片
結果我想制作類似編碼器網絡的東西,但在它中間有一個將輸入向量轉換為圖片的算法,然后網絡的右側部分將解碼此圖像並返回相同的值,我將其發送到輸入層
不確定您要做什么,但我想 lambda 包裝層可能是解決方案。 查看文檔和有用的博客。
https://blog.paperspace.com/working-with-the-lambda-layer-in-keras/
https://www.tensorflow.org/api_docs/python/tf/keras/layers/Lambda?hl=en
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.