在进行NLP的学习过程中,我发现keras自带的imdb数据挺好用的,打印了下train_dataset发现都是数字,在数字到单词转换的时候遇到了问题,转换出来的根本就不是正常句子。
正确写法应该是
indexWord = dict([(value, key) for (key, value) in wordIndex.items()])
trainWords = ’ '.join([indexWord.get(i-3, ‘?’) for i in trainData[0]])
发现正确写法应该是i-3,为什么要-3呢?
找了半天发现0,1,2,3,都被用来做特殊标注了,但用keras自带的wordindex,
1对应的单词还是the,但在它自带的数据集里,the对应的数值是4。。。
可以说是小坑了。