(项目周小结:11/11 – 11/15)初识NER和依存句法分析
本周了解并且学会使用hanlp中NER的使用,看书学习了NER底层的三种实现模型(结构感知机、CRF和HMM),最后构建NERcognizer(三个参数分别是分词器,pos,NER器)
hanlp中的NER相对于分词和POS主要解决的是识别专有复合名词的问题,所以一开始打算实体识别的时候,首先考虑的是,如果要求的输出中没有很多的复合名词,那么我们就不需要使用NER模块,只用分词和pos做结合自己标注的词性就可以了。所以我一开始考虑的是构建一个公司内部的专用语料库,结合原来的语料库来训练自己的NER,但是这一想法被boss给否定了,他认为优先不应该考虑语料库,hanlp是基于很多语料库训练过的,所以能很好的识别各种复合名词,后来截取内网文章的内容来识别效果还可以。但是这里自己还是不太能理解语料库训练这件事情,到底是怎么个流程。
Boss给我的指导是,现在我做的属于基于依存关系的实体关系抽取,然后去看了hanlp中句法分析的相关内容,只是调用API的话还是很easy的,下一步要去探索的问题是怎样利用抽取出来的实体关系表格(CoNLL-U/CoNLL格式)来获取三元组,然后这个三元组该以什么样的形式去存储,以便于之后能直接导入到Dgraph中去处理。
现在可以用一个小文本将整个流程跑通,然后再从工程角度去解决问题。
疑惑点:
1、hanlp的句法分析不但可以识别出词之间的关系,还可以识别出文本中的实体,这是否意味着句法分析模块完全可以替代词法分析?
2、hanlp的语料库到底该咋训练?
算法:
1、 NER中的HMM和CRF
2、 句法分析中的基于依存关系分析