论文部分内容阅读
本论文以站内中文全文搜索技术为背景,结合PHP(PHP:Hypertext Preprocessor)在实践领域中对Web应用的性能和内存消耗的要求,提出了一种纯PHP的以预索引字典为基础的轻量高效的站内中文搜索引擎的解决力案。即:通过索引器在数据库中保存生成的站内全文数据的带权重索引和词频权重索引,检索器基于此全文数据可以按多个类别的权重定义计算相关度得到搜索结果,表示器将结果高亮排序返回给搜索用户完成搜索功能。一个基于海量字典的中文分词器作为中文数据处理的核心,将中英文及数字信息正确的切分并使得索引器可以进行按词汇权重索引,实现丰富灵活的搜索或索引相关功能。文章针对PHP站内中文搜索技术中最突出的三个方面进行研究。1)轻量高效的PHP中文搜索框架设计,并统一考虑了检索器和索引器的中文分词问题,使得索引和搜索时处理同样的分词结果。这样,在以较小的代价保证分词器90%以上准确度的同时,对不准确的分词结果具有很好的容忍度,保证了PHP应用的轻量性和可用性。对实践中对性能非常敏感的Web应用的设计开发有一定的借鉴意义。2)对站内数据的搜索结果提出了一种多权重因素的相关度计算的方法,该方法在传统的关键字权重相关度的基础上,结合HTML标记进行权重识别和统计,并通过文档属性和统计数据等类别增加了用户可干涉的相关度权重因素,有力地保障了搜索结果的有效性,提升了用户的站内搜索体验。3)为了提升中文分词的质量,并同时解决PHP应用在处理海量词典时的性能和内存消耗的问题,本文通过优化的分词匹配算法和创新性地在PHP中文分词中使用B-Tree预索引词典,以数量达53万多个的UTF-8简繁体中文词汇在保证了较好的分词结果的同时保持了中文搜索的轻量性和高效性。并在实践中证明具有良好的可用性和通用性,具有较低的算法时间复杂度。本文结合PHP技术以及搜索引擎、中文分词等理论背景,对PHP领域内实现轻量高效的站内中文搜索提出了行之有效的分析解决方法。随着Web应用的持续发展和PHP普遍应用、中文信息处理需求的持续增长,本文所论述的方法对PHP相关范围内的中文搜索或索引相关功能都有一定的指导意义。同时,随着先进的搜索引擎技术模型的演进,本文所做的分析研究为中文站内搜索的普适性应用进行了一项有意义的探索。