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的测试+还是测试的更多相关文章

  1. NLP 自然语言处理实战

    前言 自然语言处理 ( Natural Language Processing, NLP) 是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和 ...

  2. flask 第六章 人工智能 百度语音合成 识别 NLP自然语言处理+simnet短文本相似度 图灵机器人

    百度智能云文档链接 : https://cloud.baidu.com/doc/SPEECH/index.html 1.百度语音合成 概念: 顾名思义,就是将你输入的文字合成语音,例如: from a ...

  3. APP敏捷测试,测试和开发并行!

    测试和开发具有同等重要的作用,从一开始,测试和开发就是相向而行的.测试是开发团队的一支独立的.重要的支柱力量. 测试要具备独立性,独立分析业务需求,独立配置测试环境,独立编写测试脚本,独立开发测试工具 ...

  4. 软件测试 -- 和用户共同测试(UAT测试)的注意点有哪些

    软件产品在投产前,通常都会进行用户验收测试.如果用户验收测试没有通过,直接结果就是那不到“Money”,间接影响是损害了公司的形象,而后者的影响往往更严重.根据作者的经验,用户验收测试一定要让用户满意 ...

  5. 衣联网络-亿能测试 安全测试沙龙 PPT资料免费下载

    衣联网络-亿能测试 安全测试沙龙 PPT资料免费下载http://automationqa.com/forum.php?mod=viewthread&tid=2304&fromuid= ...

  6. 冒烟测试、α测试、Beta测试、性能测试

    “冒烟测试”(也可称为showcase)这一术语描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过程. 冒烟测试(smoke test)在测试中发现问题,找到了一个Bug,然后开发人员会 ...

  7. Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版

    软件介绍   Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学 ...

  8. JUit——(三)JUnit核心对象(测试、测试类、Suit和Runner)

    JUnit的核心对象:测试.测试类.测试集(Suite).测试运行器 1. 测试: @Test注释的.公共的.不带有任何参数.并且返回void类型的方法 2. 测试类: 公共的,包含对应类的测试方法的 ...

  9. app测试--稳定性测试

    稳定性测试的概念有2种, 一, 稳定性测试,对应于异常性测试,即发生异常情况时,系统如何反应的测试.包含: 1 交互性测试,被打扰的情况,如来电,短信,低电量等.这些其实在上章的功能测试中有提到. 2 ...

随机推荐

  1. 实战之中兴ZXHN F460光猫破解超级密码+开启无线路由功能

    本文面向小白用户,即使你不懂电脑看完你也会破解光猫,网上有些文章的操作方法是错误的.按照我这篇文章,只要型号对,那么肯定没问题!电信光纤入户,家里用的是电信送的中兴查看 ZXHN F460 中的全部文 ...

  2. MySQL Innodb数据库性能实践——热点数据性能

    摘要: 对于大部分的应用来说,都存在热点数据的访问,即:某些数据在一定时间内的访问频率要远远高于其它数据. 常见的热点数据有“最新的新闻”.“最热门的新闻”.“下载量最大”的电影等. 为了了解MySQ ...

  3. 本地搭建ubuntu

    1 使用VMware Workstation 安装ubuntu 14 2 进入ubuntu 命令行 ctrl+alt+f2 3 默认root用户是无固定密码的,并且是被锁定的,如果想给root设置一个 ...

  4. [2015.02.02]文本编码转换专家 v2.6

    软件名称:文本编码转换专家最新版本:v2.6操作系统:XP/2003/Win7/Win2008软件介绍:文本编码转换专家,界面简洁易用,功能强大实用.自动识别文件编码,有效转换成目标编码.真正的多线程 ...

  5. Maven间接依赖冲突解决办法

    如果项目中maven依赖太多,由于还有jar之间的间接依赖,所以可能会存在依赖冲突.依赖冲突大部分都是由于版本冲突引起的,查看maven的依赖关系,可以找到引起冲突的间接依赖 如上图,通过Depend ...

  6. Visual Studio Team System 2008 Team Suite(90 天试用版)

    安装完成后,在“控制面板”中启动“添加删除程序”,选中Vs2008,点击“更改.删除”,输入序列号:PYHYP-WXB3B-B2CCM-V9DX9-VDY8T

  7. Nginx -- Gzip 压缩功能作用

    1.对应的压缩参数说明# 开启gzip压缩功能gzip on; # 设置允许压缩的页面最小字节数,页面字节数从header头的Content-Length中获取.默认值是0,不管页面多大都进行压缩,建 ...

  8. loss function与cost function

    实际上,代价函数(cost function)和损失函数(loss function 亦称为 error function)是同义的.它们都是事先定义一个假设函数(hypothesis),通过训练集由 ...

  9. 微信调试、API、AJAX的调试 SocketLog

    SocketLog适合Ajax调试和API调试, 举一个常见的场景,用SocketLog来做微信调试, 我们在做微信API开发的时候,如果API有bug,微信只提示"改公众账号暂时无法提供服 ...

  10. Python解析命令行读取参数 -- argparse模块

    在多个文件或者不同语言协同的项目中,python脚本经常需要从命令行直接读取参数.万能的python就自带了argprase包使得这一工作变得简单而规范.PS:optparse包是类似的功能,只不过写 ...