sklearn CountVectorizer中的min_df和max_df的含义

  vectorizer = CountVectorizer(min_df = 1, stop_words=stopwords)

CountVectorizer是属于常见的特征数值计算类,是一个文本特征提取方法。对于每一个训练文本,它只考虑每种词汇在该训练文本中出现的频率。CountVectorizer会将文本中的词语转换为词频矩阵,计算各个词语出现的次数。

CountVectorizer可指定的参数包含min_df、max_df、stop_words 等。下面讲经常调节的min_df、max_df参数的含义,他们都用于修剪术语。

1.max_df

可以设置为范围在[0.0 1.0]的float,也可以设置为没有范围限制的int。

这个参数的作用是作为一个阈值,当构造语料库的关键词集的时候,如果某个词的document frequence大于max_df,这个词不会被当作关键词。如果这个参数是float,则表示词出现的次数与语料库文档数的百分比,如果是int,则表示词出现的次数。

可见,max_df可用于删除过于频繁出现的术语,也称为“语料库特定的停用词”。

例如:

max_df = 0.50 表示“忽略出现在50%以上文档中的术语”.
max_df = 25 表示“忽略超过25个文档中出现的术语”.

max_df 默认为1.0(float),这意味着“忽略出现在100%以上文档中的术语”,而这是不可能的,因此,默认设置不会忽略任何术语,该参数不起作用。

2.min_df

类似于max_df,不同之处在于如果某个词的document frequence小于min_df,则这个词不会被当作关键词

min_df 用于删除不经常出现的术语。

例如:

min_df = 0.01表示“忽略出现在少于1%的文档中的术语”.
min_df = 5表示“忽略少于5个文档中出现的术语”.

min_df 默认为1(int),表示“忽略少于1个文档中出现的术语”,因此,默认设置不会忽略任何术语,该参数不起作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wmsofts

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值