ictclas4j 分词工具包 安装流程

首先把 ictclasj解压缩,然后

1.把 Data文件夹整个拷贝到 Eclipse项目的文件夹下,

2.而 bin目录下的 org文件夹整个拷贝到你 Eclipse项目的 bin目录下,(将class文件存进去)

3.把src目录下的org文件夹整个拷贝到 Eclipse项目 的src目录下。

4.把目录中commons-lang-2.4.jar 加到项目中(右键新建folder--设置名字为LIB--直接复制jar到此文件夹--点击此jar-右键-buidpath-add 点击即可)

3.测试分词结果

Java代码

import org.ictclas4j.bean.SegResult;   

import org.ictclas4j.segment.SegTag;   

public class TextSegmentation {   

public static void main(String[] args) {   

String fileContent = "中国科学院计算技术研究所在多年研究基础上," +   "耗时一年研制出了ICTCLAS汉语词法分析系统";  

SegTag segTag = new SegTag(1);// 分词路径的数目           

SegResult segResult = segTag.split(fileContent.trim());   

String classifyContent = segResult.getFinalResult();

System.out.println("分词结果\n"+classifyContent);

}

}  

就是这样,我们可以得到输出的结果,并且带有词性的标注。

Java代码

分词结果   

中国科学院/n 计算/n 技术/n 研究所/n 在/c 多年/m 研究/n 基础/a 上/f ,/w 耗时/v 一/d 年/a 研制/v 出/q 了/u ICTCLAS/nx 汉语/n 词法/n 分析/v 系统/a   

分词结果

中国科学院/n 计算/n 技术/n 研究所/n 在/c 多年/m 研究/n 基础/a 上/f ,/w 耗时/v 一/d 年/a 研制/v 出/q 了/u ICTCLAS/nx 汉语/n 词法/n 分析/v 系统/a

 

 

 

 

 

三、关于可能出现的错误  

    1.越界错误

在Dictionary.java里面的getMaxMatch()函数里要注意加上对wis的判断语句

if(wis != null)

 否则有时会报出越界错误

 

2.关于第三点越界的问题之前的博主没有注意到

在Dictionary.Java的findInModifyTable方法中有这么一段:

 

if (mts != null && mts.size() > index) {ArrayList<WordItem> wis = mts.get(index).getWords();
.....}

 

此处需要对index进行负数的判断,应改为

if (mts != null && mts.size() > index) {if(index < 0)return result;ArrayList<WordItem> wis = mts.get(index).getWords();
........}

 

在对大文件进行中文分词时,出现了以下的错误信息

 

java.lang.ArrayIndexOutOfBoundsException: -39at java.util.ArrayList.get(ArrayList.java:324)at org.ictclas4j.bean.Dictionary.findInOriginalTable(Dictionary.java:
422)at org.ictclas4j.bean.Dictionary.getFreq(Dictionary.java:632)at org.ictclas4j.segment.GraphGenerate.biGenerate(GraphGenerate.java:
170)at org.ictclas4j.segment.Segment.split(Segment.java:81)at com.ictclas4j.test.MyTest.main(MyTest.java:19)

 

经过上网查询资料以及阅读相关源代码,找到可能的出错原因:

 

分词过程中出现了未能识别的字,如繁体字等

