|
但是仍然遗留的问题是:假如正向反向分词不一致,而且最短路径也相同,那怎么办?输出正向的还是反向的结果?我们再来看一个例子.提交查询”遥远古古巴比伦”,这个查询被百度切分为<遥远,古古,巴比伦>,说明词典里面有”巴比伦”,但是是否有”古巴比伦”这个词汇不确定,此时看不出是正向切分还是反向切分得出的结果,换查询为”遥远古巴比伦”,此时被切分为”遥远/古巴比伦”,这说明词典里面有”古巴比伦”这个词汇,这说明了”遥远古古巴比伦”是正向最大匹配的结果.那为什么”遥远古古巴比伦”不会被反向切分为”遥/远古/古巴比伦”呢,百度的可能选择是这种情况下选择单字少的那组切分结果.
当然还可以继续追问:假如切分后单字也一样多,那怎么办?最后看一个例子,查询”王强大小:”,百度将其切分为”王/强大/小”,是正向切分的结果,假如是反向的会被切分为”王/强/大小”,这说明有歧义而且单字也相同则选择正向切分结果.
OK,看到这里可能头已经有些晕了,最后总结一下百度的分词算法,当然里面还是有猜测的成分,算法如下:
首先查询专用词典(人名,部分地名等),将专有名称切出,剩下的部分采取双向分词策略,假如两者切分结果相同,说明没有歧义,直接输出分词结果.假如不一致,则输出最短路径的那个结果,假如长度相同,则选择单字词少的那一组切分结果.假如单字也相同,则选择正向分词结果..
百度一直宣传自己在中文处理方面的优势,从上面看,分词算法并无非凡之处,消歧效果并不理想,即使百度采取比上述分词算法复杂些的算法也难以说成是优势,假如说百度有优势的话,唯一的优势就是那个很大的专用词典,这个专用词典登录了人名(比如大长今),称谓(比如老太太),部分地名(比如阿联酋等),估计百度采用学术界公布的比较新的命名实体识别算法从语料库里面不断识别出词典未登录词,逐渐扩充这个专门词典.假如这就是优势的话,那么这个优势能够保持多久就是个很明显的问题.
|
| 共3页: 上一页 [1] [2] 3 下一页 |
评论加载中…