## 算法原理与程序使用 BM25算法原理参见我的博文:[【NLP】非监督文本匹配算法——BM25] 测试程序: ```python bm25 = BM25() result = bm25.cal_similarity("自然语言处理并不是一般地研究自然语言") for line, score in result: print(line, score) ``` 测试结果如下: ```python 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。 1.012567843290477 它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。 2.0911221271793545 自然语言处理是一门融语言学、计算机科学、数学于一体的科学。 1.012567843290477 因此,这一领域的研究将涉及自然语言,即人们日常使用的语言, 2.2068046420905443 所以它与语言学的研究有着密切的联系,但又有重要的区别。 1.4616618736274032 自然语言处理并不是一般地研究自然语言, 3.2072055608059036 而在于研制能有效地实现自然语言通信的计算机系统, 1.201522188129132 特别是其中的软件系统。因而它是计算机科学的一部分。 0 在信息搜索中,我们做的第一步就是检索。 0 再延展一下,搜索这项功能在我们生活中也是太多太多。 0 大众一点就是搜索引擎,商品搜索等,在问题系统中可以匹配相似的问题,然后返回对应答案等。 0 文本匹配包括监督学习方法以及非监督学习方法。 0 或者分为传统方法和深度学习方法。 0 BM25 在 20 世纪 70 年代到 80 年代被提出,到目前为止已经过去二三十年了,但是这个算法依然在很多信息检索的任务中表现优异,是很多工程师首选的算法之一。 0 有时候全称是 Okapi BM25,这里的“BM”是“最佳匹配”(Best Match)的简称。 0 那么,当通过使用不同的语素分析方法,语素权重判定方法以及语素与文档的相关性判定方法,可以衍生很多不同的搜索相关性计算方法,灵活性也比较大。 0 ``` -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
- 1
- 粉丝: 216
- 资源: 1985
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- #P0015. 全排列 超级简单
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt