首页 > 编程语言 > 详细

自然语言处理

时间:2020-03-05 10:17:49      阅读:69      评论:0      收藏:0      [点我收藏+]

1.处理框架

Ltp:中文分词、分词标注、未登陆词识别、句法分析、语义角色标注

Stanford NLP:中文分词、分词标注、未登陆词识别、句法分析

FudanNLP:中文分词、句法分析

HanLP:中文分词、句法分析等各类算法

 

ICTCLAS分词系统:具有里程碑意义的中文分词系统

Anjs中文分词系统:中等规模的分词系统

jieba:小规模中文分词

 

2.分词功能

(1).ltp分词

技术分享图片
import sys
import os
from pyltp import Segmentor


seg = Segmentor()
seg.load("modal path")
words = seg.segment(大家好我是一个例子)

print(words)
View Code

(2).jieba分词

技术分享图片
import sys
import os
import jieba

#全模式
wordlist = jieba.cut("大家好我是一个例子",cut_all=True)
print("|".join(wordlist))

#精确模式
wordlist = jieba.cut("大家好我是一个例子")
print("|".join(wordlist))

#搜索模式
wordlist = jieba.cut_for_search("大家好我是一个例子")
print("|".join(wordlist))
View Code

 

3.词性标注

技术分享图片
import sys
import os
from pyltp import *

words = [,,一个,]
pst = Postagger()

pst.load(model path)
tags = pst.postag(words)

for word,tag in zip(words,tags):
    print(word + - + tag)
View Code

 

4.实体识别

技术分享图片
rcz = NamedEntityRecognizer()
rez.load(model path)

ntags = rez.recognize(words,tags)

print(ntags)
View Code

 

5.句法分析

技术分享图片
import nltk
from nltk.tree import Tree
from nltk.grammar import DependencyGrammarp
from nltk.parse import *


parser = Parser()
parser.load(model path)
arcs = parser.parse(words,tags)

coll = ‘‘

for i in xrange(len(arcs)):
    if arcs[i].head == 0:
        arcs[i].relation = ROOT
    coll += \t + words[i] + ( + tags[i] + ) + \t + tags[i] + \t + arcs[i].head + \t + arcs[i].relation
    print(coll)

ctree = DependencyGraph(coll)
ctree.tree().draw()
View Code

 

自然语言处理

原文:https://www.cnblogs.com/yangyang12138/p/12417889.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!