共计 1624 个字符,预计需要花费 5 分钟才能阅读完成。
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 LizhichaoWordVicWord;
$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 模板网!
原文地址:https://www.toymoban.com/diary/php/778.html
如若转载,请注明出处:如若内容造成侵权 / 违法违规 / 事实不符,请联系站长进行投诉反馈,一经查实,立即删除!