一个简单的三元组抽取小demo
- python 3.x
- nltk
- sklearn 0.21.3
git clone https://github.com/Heatao/HEASTAO-RE.git
python KE_DEMO.py
建议在colab运行ipynb
具体查看bert_ER中的readme
bert代码源自王树义老师的封装
Demo由两部分组成,命名实体识别和关系抽取,命名实体识别直接调用nltk.chunk.ne_chunk得到实体再经过简单的处理,关系抽取在SemEval2010数据集下是一个10分类任务,这里采用了bert的分类,svm+glove和svm+ifidf的分类。
-
界面采用pyqt
-
NER是调用的nltk
-
基本的关系分类是采用tfidf+svm
- 用tfidf+svm的f1值约为0.42
- 用bert的f1约为0.84
如果遇到模型不匹配的问题,可以重新训练tfidf_svm