我有一个Tensorflow 2 Biectorb0, b1, bN
的集合,并且我构建了一个派生的Biector类,该类由一系列原始Biector的链组成,因此:
class MyBijector( Bijector ):
def __init__( self ):
self.bChain = tfb.Chain( [ b0, b1, ... bN ] )
我是否必须为此明确定义_forward_log_det_jacobian
,或者Tensorflow是否为我想出了如何做到这一点?如果我必须定义它,有人能不能提醒我";链式规则";在这种情况下有效吗?
我真的有两个问题:首先,假设我只说"b=tfb。链([b1;(也就是说,在不定义新类的情况下(Tensorflow 2〃;只知道";如何计算";呼叫";还是我必须我自己定义。第二,如果我必须自己定义它,我该怎么做定义";det_ jacobian";,也就是说,我该如何使用"链式规则";这样做?
MyBijector
将具有__call__
方法,您可以轻松获得链实例(即:bij1(bij2)
(。
换句话说,TensorFlow本身就知道该怎么做,你不需要重新定义它