我有一个带有句子的数据,我用了countvectorizer和一个预定义的词汇表。对于一些词汇来说,即使句子中包含字典中的单词,返回值也是0。由于某种原因不起作用的词语清单如下:
* 1 time
* 1 report
* 7 increase
* not a good fit
* not a great fit
* c level
* not a needCountVectorizer的定义如下:
CountVectorizer(vocabulary=cols,ngram_range=(1,5))科尔斯是字典的地方
我确信这与令牌程序的定义有关,但不确定如何将其更改为我需要帮助的内容,非常感谢!
发布于 2020-03-01 09:39:54
刚在另一个帖子上找到了解决方案。正如预期的那样,CountVectorizer中的默认标记化删除了所有特殊字符、标点符号和单字符,这是我的问题。我所需要做的就是更改为令牌模式,如下所示:
vectorizer = CountVectorizer(vocabulary=cols,ngram_range=(1,5),token_pattern = r"(?u)\b\w+\b")您可以在这里看到完整的解释:full explanation
https://stackoverflow.com/questions/60432503
复制相似问题