VicWord 是一款高效且灵活的纯 PHP 分词库,由开发者 lizhichao 创建并维护。它内置多种分词策略,满足从简单到复杂的各种文本处理需求。
VicWord 的特点
性能卓越:在特定硬件环境下,最高每秒可处理 140 万字符,速度远超同类产品。
灵活性高:支持多种分词策略,用户可根据实际需求选择最合适的模式。
自定义词典:用户可以添加自定义词语到词库,支持文本格式(JSON)和二进制格式(igb)。
技术分析
VicWord 提供了三种不同的分词方法:
getWord:以长度优先,追求速度最大化,适用于对分词精度要求不高的场景。
getShortWord:细粒度切分,虽然速度稍慢,但能获取更详尽的分词结果。
getAutoWord:自动切分,结合长度与上下文信息,兼顾速度和准确性,是默认推荐的分词模式。
应用场景
VicWord 可广泛应用于以下领域:
搜索引擎优化:提高关键词匹配,提升搜索结果的相关性。
自然语言处理:分词是文本处理的基础,VicWord 可用于构建聊天机器人、文本分类等应用。
安装步骤
可以直接通过compost 安装
composer require lizhichao/word
或者自行去下载源码使用
https://github.com/lizhichao/VicWord
分词说明
含有3种切分方法
getWord 长度优先切分 。最快
getShortWord 细粒度切分。比最快慢一点点
getAutoWord 自动切分 。效果最好
可自定义词典,自己添加词语到词库,词库支持文本格式json和二级制格式igb 二进制格式词典小,加载快
dict.igb含有175662个词,欢迎大家补充词语到 dict.txt ,格式(词语 \t idf \t 词性)
idf 获取方法 百度搜索这个词语 Math.log(100000001/结果数量),如果你有更好的方法欢迎补充。
词性 [标点符号,名词,动词,形容词,区别词,代词,数词,量词,副词,介词,连词,助词,语气词,拟声词,叹词] 取index ;标点符号取0文章来源:https://www.toymoban.com/diary/php/778.html
三种分词结果对比文章来源地址https://www.toymoban.com/diary/php/778.html
代码示例
require 'vendor/autoload.php'; use Lizhichao\Word\VicWord; $fc = new VicWord(); $arr = $fc->getWord('北京大学生喝进口红酒,在北京大学生活区喝进口红酒'); //北京大学|生喝|进口|红酒|,|在|北京大学|生活区|喝|进口|红酒 //$arr 是一个数组 每个单元的结构[词语,词语位置,词性,这个词语是否包含在词典中] 这里只值列出了词语 $arr = $fc->getShortWord('北京大学生喝进口红酒,在北京大学生活区喝进口红酒'); //北京|大学|生喝|进口|红酒|,|在|北京|大学|生活|区喝|进口|红酒 $arr = $fc->getAutoWord('北京大学生喝进口红酒,在北京大学生活区喝进口红酒'); //北京|大学生|喝|进口|红酒|,|在|北京大学|生活区|喝|进口|红酒 //对比 //qq的分词 http://nlp.qq.com/semantic.cgi#page2 //百度的分词 http://ai.baidu.com/tech/nlp/lexical
到此这篇关于VicWord - 纯 PHP 分词工具:高效、灵活的中文文本分词解决方案的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!