如何在自定义TF图层中使用动态变量

时间:2019-11-04 12:15:45

标签: python tensorflow keras

如何在Keras自定义图层计算中使用一些动态变量

我试图基于在on_epoch_end回调中填充的列表对象在Keras自定义层中执行一些操作,但是问题在于,自定义层初始化时会实例化此“列表”对象以及其中发生的所有更改“列表”的回调不会传播到自定义图层列表实例化。

class MyLayer(Layer):
    def __init__(self, num, **kwargs):
        super(MyLayer, self).__init__(**kwargs)
        self.num = num
    def build(self, input_shape):
        super(MyLayer, self).build(input_shape) 

    def call(self, x):
        return dostuff(x,self.num,self

.getlis())

def compute_output_shape(self, input_shape):
    return input_shape

def getlis(n):
    return stat.lis

类统计:     lis = []

我想在回调函数中更改此lis对象,并在正向传递中发挥作用

目前,我确实在自定义图层计算中看到了更新列表对象的效果,我怀疑在初始化图层时,其所有变量都是静态初始化的

0 个答案:

没有答案