使用python语言安装stanfornlp 和hanlp安装包

本文涉及的产品
NLP自然语言处理_基础版,每接口每天50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
简介:

安装stanfornlp

准备条件 win10 + jdk8(java安装包) + anaconda3
• 1)安装stanford nlp自然语言处理包: pip install stanfordcorenlp
• 2)下载Stanford CoreNLP文件
https://stanfordnlp.github.io/CoreNLP/download.html
下载的文件件为:stanford-corenlp-full-2016-10-31的压缩包
把解压后的stanford-corenlp-full-2016-10-31重命名为Stanford CoreNLP
• 3)下载中文模型jar包,
• 4)将上一步下载的stanford-chinese-corenlp2018-02-27-models.jar放在Stanford CoreNLP文件夹内
• 5)在Python中引用模型:
• from stanfordcorenlp import StanfordCoreNLP
• nlp = StanfordCoreNLP(r‘path', lang='zh')
说明:
--path 为Stanford CoreNLP文件夹目录

由于本机的内存过小,加载stanfordnlp所需要的内存需要8G,而本机内存只有4G,根本无法读取,所以只是把代码复制在编译器里,并没有执行。

安装hanlp
• 1、安装Java和Visual C++:我装的是Java 1.8和Visual C++ 2015。
• 2、安裝Jpype,conda install -c conda-forge jpype1
• 3、测试是否按照成功:
from jpype import *
startJVM(getDefaultJVMPath(), "-ea")
java.lang.System.out.println("Hello World")
shutdownJVM()

安装所需附件:

path:E:\所需软件\安装stanfordnlp所需组件

配置
• 1)下载hanlp.jar包: https://github.com/hankcs/HanLP
• 2、下载data.zip:https://github.com/hankcs/HanLP/releases中
http://hanlp.linrunsoft.com/release/data-for-1.7.0.zip后解压数据
包。
• 3、配置文件
• 示例配置文件:hanlp.properties

• 配置文件的作用是告诉HanLP数据包的位置,只需修改第一行:
root=usr/home/HanLP/
• 比如data目录是D:/hnlp/hanlp_code/hanlp,那么
root=D:/hnlp/hanlp_code/hanlp
image

startJVM(getDefaultJVMPath(), "-Djava.class.path=D:\hnlp\hanlp_code\hanlp\hanlp-1.5.0.jar;D:\hnlp\hanlp_code\hanlp"
"-Xms1g",
"-Xmx1g")

  1. 启动JVM,Linux需替换分号;为冒号:分号前后有两个目录,一个是hanlp的Jar包路径,一个是它的上级目录路径

2.-Xms1g代表给文件分配的内存为1g

  1. 路径设置为hanlp安装的路径,不能带有中文字符

代码示例:

-- coding:utf-8 --

from jpype import *

startJVM(getDefaultJVMPath(), "-Djava.class.path=D:\hnlp\hanlp_code\hanlp\hanlp-1.5.0.jar;D:\hnlp\hanlp_code\hanlp",
"-Xms1g",
"-Xmx1g") # 启动JVM,Linux需替换分号;为冒号:

print("=" 30 + "HanLP分词" + "=" 30)
HanLP = JClass('com.hankcs.hanlp.HanLP')

中文分词

print(HanLP.segment('你好,欢迎在Python中调用HanLP的API'))
print("-" * 70)

print("=" 30 + "标准分词" + "=" 30)
StandardTokenizer = JClass('com.hankcs.hanlp.tokenizer.StandardTokenizer')
print(StandardTokenizer.segment('你好,欢迎在Python中调用HanLP的API'))
print("-" * 70)

NLP分词NLPTokenizer会执行全部命名实体识别和词性标注

print("=" 30 + "NLP分词" + "=" 30)
NLPTokenizer = JClass('com.hankcs.hanlp.tokenizer.NLPTokenizer')
print(NLPTokenizer.segment('中国科学院计算技术研究所的宗成庆教授正在教授自然语言处理课程'))
print("-" * 70)

print("=" 30 + "索引分词" + "=" 30)
IndexTokenizer = JClass('com.hankcs.hanlp.tokenizer.IndexTokenizer')
termList = IndexTokenizer.segment("主副食品");
for term in termList:
print(str(term) + " [" + str(term.offset) + ":" + str(term.offset + len(term.word)) + "]")
print("-" * 70)

print("=" 30 + " CRF分词" + "=" 30)
print("-" * 70)

print("=" 30 + " 极速词典分词" + "=" 30)
SpeedTokenizer = JClass('com.hankcs.hanlp.tokenizer.SpeedTokenizer')
print(NLPTokenizer.segment('江西鄱阳湖干枯,中国最大淡水湖变成大草原'))
print("-" * 70)

print("=" 30 + " 自定义分词" + "=" 30)
CustomDictionary = JClass('com.hankcs.hanlp.dictionary.CustomDictionary')
CustomDictionary.add('攻城狮')
CustomDictionary.add('单身狗')
HanLP = JClass('com.hankcs.hanlp.HanLP')
print(HanLP.segment('攻城狮逆袭单身狗,迎娶白富美,走上人生巅峰'))
print("-" * 70)

print("=" 20 + "命名实体识别与词性标注" + "=" 30)
NLPTokenizer = JClass('com.hankcs.hanlp.tokenizer.NLPTokenizer')
print(NLPTokenizer.segment('中国科学院计算技术研究所的宗成庆教授正在教授自然语言处理课程'))
print("-" * 70)

