You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中设置RAKE算法的关键词提取数量及相关参数?

使用rake-nltk自定义关键词提取规则

初始化Rake实例时的核心参数

创建Rake对象时,可通过以下参数控制候选短语的基础范围:

  • min_length: 短语的最少单词数(默认1)
  • max_length: 短语的最多单词数(默认3)
  • min_char_length: 短语的最少字符数(默认0,即不限制)

示例:

from rake_nltk import Rake

# 允许1-5个单词的短语,且字符数至少为5
r = Rake(min_length=1, max_length=5, min_char_length=5)

获取所有候选短语(带分数)

调用get_ranked_phrases_with_scores()方法可拿到所有生成的候选短语及其对应分数,结果按分数降序排列:

r.extract_keywords_from_text(text)
# 返回格式:[(分数1, 短语1), (分数2, 短语2), ...]
all_candidates = r.get_ranked_phrases_with_scores()

设置最低分数阈值筛选短语

基于带分数列表,自行过滤出分数符合要求的短语:

min_score = 2.0  # 自定义最低分数
filtered_keywords = [phrase for score, phrase in all_candidates if score >= min_score]

提取指定数量的关键词

直接从排序后的列表中截取前N个短语,无需考虑分数:

top_n = 10  # 自定义要提取的数量
top_keywords = r.get_ranked_phrases()[:top_n]

补充说明

  • 默认的get_ranked_phrases()方法返回所有符合长度限制的短语,按分数降序排列,并非只返回"最显著"的——如果觉得结果太少,大概率是默认的max_length(3)限制了短语长度,调大该参数即可。
  • 如果需要保留重复出现的短语,初始化时设置include_repeated_phrases=True(默认False)。

内容的提问来源于stack exchange,提问作者Mounir Cobra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 23:24:40