yhcc / BARTABSA

142 stars 28 forks source link

the metric #3

Open Wangpeiyi9979 opened 2 years ago

Wangpeiyi9979 commented 2 years ago

您好,很感激您的工作,但是我对metric上有点小疑惑 image "这里相同的pair会被计算多次". 请问这里计算多次指的是什么呢,以AE为例,这是指的BART可能生成重复的aspects?按理说重复的aspects只能算预测对1个。但是在metric中这些重复的aspects都会被当做tp计算?

但是我看您的代码好像进行了去重操作 image

所以"这里相同的pair会被计算多次".到底是什么意思呢,望解答

Wangpeiyi9979 commented 2 years ago

还有一点疑惑,我发现从paper里的Figure3的示意图里来看,做AE的时候,应该是只输出aspect的start和end index。但是我发现在wang这个目录下,只有OESpanMetric和 AESCSpanMetric两个metric。在AESCSpanMetric用aesc的输出同时计算了AE和AESC两个任务的P,R,F1?所以请问是没有单独做AE任务吗 image

Wangpeiyi9979 commented 2 years ago

我细看了一下wang数据集上的代码,发现您用【一个模型】做了oe和aesc两个任务(相当于多任务),并分别在target端添加0 2 2'和0 3 3'作为任务标识符,然后直接通过aesc的结果得到ae,alsc,aesc的指标?请问是不是我哪里理解错了。 如果确实是这样操作的话,想请问一下为什么不单独做这些子任务呢?是不是多任务的方式以及直接通过aesc的结果得到ae,效果会好一些。期待您的回复

yhcc commented 2 years ago

请问这里计算多次指的是什么呢,以AE为例,这是指的BART可能生成重复的aspects?按理说重复的aspects只能算预测对1个。但是在metric中这些重复的aspects都会被当做tp计算?

这里的注释是错误的注释,按照代码就是重复的不会计算多次,因为重复了key就一样,就只会保留一个。

yhcc commented 2 years ago

还有一点疑惑,我发现从paper里的Figure3的示意图里来看,做AE的时候,应该是只输出aspect的start和end index。但是我发现在wang这个目录下,只有OESpanMetric和 AESCSpanMetric两个metric。在AESCSpanMetric用aesc的输出同时计算了AE和AESC两个任务的P,R,F1?所以请问是没有单独做AE任务吗

好像是的,应该是直接拿了AESC中的AE结果作为了AE任务的结果。

yhcc commented 2 years ago

如果确实是这样操作的话,想请问一下为什么不单独做这些子任务呢?是不是多任务的方式以及直接通过aesc的结果得到ae,效果会好一些。期待您的回复

因为我们的目标是一个one-for-all,所以就希望不要分开他们。分开的话,结果也许还会高一些,因为我觉得这几个任务应该不太能够相互促进,反而是可能有一个错误传播的问题。