改错方法:在Dictionary.java文件中找到findInOriginalTable()方法,将其中的

 

  1. if (res != null && wts != null) {  


修改为

  if (res != null && wts != null &&index>=0 &&index<wts.size()) {  

 


即可。

 

 

转载于:https://www.cnblogs.com/lifegoesonitself/p/3214015.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/408617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[周末阅读]认知和规划,以及推荐几个入门教程Github

图片来自 Unsplash&#xff0c;作者&#xff1a; Rafael Saes 2019 年第 54 篇文章&#xff0c;总第 78 篇文章本文大约 4600 字&#xff0c;阅读大约需要 12 分钟前言本来预计每个周末一篇读后感&#xff0c;但从上次分享[周末阅读]如何培养你的自信和正确认识财富、创造财富&…

Android开发(一):android环境搭建

android开发环境搭建&#xff0c;图文并茂&#xff0c;推荐http://jingyan.baidu.com/article/f0062228f0b18afbd2f0c871.html 【SDK Manager.exe】安装过程遇到问题&#xff1a;【Android SDK Manager下载API时一直显示“Done loading packages”却迟迟不能前进......】 解决地…

Python基础入门_5面向对象基础

Python 基础入门前四篇&#xff1a; Python 基础入门–简介和环境配置Python基础入门_2基础语法和变量类型Python基础入门_3条件语句和迭代循环Python基础入门_4函数 第五篇主要介绍 Python 的面向对象基础知识&#xff0c;也就是类的介绍&#xff0c;包括类方法和属性、构造…

ios 制作framework

原文&#xff1a;http://db-in.com/blog/2011/07/universal-framework-iphone-ios-2-0/ 原文废话太多啊&#xff0c;自己总结一下&#xff0c;因为我是在原有的静态库工程基础上建立的&#xff0c;所以新建一个target就好了。 1 新建target&#xff0c;macOS中的bundle&#xf…

一文了解下 GANs可以做到的事情

原文链接&#xff1a;https://machinelearningmastery.com/impressive-applications-of-generative-adversarial-networks/ 简介 如果说目前深度学习最火&#xff0c;应用最多的领域&#xff0c;莫过于 GAN–Generative Adversarial Network&#xff0c;翻译过来就是生成对抗…

浅析php学习的路线图

一直都想走上码农的道路&#xff0c;奈何当年没有学好。一直与码农无缘。现在又想做一些码农就下了一套某个培训机构的php视频来看。希望能走上码农的道路1.php初级教程 初级教程主要的页面设置的&#xff0c;就是 htmljsdivcss 2.中级教程中级的话开始接触php,就是php核心编程…

被垃圾分类逼疯?试试这款垃圾自动分类器

这是小编转载的第 31 篇好文来自&#xff1a;视说AI作者&#xff1a;视说君让垃圾自动分类近期垃圾分类成为了一个热门话题&#xff0c;原来直接一次性扔掉的垃圾&#xff0c;现在都需要分门别类进行投放。从今年7月1日起&#xff0c;新的《上海市生活垃圾管理条例》正式开始施…

Python基础入门6_文件和异常

Python 基础入门前五篇&#xff1a; Python 基础入门–简介和环境配置Python基础入门_2基础语法和变量类型Python基础入门_3条件语句和迭代循环Python基础入门_4函数Python基础入门_5面向对象基础 这次将介绍有关文件和异常的处理&#xff0c;包括读写文本文件、二进制文件、…

VSS Get Latest Version 没有提示recursive的对话框解决

今天按照VSS使用时&#xff0c;当“Get Latest version”时&#xff0c;不小心勾选了 “Only show this dialog when the Shift key is down”&#xff0c;因此当我再“Get Latest version”&#xff0c;该对话框不会出来&#xff0c;所以造成没发获取全部code。 解决办法&…

必读的10篇关于GAN的论文

前言 上次写的文章-- 一文了解下 GANs可以做到的事情&#xff0c;如果想进一步了解 GAN&#xff0c;学习研究 GAN&#xff0c;可以先从这 10 篇论文开始。 本文翻译自&#xff1a; https://towardsdatascience.com/must-read-papers-on-gans-b665bbae3317 原文介绍 10 篇介…

ArcGIS Server for JavaScript 3.3 的安装部署

一、安装包下载 首先从官网下载ArcGIS API for JavaScript 3.3 的API 和SDK&#xff0c;地址&#xff1a;http://support.esrichina.com.cn/2011/0223/960.html&#xff0c;需要注意的是&#xff0c;想获取API和SDK&#xff0c;需要注册一个Esri全球账户。 点击Library和SDK下载…

Python基础入门7--编写测试用例

Python 基础入门前六篇&#xff1a; Python 基础入门–简介和环境配置Python基础入门_2基础语法和变量类型Python基础入门_3条件语句和迭代循环Python基础入门_4函数Python基础入门_5面向对象基础Python基础入门6_文件和异常 这是第七篇&#xff0c;也是这个基础入门系列的最…

实战|手把手教你训练一个基于Keras的多标签图像分类器

图片来自 pexels&#xff0c;作者&#xff1a;Jean-Christophe Andr2019 年第 63 篇文章&#xff0c;总第 87 篇文章原文链接&#xff1a;https://www.pyimagesearch.com/2018/05/07/multi-label-classification-with-keras/作者&#xff1a;Adrian Rosebrock今天介绍的是基于 …