vectorizer = TfidfVectorizer(ngram_range=(1, 3), sublinear_tf=True, min_df=1, max_df=0.6)

vectorizer.fit(self._train_data, fitted_train_label)

上面是原始的配置,其中

self._train_data内容如下:
[
    '我 们 是 中 国 人 。',
    '我 们 爱 祖 国 。'
]

在fit步骤报错如标题。

解决方案:

vectorizer = TfidfVectorizer(ngram_range=(1, 3), sublinear_tf=True, min_df=1, max_df=0.6, token_pattern=r"(?u)\b\w+\b"))

vectorizer.fit(self._train_data, fitted_train_label)
token_pattern参数为token解析模式配置,其中的\w决定了如果为单个word则会被当做停用词过滤掉,导致上述全部单个汉字都被过滤掉,进而出现如上报错。取消掉即可。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