Python bm25短文本分类,相似度识别,BM25算法相似度匹配,疾病相似度匹配gensim实现,bm25算法原理和实现实例

本文介绍了BM25算法在医学文档分类、相似度识别中的应用,强调了在处理实体相似度匹配时,建议使用字和n-gram作为特征。通过解析BM25的相关性分数公式,展示了其在文档相似度计算中的作用。同时,提供了一个使用gensim库进行疾病相似度分类的实例,并给出了具体代码。最后,提到了在实际文本分类任务中,需要结合jieba分词和停用词设置。

一、bm25的应用和基础

参考:BM25算法 原理简介_小白的进阶的博客-优快云博客_bm25

医学领域,BM25算法的应用,文档分类相似度识别以及疾病、手术等实体的相似度匹配。文档的处理相对简单,可以直接调用相关算法包,实体单词的相似度匹配需要对文本做相关的处理。对比研究,在文档中,表示特征的主要是单词,而在实体名词(疾病、手术、药品名称)中,表示特征的是字或者由n-gram切分的元素,当用字表示特征时,文本的语义会丢失,所以我建议用字和n-gram(n>=2)分词元素作为特征。

BM25算法相关性分数的构成:

分为两个类别,一个是计算文档与文档的相似度,另一个是计算词与词的相似度,如果计算的是词(或称为短文本)与词之间的相似度,那么就要用n-gram切词,进而以每个元素为单位进行计算。

以文档相似度为例:

相关性分数公式如下:

里面包含三部分计算:

(1)元素的权重,计算tf-idf,文档的元素就是词,短文本的元素为字或n-gram元素:

其中N表示索引中全部文档数,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

医学小达人

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

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

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

打赏作者

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

抵扣说明:

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

余额充值