document = "水利部水资源司司长陈明忠9月29日在国务院新闻办举行的新闻发布会上透露," \
"根据刚刚完成了水资源管理制度的考核,有部分省接近了红线的指标," \
"有部分省超过红线的指标。对一些超过红线的地方,陈明忠表示,对一些取用水项目进行区域的限批," \
"严格地进行水资源论证和取水许可的批准。"
print("=" 30 + "关键词提取" + "=" 30)
print(HanLP.extractKeyword(document, 8))
print("-" * 70)

print("=" 30 + "自动摘要" + "=" 30)
print(HanLP.extractSummary(document, 3))
print("-" * 70)

text = r"算法工程师\n 算法(Algorithm)是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。算法工程师就是利用算法处理事物的人。\n \n 1职位简介\n 算法工程师是一个非常高端的职位;\n 专业要求:计算机、电子、通信、数学等相关专业;\n 学历要求:本科及其以上的学历,大多数是硕士学历及其以上;\n 语言要求:英语要求是熟练,基本上能阅读国外专业书刊;\n 必须掌握计算机相关知识,熟练使用仿真工具MATLAB等,必须会一门编程语言。\n\n2研究方向\n 视频算法工程师、图像处理算法工程师、音频算法工程师 通信基带算法工程师\n \n 3目前国内外状况\n 目前国内从事算法研究的工程师不少,但是高级算法工程师却很少,是一个非常紧缺的专业工程师。算法工程师根据研究领域来分主要有音频/视频算法处理、图像技术方面的二维信息算法处理和通信物理层、雷达信号处理、生物医学信号处理等领域的一维信息算法处理。\n 在计算机音视频和图形图像技术等二维信息算法处理方面目前比较先进的视频处理算法:机器视觉成为此类算法研究的核心;另外还有2D转3D算法(2D-to-3D conversion),去隔行算法(de-interlacing),运动估计运动补偿算法(Motion estimation/Motion Compensation),去噪算法(Noise Reduction),缩放算法(scaling),锐化处理算法(Sharpness),超分辨率算法(Super Resolution),手势识别(gesture recognition),人脸识别(face recognition)。\n 在通信物理层等一维信息领域目前常用的算法:无线领域的RRM、RTT,传送领域的调制解调、信道均衡、信号检测、网络优化、信号分解等。\n 另外数据挖掘、互联网搜索算法也成为当今的热门方向。\n"
print("=" 30 + "短语提取" + "=" 30)
print(HanLP.extractPhrase(text, 10))
print("-" * 70)

shutdownJVM()

文章来源于小鱼儿的博客

相关文章
|
2月前
|
PyTorch Linux 算法框架/工具
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
这篇文章是关于如何使用Anaconda进行Python环境管理,包括下载、安装、配置环境变量、创建多版本Python环境、安装PyTorch以及使用Jupyter Notebook的详细指南。
284 1
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
|
2月前
|
XML 数据格式 Python
Python实用记录(五):labelImg安装和使用-----看这篇就够了!
这篇文章介绍了在Windows 10系统中使用Anaconda3安装labelImg工具的方法,包括通过pip安装相关包和从GitHub下载配置,以及一些使用技巧,如修改预定义类别和自动保存功能。
236 3
|
2月前
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
285 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
2月前
|
机器学习/深度学习 Python
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
本篇将详细介绍如何在Mac系统上安装和配置Anaconda,如何创建虚拟环境,并学习如何使用 `pip` 和 `conda` 管理Python包,直到成功运行第一个Python程序。通过本篇,您将学会如何高效地使用Anaconda创建和管理虚拟环境,并使用Python开发。
73 4
【10月更文挑战第5天】「Mac上学Python 6」入门篇6 - 安装与使用Anaconda
|
2月前
|
IDE 开发工具 iOS开发
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
本篇将详细介绍如何在Mac系统上安装Python,并配置Python开发环境。内容涵盖Python的安装、pip包管理工具的配置与国内镜像源替换、安装与配置PyCharm开发工具,以及通过PyCharm编写并运行第一个Python程序。通过本篇的学习,用户将完成Python开发环境的搭建,为后续的Python编程工作打下基础。
189 2
【10月更文挑战第3天】「Mac上学Python 3」入门篇3 - 安装Python与开发环境配置
|
2月前
|
Python
Python 三方库下载安装
Python 三方库下载安装
28 1
|
2月前
|
机器学习/深度学习 缓存 PyTorch
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
这篇文章是关于如何下载、安装和配置Miniconda,以及如何使用Miniconda创建和管理Python环境的详细指南。
422 0
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
|
2月前
|
Python
Jetson环境安装(二):ubuntu18.0卸载和安装python3
在Jetson Nano上如何卸载Python 3.7并重新安装Python 3.7.0版本的详细步骤,包括卸载命令、安装依赖库、下载和编译Python源码以及建立软链接等。
67 2
|
2月前
|
Python
【python从入门到精通】-- 第一战:安装python
【python从入门到精通】-- 第一战:安装python
53 0
|
2月前
|
人工智能 Java Shell
Python学习一:了解Python,下载、安装Python。
这篇文章是关于如何了解Python、下载和安装Python 3.8.3版本的教程。
31 0