text_gcn
text_gcn copied to clipboard
对于有label的测试集准确率低的问题
您好,我将自己的数据集按照格式整理好放入程序中运行,所有数据集都包含了label,测试集格式与训练集相同。运行后训练集准确率可达99.8%,但测试集及验证集准确率均只有0.01甚至更低。请问这是正常的吗?若不正常,我应该如何修改代码呢?
@uncle-tou 您好,不正常,估计要检查一下处理完的ty变量跟原始测试集label能否对应上
您好,我检查了我的数据集(为THUCNews数据集),处理后的格式与例程自带的原始数据集一致。我又分别用R8和oshume数据集试了一次,都是会有同样的结果: Epoch: 0001 train_loss= 2.30258 train_acc= 0.09851 val_loss= 2.30259 val_acc= 0.09850 time= 12.74146 Epoch: 0002 train_loss= 2.29527 train_acc= 0.87257 val_loss= 2.30259 val_acc= 0.09850 time= 10.11644 Epoch: 0003 train_loss= 2.27775 train_acc= 0.86065 val_loss= 2.30259 val_acc= 0.09850 time= 9.97561 Epoch: 0004 train_loss= 2.25075 train_acc= 0.85864 val_loss= 2.30259 val_acc= 0.09850 time= 9.80227 Epoch: 0005 train_loss= 2.21337 train_acc= 0.85752 val_loss= 2.30259 val_acc= 0.09850 time= 10.08559 Epoch: 0006 train_loss= 2.16524 train_acc= 0.86353 val_loss= 2.30259 val_acc= 0.09850 time= 9.75813 Epoch: 0007 train_loss= 2.10707 train_acc= 0.86670 val_loss= 2.30259 val_acc= 0.09850 time= 9.95471 ... 即在所有epoch中验证集的损失和准确率均一直保持不变。最后的结果中,测试集的第一种label召回率为1,其余为0。我在build-graph时检查过ty和y,都是没有问题的。 验证集是从训练集中分离出来的(不知道我有没有理解错),那么在训练集没问题的情况下,验证集不应该出现问题呀。
(PS.由于我无法安装TensorFlow2.0以下的版本,为了程序能够运行,我进行了一些必要的语句修改(皆针对TensorFlow报错而修改),不知道这么做是否与这种异常情况相关。
(PPS.另外,我发现本例程的#130问题与我有相似的疑问:https://github.com/yao8839836/text_gcn/issues/130。有可能错误原因跟我一样
问题解决了,问题就出在TensorFlow的代码修改上,我重新修改了部分语句,现已可成功运行,验证集测试集皆无误。
问题解决了,问题就出在TensorFlow的代码修改上,我重新修改了部分语句,现已可成功运行,验证集测试集皆无误。
你好,可以分享一下经验吗