Advertisement

Stanford NLP的介绍安装和简单使用

阅读量:

1.介绍

Stanford NLP
Stanford NLP提供了一系列自然语言分析工具。它能够给出基本的 词形,词性,不管是公司名还是人名等,格式化的日期,时间,量词, 并且能够标记句子的结构,语法形式和字词依赖,指明那些名字指向同 样的实体,指明情绪,提取发言中的开放关系等。

  1. 一个集成的语言分析工具集
  2. 进行快速,可靠的任意文本分析
  3. 整体的高质量的文本分析
  4. 支持多种主流语言
  5. 多种编程语言的易用接口
  6. 方便的简单的部署web服务

2.Stanford NLP 在Python环境中安装、介绍及使

• 1)安装stanford nlp自然语言处理包: pip install stanfordcorenlp or conda install stanfordcorenlp
• 2)下载Stanford CoreNLP文件 https://stanfordnlp.github.io/CoreNLP/download.html
• 3)下载中文模型jar包, http://nlp.stanford.edu/software/stanford-chinesecorenlp-2018-02-27-models.jar,
• 4)把加压后的Stanford CoreNLP文件夹和下载的stanford-chinese-corenlp2018-02-27-models.jar放在同一目录下
• 5)在Python中引用模型:
from stanfordcorenlp import StanfordCoreNLP
nlp = StanfordCoreNLP(r‘path’, lang=‘zh’)
ps: ”path“ 代指的是Stanford CoreNLP文件所放的位置
如: nlp = StanfordCoreNLP(r‘D:\stanfordNLP’, lang=‘zh’)

3.测试代码

复制代码
    #-*-encoding=utf8-*-
    from stanfordcorenlp import StanfordCoreNLP
    nlp = StanfordCoreNLP(r‘D:\stanfordNLP', lang='zh')
    
    fin=open('news.txt','r',encoding='utf8')
    fner=open('ner.txt','w',encoding='utf8')
    ftag=open('pos_tag.txt','w',encoding='utf8')
    for line in fin:
    line=line.strip()
    if len(line)<1:
        continue
     
    fner.write(" ".join([each[0]+"/"+each[1] for  each in nlp.ner(line) if len(each)==2 ])+"\n")
    ftag.write(" ".join([each[0]+"/"+each[1] for each in nlp.pos_tag(line) if len(each)==2 ])+"\n")
    fner.close()   
    ftag.close()

全部评论 (0)

还没有任何评论哟~