ysc/QuestionAnsweringSystem

分词总是分错,是怎么回事?

Closed this issue · 3 comments

对问题进行分词:苏格兰属于哪个洲
分词结果为:苏 格 兰 属 于 哪 个 洲

我check下来源码在eclipse里运行多次,我记得就有一次运行是自动回答正确的

我初步断定是分词的错误,因为在CommonCandidateAnswerSelect类里

if (word.getText().length() < 2){
                LOG.debug("忽略长度小于2的候选答案:"+word);
                continue;
}

会忽略长度小于2的候选答案,所以上面的 苏格兰 会被忽略

ysc commented

网页界面输出

问题:苏格兰属于哪个洲
答案:
序号 候选答案 答案评分
1 英国 1.0
2 英格兰 0.5750764693313416
3 大不列颠 0.35729075575786035
4 威尔士 0.3154187556565901
5 昆明 0.3054385411970115
6 北爱尔兰 0.20551109386550256
7 西临 0.13527580522621396
8 大西洋 0.135042367556336
9 北海 0.13467187048847026
10 欧洲 0.10191780989357621
11 大不列颠及北爱尔兰联合王国 0.0952426025275079
12 爱尔兰岛 0.09386061472731476
13 不列颠 0.09356736053571106

ysc commented

日志输出

Question:苏格兰属于哪个洲 搜索到Evidence 8 条
将Question:苏格兰属于哪个洲 加入MySQL数据库
使用【模式匹配】的方法判断问题类型: 苏格兰属于哪个洲
问题:苏格兰属于哪个洲
词和词性序列:苏格兰/ns 属于/v 哪个/r 洲/ng
词性序列:ns/v/r/ng
对问题进行分词:苏格兰属于哪个洲
分词结果为:苏格兰 属于 哪个 洲
句法树:
(ROOT [46.326](IP
%28NP %28NR 苏格兰%29%29
%28VP %28VV 属于%29
%28NP
%28DP %28DT 哪个%29%29
%28NP %28NN 洲%29%29%29%29))
句子依存关系:
nsubj(属于-2, 苏格兰-1)
root(ROOT-0, 属于-2)
det(洲-4, 哪个-3)
dobj(属于-2, 洲-4)
主谓宾:苏格兰 属于 洲
主谓宾词和词性序列:苏格兰/ns 属于/v 洲/ng
主谓宾词性序列:ns/v/ng

处理问题类型模式文件: /questionTypePatterns/QuestionTypePatternsLevel1_true.txt
匹配成功: 苏格兰属于哪个洲 : 苏格兰属于哪个洲 : Location
在问题类型模式文件中[找到]匹配项: /questionTypePatterns/QuestionTypePatternsLevel1_true.txt

处理问题类型模式文件: /questionTypePatterns/QuestionTypePatternsLevel2_true.txt
在问题类型模式文件中[未找到]匹配项: /questionTypePatterns/QuestionTypePatternsLevel2_true.txt

处理问题类型模式文件: /questionTypePatterns/QuestionTypePatternsLevel3_true.txt
在问题类型模式文件中[未找到]匹配项: /questionTypePatterns/QuestionTypePatternsLevel3_true.txt
从紧凑到宽松进行处理
问题类型模式【QuestionTypePatternsLevel1_true.txt】匹配情况,是否允许匹配多个类型:true
序号:1
问题 : 苏格兰属于哪个洲
模式 : 苏格兰属于哪个洲
分类 : Location
从紧凑到宽松进行处理
处理问题类型模式:QuestionTypePatternsLevel1_true.txt ,是否允许多个匹配:true
只有一个匹配结果,匹配成功
类型 选中数目
LOCATION_NAME 1
问题类型模式QuestionTypePatternsLevel1_true.txt有一个匹配,【找到类型】
找到类型,返回:LOCATION_NAME
开始处理Question 2:苏格兰属于哪个洲 【问题类型:LOCATION_NAME】

Question 苏格兰属于哪个洲
Question 候选答案:
英国 1.0
英格兰 0.5750764693313416
大不列颠 0.35729075575786035
威尔士 0.3154187556565901
昆明 0.3054385411970115
北爱尔兰 0.20551109386550256
西临 0.13527580522621396
大西洋 0.135042367556336
北海 0.13467187048847026
欧洲 0.10191780989357621
大不列颠及北爱尔兰联合王国 0.0952426025275079
爱尔兰岛 0.09386061472731476
不列颠 0.09356736053571106

我知道了,我把项目放linux的 桌面 了,取资源的时候,这个中文路径是问题