pyhanlp常用功能

HanLP提供下列功能:

中文分词
1.最短路分词(Dijkstra精度已经足够,且速度比N最短快几倍)
2.N-最短路分词(与Dijkstra对比,D已够用)
3.CRF分词(对新词较有效)
4.索引分词(长词切分,索引所有可能词)
5.极速词典分词(速度快,精度一般)
6.用户自定义词典
7.标准分词(HMM-Viterbi)

命名实体识别
1.实体机构名识别(层叠HMM-Viterbi)
2.中国人名识别(HMM-Viterbi)
3.音译人名识别(层叠隐马模型)
4.日本人名识别(层叠隐马模型)
5.地名识别(HMM-Viterbi)

篇章理解
1.关键词提取( TextRank关键词提取)
2.自动摘要( TextRank自动摘要,提取关键句子)
3.短语提取( 基于互信息和左右信息熵的短语提取)

简繁拼音转换
1.拼音转换( 多音字,声母,韵母,声调)
2.简繁转换(繁体中文分词,简繁分歧词)

智能推荐
1.文本推荐(句子级别,从一系列句子中挑出与输入句子/词语最相似的那一句)
2.语义距离(基于《同义词词林扩展版》)

原文链接:https://blog.csdn.net/XiaoXiao_Yang77/article/details/78437915

实体标注分词导录:

from pyhanlp import *

import os #远程调试用
os.environ[‘JAVA_HOME’] = ‘/usr/local/jdk-11’#远程调试用
from pyhanlp import *
print (HanLP.segment(“刘晓明去哪里了?”))
#1.2.3.crf/viterbi
sentence = ‘林志玲亮相网友’
CRFnewSegment = HanLP.newSegment(“crf”)
CRFnewSegment = HanLP.newSegment(“viterbi”)
识别日语名开
viterbiNewSegment = HanLP.newSegment(“viterbi”).enableJapaneseNameRecognize(True)
识别日语名开
CRFnewSegment_new = HanLP.newSegment(“crf”).enableJapaneseNameRecognize(True)
print("crf : ",CRFnewSegment.seg(sentence))
print("crf_new : ",CRFnewSegment_new.seg(sentence))
print("viterbi : ",viterbiNewSegment.seg(sentence))

4.感知机
StandardTokenizer = JClass(“com.hankcs.hanlp.tokenizer.StandardTokenizer”)
StandardTokenizer.SEGMENT.enableNumberQuantifierRecognize(True)
print(StandardTokenizer.segment(‘李明华’))

5.适用于中国人名识别
segment = HanLP.newSegment().enableNameRecognize(True)
print(segment.seg(‘黄晓明’))

6.音译名识别
sentence = ‘比尔盖茨、亚马逊的贝索斯、苹果的库克’
person_ner = HanLP.newSegment().enableTranslatedNameRecognize(True)
p_name = person_ner.seg(sentence)
print(p_name)

7.感知机词法分析器
PerceptronLexicalAnalyzer = JClass(‘com.hankcs.hanlp.model.perceptron.PerceptronLexicalAnalyzer’)
analyzer = PerceptronLexicalAnalyzer()
print(analyzer.analyze(董事长李红小姐"))

上一篇:leetcode 替换单词


下一篇:【原理】预训练模型之自然语言理解--KBERT