现在的位置: 首页 > 综合 > 正文

CRF++的简单使用

2012年09月07日 ⁄ 综合 ⁄ 共 1113字 ⁄ 字号 评论关闭

CRF++是著名的条件随机场开源工具,也是目前综合性能最佳的CRF工具。本文简要介绍其使用方法。

一、工具包的下载:

a)         http://crfpp.sourceforge.net

其中有两种,一种是Linux下(带源码)的,一种是win32的,当然是在什么平台下用就下载什么版本了。

b)         http://download.csdn.net/source/1425683

两种版本打成一个包了。

二、安装:

a)         Windows版的无须安装,直接解压即可使用;

b)         Linux版本的安装方法是:

                         i.              解压到某目录下

                       ii.              打开控制台,将当前目录切换到解压目录

                      iii.              依次输入命令:    

./configure

make

su

make install

                            注:需要root权限才能成功安装。

三、训练语料格式:

a)         训练语料至少应具有两列,列间由空格或制表位间隔,且所有行(空行除外)必须具有相同的列数。句子间使用空行间隔。

b)         一些合法的语料示例:

                         i.              有两列特征的

Sd N

Sa N

Bu N

Eu N

Sw N

 

Sp N

Bn N

En N

Su N

                       ii.              只有一列特征的

N

N

N

N

N

 

N

N

N

N

四、特征的选取及模板的编写:

a)         特征选取的行是相对的,列是绝对的,一般选取相对行前后m行,选取n-1列(假设语料总共有n列),特征表示方法为:%x[,],行列的初始位置都为0。例如:

                         i.              以前面语料为例

Sw N

Bns B-LOC

Mns I-LOC

Ens I-LOC

Bn N

假设当前行为“京”字这一行,那么特征可以这样选取:

特征模板

意义

代表特征

%x[-2,0]

-2行,0

%x[-1,0]

-1行,0

%x[0,0]

0行,0

%x[1,0]

1行,0

%x[2,0]

2行,0

%x[-2,1]

-2行,1

Sw

%x[-1,1]

-1行,1

Bns

%x[0,1]

0行,1

Mns

%x[1,1]

1行,1

Ens

%x[2,1]

2行,1

Sw

%x[-1,0]/%x[0,0]

-10

抱歉!评论已关闭.