Bamboo 安装指南
环境需求
实现本文过程使用的环境如下: ::
- Ubuntu 8.10
- gcc 4.2
- g++ 4.1
- PostgreSQL 8.3.5
关于 Bamboo
Bamboo项目是一个中文语言分析引擎,开发者是Postgre领域久负盛誉的eeee团队。目前使用者还不算多,但是从http://code.google.com/p/nlpbamboo/wiki/Benchmark|测试数据来看也有着不错的成绩 。它最大的亮点是集成了PostgreSQL接口。
Bamboo项目提供DEB、RPM等几种格式的安装程序,不过源码编译也很方便。
参考资料
环境准备
CRF++
CRF++的安装并不复杂,标准的configure/make:
./configure
make
sudo make install
但是此时如果编译Bamboo,会提示找不到libcrfpp.so.0,因为默认情况下crf安装到/usr/local,我们可以修改path,也可以configure的时候指明--prefix参数。这里我建立了一个ln:
sudo ln -s /usr/local/lib/libcrfpp.so.0.0.0 /usr/lib/libcrfpp.so.0
CMake
Bamboo 安装需要cmake支持,在ubuntu下可以用apt安装:
sudo apt-get install cmake
安装
假设用户位于~/third-party目录下,Bamboo的源码包在~/downloads下:
tar vxf ~/downloads/bamboo-1.1.0.tar.bz2
cd bamboo-1.1.0
mkdir build
cd build
cmake ..
make
sudo make install
默认情况下bamboo安装在/opt/bamboo目录下,此时的bamboo还不能直接使用,因为需要辞典,训练过程很简单,详见Bamboo 安装入门。简单来说可以这样:
sudo /opt/bamboo/bin/autobuild -t crf_seg
这个过程非常漫长,在AMD 2300+ CPU,1G内存,kubuntu 8.10的机器上用时超过了12小时。我没有尝试,但是也许可以直接把编译生成的data和index目录复制过去使用。
Bamboo项目现在还支持词性、实体词和主题词分析,详见Bamboo 安装入门。
PostgreSQL 集成
要在PostgreSQL中使用全文索引,首先应该安装Tsearch2引擎,详见PostgreSQL 数据库系统 *NIX 简易安装指南。
配置好PostgreSQL后,进入Bamboo目录安装PostgreSQL支持,在默认设置下,我们需要编辑一下Make命令,将PG_CONFIG 指定为 /usr/local/pgsql/bin/pg_config。执行命令如下:
cd /opt/bamboo/exts/postgresql/chinese_parser
make
sudo make install
形式上我们需要一个stop word文件,实际上bamboo并不需要它的支持,所以可以在如下位置(默认安装路径)建立如下的空文件:
/usr/local/pgsql/share/tsearch_data/chinese_utf8.stop
接下来以超级用户登录到需要支持中文搜索的数据库,执行:
# \i /usr/local/pgsql/share/contrib/pg_bamboo.sql
# \i /usr/local/pgsql/share/contrib/chinese_parser.sql
如果没有错误,就可以执行SQL测试一下分词效果了:
select bamboo('中文分词');
或
SELECT to_tsvector('chinesecfg', '我爱北京天安门');
1 条评论:
为什么我找不到pg_bamboo.sql?还有bamboo.so
发表评论