Sleepychord/CogLTX

在prediction中用了标签(qbuf)是不是存在标签泄露的嫌疑。

cc2017111 opened this issue · 3 comments

在测试集上测试指标时,mem_replay(main_loop.py line75)调用了qbuf(测试集标签)参数,选出关键块,送入reasoner做task-specific的推理。是不是作弊了?是不是有标签泄露的嫌疑,judge和reasoner既然是jointly train的,为什么预测时judge还要用标签去初始化Z矩阵。如果我在工业场景上实际运用,我的实际数据是没有标签的,我如何做mem_replay?

您好,代码没有标签泄露,也不是作弊。我猜测您说的是20news这个数据集,请仔细看

qbuf, cnt = Buffer.split_document_into_blocks([tokenizer.cls_token], tokenizer, cnt=cnt, hard=False, properties=[('label_name', label_name), ('label', l), ('_id', str(i)), ('blk_type', 0)])

qbuf仅仅包含一个cls,其标签是记在property里面的仅仅在算正确率的时候用到,运算过程中没有用到。

谢谢回答,昨日我自己已经意识到了,关了这个issue,最近一直在研究您的实现代码,想用tensorflow实现一下,应用在实际的场景中。感谢!

hi, 你跑通代码了吗?能得到文章中的结果吗?