用于计算 BM25 词频。
相关库: string.tfidf
创建 BM25 对象
创建 BM25 对象。
可选用一个字符串数组限定要计数的全部关键词。
不指定则计算所有出现的分词
添加文档数据
添加文档数据。
idOrPath可指定任何可作为键名的标识,可指定文档路径。
words 指定文档内容分词后的字符串数组。
计算或重新计算 BM25 值
在添加所有文档后可调用此函数计算或重新计算 BM25 值。
b 参数用于调整文档长度归一化的影响,值在 0 到 1 之间,默认为 0.75。
b 值越大,长度归一化的影响越大,建议在 0.3~0.9 之间调整。
k1 参数用于调整词频饱和度,默认为 1.5。建议在 1.2~2.0 之间调整。
k1 越大,词频对相关性得分的影响越大。
minDocLength 可选用于指定最小文档长度(分词数目,非字数)。
默认值为 0,小于 minDocLength 的过短文档将会抑制其权重。
调用 bm25 函数后可获取文档统计的关键字数组,按 BM25 值排序。
idOrPath 参数指定文档标记(例如路径)。
数组按 BM25 值排序,BM25 值较高的在前。
可选用 topN 参数限定返回数组长度。
可选通过 excludePatterns 参数使用一个模式串数组指定要排除的词。
可选用 excludeWords 参数指定一个要排除的关键词表,键为要排除的词
计算关键词在指定文档中的权重。
计算关键词在指定文档中的权重。
keywords 参数指定关键词数组。
idOrPath 参数指定文档标志,通常为路径。
第一个返回值为计算得到的总权重,
第二个返回值为对应关键词顺序的权重数组。
可选用 decimals 参数限定返回数组中权重的小数位数
搜索文档
搜索文档。
keywords 指定要搜索的关键词数组。
可选用 topN 参数限定返回的文档数目上限。
返回的到的文档数组,按权重排序。