簡體   English   中英

Keras 自定義層與自定義 function

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM