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

如何在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对象,并在正向传递中发挥作用

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

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

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3166829.html

大家都在问