few-shot-text-classification
few-shot-text-classification copied to clipboard
损失无下降
您好,在研究代码进行尝试的过程中发现损失很快降到一个值后就一直维持及小幅度的波动,准确率卡在0.2不变,检查了下发现每个batch里induction出来的几个classvector几乎差不多,所以导致了没有继续学习到。请问又遇到过类似的情况么?
另外有一个疑问还望可以赐教。这里encoder的输出support_vector和query_vector的shape分别是(c*s, 2*hidden_size), (c*q, 2*hidden_size);Induction得到的class_vector是(c, 2*hidden_size), 这样一来Relation的输入应该分别是class_vector:(c, 2*hidden_size)和query_vector:(c*q, 2*hidden_size)才对,与Relation里的dimension会不一致吧?按理说计算的应该是c个class各q个样本和class_vector的距离,然后计算这个c*q个距离和c*q个target label的loss?
您好,在研究代码进行尝试的过程中发现损失很快降到一个值后就一直维持及小幅度的波动,准确率卡在0.2不变,检查了下发现每个batch里induction出来的几个classvector几乎差不多,所以导致了没有继续学习到。请问又遇到过类似的情况么?
@puppyapple 这个问题我没遇到过。但是,ARSC是二分类任务,所以准确率最差也应该是0.5左右吧? 在ARSC数据集上train的话,一开始就保持在0.5左右,可能会保持几k个episodes,但是train几k个episodes之后会突然变到0.7+,最后再慢慢升到0.8+。另外,word2vec是必须要有的,没word2vec我也train不出来。
您好,在研究代码进行尝试的过程中发现损失很快降到一个值后就一直维持及小幅度的波动,准确率卡在0.2不变,检查了下发现每个batch里induction出来的几个classvector几乎差不多,所以导致了没有继续学习到。请问又遇到过类似的情况么?
我用文本分类的数据集,去掉了pos和mask编码之后,实验结果也是一直在0.2左右。恳请大佬指点!
这里编码器的输出support_vector和query_vector的shape分别是(cs, 2hidden_size), (cq, 2hidden_size);归纳的class_vector是(c, 2* hidden_size),这样一来Relation的输入应该分别是class_vector:(c, 2hidden_size)和query_vector:(cq, 2hidden_size)才对按,与Relation里的维度会相关吧?是c个类各q个样本和class_vector的距离,然后计算这个cq个距离和c*q个目标标签的损失?
好像Relation的输入就是class_vector:(c, 2hidden_ size)和query_vector:(cq, 2*hidden_ size)这两个哎……