ZichaoHuang/TransE

请教prediction

Closed this issue · 4 comments

在evaluation中,得到了distance_tail_prediction和distance_head_prediction,transE原理是让正样本的距离尽可能小,但是在计算hit10时用了tf.nn.top_k找了距离最大的10个index,不应该是距离最小的10个吗?

这一行会把top_k所得到的结果倒序,实际上是找了距离最小的10个idx。

不好意思,我还是没搞明白,(挠头)这一行指的是_, idx_tail_prediction = tf.nn.top_k(tf.reduce_sum(tf.abs(distance_tail_prediction), axis=1),k=self.kg.n_entity)吗,如果倒序的话不应该是在abs或者reduce_sum操作后加一个负号吗

"这一行“指的是model.py第235行,其中的idx_head_prediction[::-1]tf.nn.top_k()所得到的结果进行了倒序,所以实际上是查找了距离最小的10个idx。

哦哦,你的k取了entity的数量,明白了,谢谢!