TensorFlow中的Tensor-Tensor元素智能除法

时间:2018-07-10 20:50:20

标签: python tensorflow machine-learning neural-network

我正在尝试使用tf.div()将一个张量除以相同形状的另一个张量。这是我的尝试:

tf.div((y-logits),y)

其中:

y: <tf.Tensor 'Placeholder_1:0' shape=(2, 60) dtype=float32>
logits: <tf.Tensor 'Tanh:0' shape=(2, 60) dtype=float32>

结果张量输出为“ nan”。即使我更改了除数,例如用(y-logit)替换为y(以使两个张量具有相同类型并隔离可能存在的复杂度),也是这样。

其他背景:我正在尝试通过减去对数和目标向量,然后除以目标向量(逐元素)来创建对数的准确性度量。

最后一条评论:tf.div(logits,logits)产生一个非nan值。也许y是一个占位张量的事实在某个地方引入了内部误差?我怎么能克服这个问题?


编辑(说明):

1。)y张量中没有NaN值。但是,有0e + 00s;这将创建分母为零的实例。

2。)这不是分类问题。因此,tf.equal(tf.argmax(y,1),tf.argmax(logits,1))不是适用的准确性指标。我已经在使用tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(labels= y,logits= logits))来创建损失函数。我只是想将目标向量中的值与输出向量中的各个值(对数)进行比较,并认为做到这一点的最佳方法是误差百分比。

所以..我似乎无法使用此方法来确定准确性。我还可以通过什么其他方式计算精度? RMSE技术?

0 个答案:

没有答案