相关资料
LTP 官网:http://ltp.ai, http://ltp.ai/docs/index.html
LTP附录:https://ltp.readthedocs.io/zh_CN/latest/appendix.html#id3
附录2:http://ltp.ai/docs/appendix.html
pyltp:https://github.com/HIT-SCIR/pyltp
使用 pyltp:https://pyltp.readthedocs.io/zh_CN/latest/api.html
基于Pytorch的LTP4 已经发布,而PyLTP将会只有非常有限的维护,请大家移步使用 LTP 4
ltp4:https://github.com/HIT-SCIR/ltp
快速上手:http://ltp.ai/docs/quickstart.html
安装
安装 ltp4
(base) $ sudo pip install ltp
安装 pyltp
(base) $ sudo pip install pyltp
功能
https://ltp.readthedocs.io/zh_CN/latest/appendix.html#id3
- 词性标注。名词、动词
- 命名实体识别 NER。人名、机构名、地名等
- 语义角色标注。主谓宾,时间地点等。
- 依存语法关系。词和词之间的关系,主谓、动宾等。
- 语义依存关系
NLTK 比较适合英文数据,中文效果不够好。
使用 ltp4
参考:http://ltp.ai/docs/quickstart.html
载入模型
初次使用会 加载模型
也可以来这里下载:https://github.com/HIT-SCIR/ltp/blob/master/MODELS.md
分句
使用LTP分句只需要调用ltp.sent_split函数
from ltp import LTP
ltp = LTP()
sents = ltp.sent_split(["他叫汤姆去拿外衣。", "汤姆生病了。他去了医院。"])
# [
# "他叫汤姆去拿外衣。",
# "汤姆生病了。",
# "他去了医院。"
# ]
用户自定义词典
# user_dict.txt
负重前行
长江大桥
from ltp import LTP
ltp = LTP()
# user_dict.txt 是词典文件, max_window是最大前向分词窗口
ltp.init_dict(path="user_dict.txt", max_window=4)
# 也可以在代码中添加自定义的词语
ltp.add_words(words=["负重前行", "长江大桥"], max_window=4)
分词
使用LTP分词非常简单,下面是一个简短的例子:
from ltp import LTP
ltp = LTP()
segment, _ = ltp.seg(["他叫汤姆去拿外衣。"])
# [['他', '叫', '汤姆', '去', '拿'