0

我正在尝试此处SimpleTagger提供的教程。我已经运行了与页面上提供的完全相同的命令,即

java -cp "class:lib/mallet-deps.jar" cc.mallet.fst.SimpleTagger --train true --model-file nouncrf sample

java -cp "class:lib/mallet-deps.jar" cc.mallet.fst.SimpleTagger --model-file nouncrf stest.

这是我的samplestest文件。

$ cat sample

Bill CAPITALIZED noun  
slept non-noun  
here LOWERCASE STOPWORD non-noun

$ cat stest

CAPITAL Al  
        slept  
        here

但是,我的输出与他们页面上的输出不同。这是我得到的输出。

Number of predicates: 9  
noun   
non-noun   
non-noun 

我的问题是

  1. “谓词的数量”是什么意思?
  2. 为什么我得到 9 个谓词,而官方消息来源声称相同输入文件有 5 个谓词?

如果这很重要,我正在使用 Mallet 2.0.8。

4

1 回答 1

0

当你开始训练时,SimpleTagger给你的第一条信息是:

Number of features in training data: x
Number of predicates: y

谓词y的数量 是训练数据包含的不同标记(或行)的数量。

当您使用上一列训练中的模型(具有y谓词)标记文件时,您会收到一条消息:

Number of predicates: z

这, 是要标记的文件包含的不同标记(或行)z的总和和数量。y这就是为什么z总是大于(或等于)的原因y。例如,如果您尝试使用具有y谓词的模型标记一个空的内容文本文件,您将获得许多谓词y,也就是说y + 0 = y,因为您的空文件有0标签。

于 2017-11-21T15:27:30.383 回答