汉语言处理包Hanlp的使用
本来想通过python调用Java实现Hanlp的使用,参考文章:http://t.cn/RUrIF7z
python可以用easy_install安装一些软件
1.JPype使用介绍
参考:http://michael-paul.iteye.com/blog/1055786
Python 作为一种灵活的软件开发语言在当今被广泛使用。在软件开发过程中,有时需要在 Python 项目中利用既有的 Java 代码,已达到节省时间和开发成本的目的。因此,找到一个 Python 代码调用 Java 代码的桥梁是非常有意义的。 JPype 就是这样的一个工具,利用它可以使 Python 程序方便的调用 Java 代码,从而扩充 Python 语言的能力,弥补 Python 语言的不足。本文介绍了如何利用 JPype 整合 Python 程序和 Java 程序的一些基本方法。
下面是一个简单的 python 程序,通过 JPype 调用 Java 的打印函数,打印出字符串。
清单 1. hello world
import jpype
jvmPath = jpype.getDefaultJVMPath()
jpype.startJVM(jvmPath)
jpype.java.lang.System.out.println( “ hello world! ” )
jpype.shutdownJVM()
运行该例程的时候,getDefaultJVMPath()找不到默认的jvm路径,检查发现在命令行下输入java和javac都是没问题,而且已经配置好环境变量。找到jpype官方文档给的例程(http://jpype.sourceforge.net/doc/user-guide/userguide.html),使用说明(http://blog.csdn.net/niuyisheng/article/details/9002926)发现历程中jdk中jre文件有client文件夹,而现在版本只有server文件夹,然后找一篇文章介绍jvm中client模式和server模式的区别(http://ryxxlong.iteye.com/blog/1696537),发现他们用的都是jdk1.6,而现在的版本是jdk1.8,猜想新版本已经没有该功能了,把jdk换成1.6版本还是发现没有client文件夹,放弃在python中调用java包Hanlp,直接在java程序中使用hanlp。
11大Java开源中文分词器的使用方法和分词效果对比:
http://my.oschina.net/apdplat/blog/412921?fromerr=jF95Yz4r
2.关于HanLP
HanLP是一个致力于向生产环境普及NLP技术的开源Java工具包,支持:
中文分词(N-最短路分词、CRF分词、索引分词、用户自定义词典、词性标注),
命名实体识别(中国人名、音译人名、日本人名、地名、实体机构名识别),
关键词提取,自动摘要,短语提取,拼音转换,简繁转换,文本推荐,依存句法分析(MaxEnt依存句法分析、神经网络依存句法分析)。
Hanlp的安装和入门说明:http://hanlp.linrunsoft.com/doc/_build/html/getting_started.html#hanlp
HanLP 中的数据分为 词典 和 模型 ,其中 词典 是词法分析必需的, 模型 是句法分析必需的
官网demo:https://github.com/hankcs/HanLP/tree/master/src/test/java/com/hankcs/demo
文章来源于zhangqiang1104的博客
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Eclipse安装试用Hanlp
【1】确定正确安装配置Java和Eclipse 【2】下载HanLp的各种东西 下载这四个文件到本地,我是放在桌面的一个文件夹了。 【3】 把jar包导入到Eclipse 在Eclipse先新建一个项目File——New——Java Project--[名字:Hanlp], 再按照如下经验来【4】将data.zip解压到你想放的文件夹,我这里是所有相关的都放在桌面同一个文件夹里面了【5】 修改hanlp.properties文件, 把其中root修改为自己data存放的上一级目录 【6】 把修改好的hanlp.propertites分别拖动到src和bin文件夹下,如图注:1-一定要在bin下也放一份 2-若找不到你的bin文件夹,参照:https://zhidao.baidu.com/question/119611488.html 【7】测试配置是否成功【8】测试结果可能遇到的问题 解决方法,把原来文件CharType.bin名字改成CharType.dat.yes重新运行。 文章来源于ZHUJIYAO的博客
- 下一篇
Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比
以下内容摘自我的 Gitchat :Java 程序员必备:并发知识系统总结,欢迎订阅! Github 地址:https://github.com/Snailclimb/JavaGuide/edit/master/Java相关/synchronized.md synchronized关键字最主要的三种使用方式的总结 修饰实例方法,作用于当前对象实例加锁,进入同步代码前要获得当前对象实例的锁 修饰静态方法,作用于当前类对象加锁,进入同步代码前要获得当前类对象的锁 。也就是给当前类加锁,会作用于类的所有对象实例,因为静态成员不属于任何一个实例对象,是类成员( static 表明这是该类的一个静态资源,不管new了多少个对象,只有一份,所以对该类的所有对象都加了锁)。所以如果一个线程A调用一个实例对象的非静态 synchronized 方法,而线程B需要调用这个实例对象所属类的静态 synchronized 方法,是允许的,不会发生互斥现象,因为访问静态 synchronized 方法占用的锁是当前类的锁,而访问非静态 synchronized 方法占用的锁是当前实例对象锁。 修饰代码块,指定...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7设置SWAP分区,小内存服务器的救世主