chinese_text_cnn icon indicating copy to clipboard operation
chinese_text_cnn copied to clipboard

标签数量问题

Open nvliajia opened this issue 5 years ago • 10 comments

明明是二分类的数据,为何显示class_num=3呢?

nvliajia avatar Aug 12 '20 10:08 nvliajia

同问

zzzzzigzag avatar Sep 23 '20 09:09 zzzzzigzag

同问

Leanne-z avatar May 18 '21 07:05 Leanne-z

多了个unk

zonghui0228 avatar Dec 06 '21 08:12 zonghui0228

可以将代码中:args.class_num = len(label_field.vocab) 换成:args.class_num = len(label_field.vocab) - 1。因为代码用的时候是label_field.build_vocab(train_dataset, dev_dataset) 用的制作词汇表的代码,而词汇表中有一个unk,就是没有出现在词汇表中单词的代表形式,所以会多一个unk。label_field只对标签数量产生影响,只要把标签数量改回原始数量就行了。

caoxiaopeng123 avatar Apr 05 '22 03:04 caoxiaopeng123

Batch[1800] - loss: 0.009499 acc: 100.0000%(128/128) Evaluation - loss: 0.000026 acc: 94.0000%(6616/7000) early stop by 1000 steps, acc: 94.0000% 这个是作者跑出的结果;

Batch[2200] - loss: 0.008443 acc: 100.0000%(128/128) Evaluation - loss: 0.000025 acc: 94.7429%(6632/7000) Saving best model, acc: 94.7429% 这个是我跑出的结果

caoxiaopeng123 avatar Apr 05 '22 03:04 caoxiaopeng123

请问这个结果,只是args.class_num = len(label_field.vocab) 换成:args.class_num = len(label_field.vocab) - 1吗?: Batch[2200] - loss: 0.008443 acc: 100.0000%(128/128) Evaluation - loss: 0.000025 acc: 94.7429%(6632/7000) Saving best model, acc: 94.7429%

Huashan7 avatar Apr 13 '22 16:04 Huashan7

是的,其他的我记得我也没做修改,就搭建了环境!

caoxiaopeng123 avatar Apr 14 '22 00:04 caoxiaopeng123

@caoxiaopeng123 十分感谢

Huashan7 avatar Apr 14 '22 00:04 Huashan7

或者在配置label_field的时候可以设置关掉试试,: label_field = data.Field(sequential=False, unk_token=None) 我自己写的时候发现这样len(label_field.vocab)输出是正常的, 是2

lynn1885 avatar May 08 '23 05:05 lynn1885

大佬,那为什么我只有1000+条数据,为啥args.vocabulary_size = len(text_field.vocab)是4210多个?是因为我1000+条的数据构成了一个字典一样的东西,然后相当于字典里面存了4210个词汇吗?

Cgetier520990 avatar May 14 '24 05:05 Cgetier520990