ShawnyXiao / TextClassification-Keras

Text classification models implemented in Keras, including: FastText, TextCNN, TextRNN, TextBiRNN, TextAttBiRNN, HAN, RCNN, RCNNVariant, etc.
MIT License
816 stars 187 forks source link

HAN中的Document编码形式似乎不妥? #4

Open liuyaox opened 4 years ago

liuyaox commented 4 years ago

https://github.com/ShawnyXiao/TextClassification-Keras/blob/a447bd9b0561a9364482e0e77eee9214d97d9887/model/HAN/main.py#L22

如上line22-25这4行代码,所示编码过程好像如下: Step1: 强行在document(所有句子)后面padding一次,而不是在每个句子后面都padding一次,形如:(---表示句子) -----------,------,--- ------------,-------- --,000000000000000000 00000000000000000000

Step2: 强行把document按maxlen_sentence(假设为20)划分看,而非原本句子的自然划分,形如:(|表示向量划分) -----------,------,---|------------,--------|--,000000000000000000|00000000000000000000

我认为,应该是每个句子内先进行Word Level的编码,然后再进行句子间的Sentence Level编码?形如: ----------- 000000 000|------000000 00000000|-- -------------00000|----------0000000000

大家如何看待?

ShawnyXiao commented 4 years ago

您好,

您的顾虑是正确的。这份实例代码仅仅为了展示 HAN 能够正常运行。在实际使用的时候,确实应该按照句子维度进行 padding的。

liuyaox commented 4 years ago

您好,

您的顾虑是正确的。这份实例代码仅仅为了展示 HAN 能够正常运行。在实际使用的时候,确实应该按照句子维度进行 padding的。

哦哦好的,谢谢回复,我就是确认一下~