gpt4 book ai didi

python - `TfidfVectorizer` 以何种方式处理个位数?

转载 作者:太空宇宙 更新时间:2023-11-04 01:54:28 25 4
gpt4 key购买 nike

我对 skelearnTfidfVectorizer 在我不知道的情况下到底做了什么感到有点困惑。

我有这样的句子:

sentence_1 = 'Sum: 1 Mean: 1 Min:1'

但是当我在训练后看到 vocabulary_ 时,我找不到任何元素“1”。

我怀疑这是由 TfidfVectorizer 对每个字母/数字标记完成的。


在这种情况下,TfidfVectorizer 做了什么?

最佳答案

是因为token_pattern,也就是'(?u)\b\w\w+\b'。这意味着它将提取长度大于 1 的字母数字标记。因此 12 等标记不会在 vocubulary_< 中计算出来

Here地方,其中 token_pattern 用于提取 token 。

举个例子,

import re
token_pattern = re.compile(r'(?u)\b\w\w+\b')
token_pattern.findall('i would like to test this 1 11')

# ['would', 'like', 'to', 'test', 'this', '11']

我们可以发现字母数字标记 i, 1 没有从 findall 中提取出来,因为 \b\w\w+\b 模式。

如果需要包含单个字符标记,则使用 \b\w+\b

关于python - `TfidfVectorizer` 以何种方式处理个位数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57166660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com