分歧器 friso 的编译和安装测试

Friso 是使用 c 语言开发的一款中文分词器,使用流行的 mmseg 算法实现。完全基于模块化设计和实现,可以很方便的植入到其他程序中,例如:MySQL,PHP 等。源码无需修改就能在各种平台下编译使用,加载完 20 万的词条,内存占用较小,一般稳定为 14.5M 左右。

github 开源地址:https://github.com/lionsoul2014/friso

以下为在Linux上编译和测试分词的示例:

先下载最新的 friso 代码包 friso-master.zip,上传到 Linux 服务器并解压缩,然后按照如下步骤编译、运行测试。

运行 autogen.sh 脚本初始化,如果出现缺依赖包错误对应安装依赖包,如果正常初始化完成,则从 ./configure 步骤继续进行。

[root@middleware1 friso-master]# ./autogen.sh 
./autogen.sh: line 3: libtoolize: command not found
./autogen.sh: line 4: aclocal: command not found
./autogen.sh: line 5: autoheader: command not found
./autogen.sh: line 6: automake: command not found
./autogen.sh: line 7: autoconf: command not found

[root@middleware1 friso-master]# sudo yum install -y automake autoconf libtool
(略)

以下命令过程,是不缺少依赖包的正常操作步骤:

[root@middleware1 friso-master]# ./autogen.sh 
(略)
[root@middleware1 friso-master]# ./configure 
(略)
[root@middleware1 friso-master]# make
(略)
[root@middleware1 friso-master]# make install
(略)
[root@middleware1 friso-master]# ./src/friso -init ./friso.ini
Initialized in 0.250000sec
Mode: Complex
+-Version: 1.6.4 (UTF-8)
+---------------------------------------------------------------+
| Friso - a Chinese word segmentation written by c.             |
| bug report email - chenxin619315@gmail.com.                   |
| or: visit https://github.com/lionsoul2014/friso.              |
|     java version for https://github.com/lionsoul2014/jcseg    |
| type 'quit' to exit the program.                              |
+---------------------------------------------------------------+
friso>> 一个相扑摔跤手和一个必须在Baloon追捕法医心理学家的猎人的难以置信的插曲
分词结果:
一个 相扑 摔跤 手 和 一个 必须 在 baloon 追捕 法医 心理学 家的 猎人 的 难以置信 的 插曲 
Done, cost < 0.010000sec
friso>> 单红宇
分词结果:
单 红 宇 
Done, cost < 0.000000sec
friso>> 张查找
分词结果:
张 查找 
Done, cost < 0.000000sec
friso>> 中华人民共和国
分词结果:
中华 人民共和国 
Done, cost < 0.000000sec
friso>> 

至此,完成基本的编译和测试,对于自定义词库等更多配置,参考官网文档说明。


(END)

Friso 是使用 c 语言开发的一款开源的高性能中文分词,使用流行的mmseg算法实现。完全基于模块化设计实现,可以很方便的植入其他程序中, 例如:MySQL,PHP,并且提供了php5,php7,ocaml,lua的插件实现。源码无需修改就能在各种平台下编译使用,加载完 20 万的词条,内存占用稳定为 14.5M。 Friso核心功能: 中文分词:mmseg算法 + Friso 独创的优化算法,四种切分模式。 关键字提取:基于textRank算法。 关键短语提取:基于textRank算法。 关键句子提取:基于textRank算法。 四种切分模式: 简易模式:FMM 算法,适合速度要求场合。 复杂模式- MMSEG 四种过滤算法,具有较高的岐义去除,分词准确率达到了98.41%。 检测模式:只返回词库中已有的词条,很适合某些应用场合。(1.6.1版本开始)。 最多模式:细粒度切分,专为检索而生,除了中文处理外(不具备中文的人名,数字识别等智能功能)其他与复杂模式一致(英文,组合词等)。 功能特性: 1、同时支持对 UTF-8/GBK 编码的切分,支持 php5 php7 扩展 sphinx token 插件。 2、支持自定义词库。在 dict 文件夹下,可以随便添加/删除/更改词库词库词条,并且对词库进行了分类。 3、简体/繁体/简体混合支持,可以方便的针对简体,繁体或者简繁体切分。同时还可以以此实现简繁体的相互检索。 4、支持中英/英中混合词的识别(维护词库可以识别任何一种组合)。例如:卡拉ok,漂亮mm,c语言,IC卡,哆啦a梦。 5、很好的英文支持,英文标点组合词识别,例如c++,c#,电子邮件,网址,小数,百分数。 6、自定义保留标点:你可以自定义保留在切分结果中的标点,这样可以识别出一些复杂的组合,例如:c++,k&r,code.google.com。 7、复杂英文切分的二次切分:默认 Friso 会保留数字字母的原组合,开启此功能,可以进行二次切分提高检索的命中率。例如:qq2013会被切分成:qq/ 2013/ qq2013。 8、支持阿拉伯数字/小数基本单字单位的识别,例如2012年,1.75米,5吨,120斤,38.6℃。 9、自动英文圆角/半角,大写/小写转换。 10、同义词匹配:自动中文/英文同义词追加. (需要在 friso.ini 中开启 friso.add_syn 选项)。 11、自动中英文停止词过滤。(需要在 friso.ini 中开启 friso.clr_stw 选项)。 12、多配置支持,安全的应用于多进程/多线程环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

catoop

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

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

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

打赏作者

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

抵扣说明:

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

余额充值