以下是一些文本,一个numpy数组中只有两个字符串:
titles
>>> array(['"a onda": como a psicologia social pode explicar a ação dos grupos?',
'"beba menos mas beba melhor": entenda o lema da cerveja artesanal'],
dtype=object)
我期望sklearn的CountVectorizer
中的矢量器能够正确地分割单词,但它似乎没有(注意,它未能标记单词“ação”,它丢弃了它无法理解的字符):
cv=CountVectorizer()
cv.fit(titles)
tokenizer = cv.build_tokenizer()
[tokenizer(s) for s in titles]
[['onda',
'como',
'psicologia',
'social',
'pode',
'explicar',
'ac', ## <<<< sklearn failed to identify the word "ação"
'dos',
'grupos'],
['beba',
'menos',
'mas',
'beba',
'melhor',
'entenda',
'lema',
'da',
'cerveja',
'artesanal']]
我正在使用sklearn版本0.21.2和Python版本3.6.7
^{} [scikit-doc]使用默认为
(?u)\b\w\w+\b
的token_pattern
参数现在
\w
不幸的是not capture combining diacritics。然而,可能是一个解决办法。我们可以传递以下正则表达式:这似乎适用于您给定的输入:
但是我不太熟悉有很多变音符号的语言来测试这是否适用于所有可能的组合变音符号
相关问题 更多 >
编程相关推荐