C++,python,热爱算法和机器学习
全部博文(1214)
分类: IT职场
2015-09-04 22:27:15
孙建,胸无大志,没想过创业,没想过发财,只想高高兴兴写两行代码,做了近五年Java程序员,写过页面,干过运维,做过人力,忽悠过客户,擅长字符串操作,擅长数据结构和算法。现在主要从事检索、自然语言处理、数据挖掘等方面工作。
这个就是一个规则探讨的问题了,比如“北京大学”是“北京”+“大学”还是“北京大学”,人各有志,就连同一个人不同时间的标注也有可能是有区别的,虽然这个问题严格上来说不属于技术问题,但是对分词结果的评测却有着很大的关系,Ansj采用“能识别就识别”的策略方针,所以在真正R值的时候偏低,总之一句话,适合学术的不一定适合工业,反之亦然。
Ansj并非我创新,可以说是一个ictclas的Java版本,基本原理一致,只不过在分词优化算法上做了一些改进。
1、 全切分,原子切分;
2、 N最短路径的粗切分,根据隐马尔科夫模型和viterbi算法,达到最优路径的规划;
3、人名识别;
4、 系统词典补充;
至于未登录词的识别,目前重点做了中文人名的识别,效果还算满意,识别方式用的“字体+前后监督”的方式,也算是目前我所知道的效果最好的一种识别方式了。
最大的困难是训练样本和语料库的不足,遗憾国内没有共享,大多数都是收费的,而且好贵。