25hua / fudannlp

Automatically exported from code.google.com/p/fudannlp
0 stars 0 forks source link

使用CWSTagger.tag(string) 进行分词的bug #60

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
加载tag后,在一个循环中对多个string进行分词的结果和单独��
�一个string的分词结果不一致。举个例子来说:
我有一个string[20],对该数组中每一个string进行分词,语句如下
(标记为方法一)
CWSTagger tag = new CWSTagger("./models/seg.m");
for(i:0->19){
tag.tag(string[i])
}
其中string[19]的分词结果和
(标记为方法二)
CWSTagger tag = new CWSTagger("./models/seg.m");
tag.tag(string[19])
的分词结果不一致。

然后我用如下方法进行分词:
(标记为方法三)
for(i:0->19){
CWSTagger tag = new CWSTagger("./models/seg.m");
tag.tag(string[i])
}
所得的分词结果和方法二相同

总结:CWSTagger.tag(string)方法中存在bug,seg.m文件在加载到内存��
�,在分词过程中发生了改变,从而使后来的string在改变了的s
eg.m上进行分词,导致分词结果和重新加载seg.m进行分词的结��
�有差异。

PS:我挺有兴趣fix这个bug,然后上传代码,大家共享,不知有��
�有什么渠道?

Original issue reported on code.google.com by duskwai...@gmail.com on 7 Jan 2014 at 2:54

GoogleCodeExporter commented 9 years ago
多谢,目前还没法上传。正计划迁移到github上。
我回头看下问题出在哪里。

Original comment by xipeng...@gmail.com on 15 Jan 2014 at 9:48