2017-10-15 25 views
0

我使用Tensorflow和我想申请以下条件我tensorTensorflow:更新某些张量指标的一个条件

if(value > 0): 
    value = log(value) 
else: 
    value = -log(-value) 

目前,我做以下。

minone = tf.constant(-1, dtype=tf.float32) 
condition = tf.less(X, minone) 
idx = tf.where(condition) 
portion = tf.gather_nd(X, idx) 
log = -tf.log(-portion) 
X = tf.scatter_nd_update(X, idx, log) 

然而,当X不是一个正常的Tensortf.Variable类型,并且这仅适用。

如何获得Tensor类型变量的工作条件?

回答

2
value = tf.sign(value) * tf.log(tf.abs(value)) 
相关问题