43、哈工大NLP自然语言处理,LTP4j的测试+还是测试
1、首先需要构建自然语言处理的LTP的框架
(1)需要下载LTP的源码包即c++程序(https://github.com/HIT-SCIR/ltp)下载完解压缩之后的文件为ltp-master
(2)需要下载LTP4j的封装包(https://github.com/HIT-SCIR/ltp4j),下载完解压缩之后的文件为ltp4j-master
(3)需要下载cmake并且安装
(4)需要下载ant用来编译LTP4j,将LTP4j文件编译成ltp.jar文件,最后在myeclipse中引用它
2、首先编译ltp4j-master
直接进入ltp4j-master的文件夹中,运行ant命令,然后就会生成一个

output的文件夹,里边是

jar包就在jar文件夹下。
3、编译ltp-master的c++文件源码
这个不会编译实在太复杂了,所以直接上网找了个编译好的,下了下来。大家可以上以下这个地址中去找去,下载64位已经编译好的动态链接库
http://download.csdn.net/index.php/mobile/source/download/sv2008337/9471357
4、构建java项目,然后进行分词测试

构建的java项目如上图所示,ltp4j.jar文件就是第2步中编译出来的jar包。
edu.hit.ir.ltp4j是从ltp4j-master文件夹中直接拷过来的。
ltp_data文件是分词的词库,据我们经理说现在都是用字典分词来着,所以肯定要有词库的,这个词库在这里是从下边这里拷进来的。
好吧是我从网上下的,这里骗了大家了。
下面来说卡了我时间最长的一步,就是通过jni来调用dlll动态链接库,因为这需要引入动态链接库的library
就是下边这样,在这里配置你的dlll文件库在哪里,在我的电脑中是在,下下张图上边


上面这张图也就是我从第3步中从网上下下来的dlll库,直接在java文件中配置就可以了
5、分词测试
经过了上面的准备工作我们就真的可以开始进行分词测试了
(1)分词功能测试
/**
* 1,分词功能测试
*/
@Test
public void test1(){
if(Segmentor.create("ltp_data/cws.model")<0){
System.err.println("load failed");
return;
} String sent = "我是中国人";
List<String> words = new ArrayList<String>();
int size = Segmentor.segment(sent,words); for(int i = 0; i<size; i++) {
System.out.print(words.get(i));
if(i==size-1) {
System.out.println();
} else{
System.out.print("\t");
}
}
Segmentor.release();
}
结果如下所示:

(2)词性标注功能测试
/**
* 词性标注功能测试
*/
@Test
public void testPosTag(){
if(Postagger.create("ltp_data//pos.model")<0){
System.err.println("加载失败!");
return;
}
List<String> words = new ArrayList<String>();
words.add("我");
words.add("从事");
words.add("自然");
words.add("语言");
words.add("处理");
words.add("方面");
words.add("的");
words.add("工作");
words.add("!");
List<String> postags = new ArrayList<String>();
int size = Postagger.postag(words, postags);
for (int i = 0; i < size; i++) {
System.out.println(words.get(i)+"_"+postags.get(i));
if(i==size-1){
System.out.println();
}else{
System.out.println("|");
}
}
Postagger.release();
}
结果如下所示:

43、哈工大NLP自然语言处理,LTP4j的测试+还是测试的更多相关文章
- NLP 自然语言处理实战
前言 自然语言处理 ( Natural Language Processing, NLP) 是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和 ...
- flask 第六章 人工智能 百度语音合成 识别 NLP自然语言处理+simnet短文本相似度 图灵机器人
百度智能云文档链接 : https://cloud.baidu.com/doc/SPEECH/index.html 1.百度语音合成 概念: 顾名思义,就是将你输入的文字合成语音,例如: from a ...
- APP敏捷测试,测试和开发并行!
测试和开发具有同等重要的作用,从一开始,测试和开发就是相向而行的.测试是开发团队的一支独立的.重要的支柱力量. 测试要具备独立性,独立分析业务需求,独立配置测试环境,独立编写测试脚本,独立开发测试工具 ...
- 软件测试 -- 和用户共同测试(UAT测试)的注意点有哪些
软件产品在投产前,通常都会进行用户验收测试.如果用户验收测试没有通过,直接结果就是那不到“Money”,间接影响是损害了公司的形象,而后者的影响往往更严重.根据作者的经验,用户验收测试一定要让用户满意 ...
- 衣联网络-亿能测试 安全测试沙龙 PPT资料免费下载
衣联网络-亿能测试 安全测试沙龙 PPT资料免费下载http://automationqa.com/forum.php?mod=viewthread&tid=2304&fromuid= ...
- 冒烟测试、α测试、Beta测试、性能测试
“冒烟测试”(也可称为showcase)这一术语描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过程. 冒烟测试(smoke test)在测试中发现问题,找到了一个Bug,然后开发人员会 ...
- Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版
软件介绍 Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学 ...
- JUit——(三)JUnit核心对象(测试、测试类、Suit和Runner)
JUnit的核心对象:测试.测试类.测试集(Suite).测试运行器 1. 测试: @Test注释的.公共的.不带有任何参数.并且返回void类型的方法 2. 测试类: 公共的,包含对应类的测试方法的 ...
- app测试--稳定性测试
稳定性测试的概念有2种, 一, 稳定性测试,对应于异常性测试,即发生异常情况时,系统如何反应的测试.包含: 1 交互性测试,被打扰的情况,如来电,短信,低电量等.这些其实在上章的功能测试中有提到. 2 ...
随机推荐
- Windows 2008 R2 强制删除Cluster
在正常删除Cluster 节点之后,再添加节点时,报“节点已经加入群集”,无法加入,注册表信息删除后可正常移除Cluster服务,如下: HKEY_LOCAL_MACHINE\SYSTEM\Curre ...
- LeetCode "473. Matchsticks to Square"
A trickier DFS, with a little bit complex recursion param tweak, and what's more important is prunin ...
- MSSQL MERGE语法
Merge的用法 Merge可以完成以下功能: 1. 两个表之间数据的更新 2. 进行进销存更新库存 3. 进行表之间数据的复制 语法说明: 1. 在语句结束后一定要用分号,否 ...
- 01shell入门基础
01shell入门基础 为什么学习和使用shell编程 shell是一种脚本语言,脚本语言是相对于编译语言而言的.脚本语言不需要编译,由解释器读取程序并且执行其中的语句,而编译语言需要编译成可执行代码 ...
- Redis 连接问题
.NET 中使用 StackExchange.Redis 我为什么想写这个,总感觉很多介绍相应技术的博客,只是把内容从官网搬到自己的博客中,没有任何的实践,这样会给想学的人,没有任何好处,也可能我是自 ...
- 读写hdfs文件(工作笔记)
import java.io.IOException; import java.io.InputStream; import java.util.List; import java.util.Map; ...
- [Linux] IP绑定解释 BindIp
一.缘由: 今天安装Mongodb,本来想限制只能内网或者某几台机器可以访问,看到配置文件有个net.bindIp选项, 就自以为是的认为,他可以像nginx那样限制访问来源IP,其实大错特错.这里配 ...
- 浅谈C语言变量声明的解析
C语言本身提供了一种不甚明确的变量声明方式——基于使用的声明,如int *a,本质上是声明了*a的类型为int,所以得到了a的类型为指向int的指针.对于简单类型,这样声明并不会对代码产生多大的阅读障 ...
- AttributeError: 'list' object has no attribute 'write_pdf'
我在可视化决策树,运行以下代码时报错:AttributeError: 'list' object has no attribute 'write_pdf' 我使用的是python3.4 from sk ...
- 在ANSYS WORKBENCH中使用APDL命令的例子
如何在workbench中使用command? 如何在ansys workbench中插入apdl? 如何在ansys workbench中使用复杂载荷? 答案在APDL,他可以实现函数化的载荷,如岁 ...