當前位置:首頁 » 編程語言 » java分詞工具

java分詞工具

發布時間: 2023-03-08 04:19:37

java word分詞器怎樣安裝在java中

word分詞是一個Java實現的分布式的中文分片語件,提供了多種基於詞典的分詞演算法,並利用ngram模型來消除歧義。

如果需要安裝word分詞器可以參考下面的步驟:

1、確保電腦上已經安裝了JDK軟體和Eclispe工具,沒有安裝的可以到對應的官網下載安裝:

JDK官網:http://www.oracle.com/technetwork/java/javase/downloads/index.html

Eclipse官網:http://www.eclipse.org

2、下載word分詞器的相關jar包:

打開word分詞器的官方github主頁:https://github.com/ysc/word

導入成功之後就可以在自己的項目中使用word分詞器了。

㈡ java中文分片語件word怎麼使用

參考如下
1、快速體驗
運行項目根目錄下的腳本demo-word.bat可以快速體驗分詞效果
用法: command [text] [input] [output]
命令command的可選值為:demo、text、file
demo
text 楊尚川是APDPlat應用級產品開發平台的作者
file d:/text.txt d:/word.txt
exit

2、對文本進行分詞
移除停用詞:List<Word> words = WordSegmenter.seg("楊尚川是APDPlat應用級產品開發平台的作者");
保留停用詞:List<Word> words = WordSegmenter.segWithStopWords("楊尚川是APDPlat應用級產品開發平台的作者");
System.out.println(words);

輸出:
移除停用詞:[楊尚川, apdplat, 應用級, 產品, 開發平台, 作者]
保留停用詞:[楊尚川, 是, apdplat, 應用級, 產品, 開發平台, 的, 作者]

3、對文件進行分詞
String input = "d:/text.txt";
String output = "d:/word.txt";
移除停用詞:WordSegmenter.seg(new File(input), new File(output));
保留停用詞:WordSegmenter.segWithStopWords(new File(input), new File(output));

4、自定義配置文件
默認配置文件為類路徑下的word.conf,打包在word-x.x.jar中
自定義配置文件為類路徑下的word.local.conf,需要用戶自己提供
如果自定義配置和默認配置相同,自定義配置會覆蓋默認配置
配置文件編碼為UTF-8

5、自定義用戶詞庫
自定義用戶詞庫為一個或多個文件夾或文件,可以使用絕對路徑或相對路徑
用戶詞庫由多個詞典文件組成,文件編碼為UTF-8
詞典文件的格式為文本文件,一行代表一個詞
可以通過系統屬性或配置文件的方式來指定路徑,多個路徑之間用逗號分隔開
類路徑下的詞典文件,需要在相對路徑前加入前綴classpath:

指定方式有三種:
指定方式一,編程指定(高優先順序):
WordConfTools.set("dic.path", "classpath:dic.txt,d:/custom_dic");
DictionaryFactory.reload();//更改詞典路徑之後,重新載入詞典
指定方式二,Java虛擬機啟動參數(中優先順序):
java -Ddic.path=classpath:dic.txt,d:/custom_dic
指定方式三,配置文件指定(低優先順序):
使用類路徑下的文件word.local.conf來指定配置信息
dic.path=classpath:dic.txt,d:/custom_dic

如未指定,則默認使用類路徑下的dic.txt詞典文件

6、自定義停用詞詞庫
使用方式和自定義用戶詞庫類似,配置項為:
stopwords.path=classpath:stopwords.txt,d:/custom_stopwords_dic

7、自動檢測詞庫變化
可以自動檢測自定義用戶詞庫和自定義停用詞詞庫的變化
包含類路徑下的文件和文件夾、非類路徑下的絕對路徑和相對路徑
如:
classpath:dic.txt,classpath:custom_dic_dir,
d:/dic_more.txt,d:/DIC_DIR,D:/DIC2_DIR,my_dic_dir,my_dic_file.txt

classpath:stopwords.txt,classpath:custom_stopwords_dic_dir,
d:/stopwords_more.txt,d:/STOPWORDS_DIR,d:/STOPWORDS2_DIR,stopwords_dir,remove.txt

8、顯式指定分詞演算法
對文本進行分詞時,可顯式指定特定的分詞演算法,如:
WordSegmenter.seg("APDPlat應用級產品開發平台", SegmentationAlgorithm.BidirectionalMaximumMatching);

SegmentationAlgorithm的可選類型為:
正向最大匹配演算法:MaximumMatching
逆向最大匹配演算法:ReverseMaximumMatching
正向最小匹配演算法:MinimumMatching
逆向最小匹配演算法:ReverseMinimumMatching
雙向最大匹配演算法:BidirectionalMaximumMatching
雙向最小匹配演算法:BidirectionalMinimumMatching
雙向最大最小匹配演算法:
全切分演算法:FullSegmentation
最少分詞演算法:MinimalWordCount
最大Ngram分值演算法:MaxNgramScore

9、分詞效果評估
運行項目根目錄下的腳本evaluation.bat可以對分詞效果進行評估
評估採用的測試文本有253 3709行,共2837 4490個字元
評估結果位於target/evaluation目錄下:
corpus-text.txt為分好詞的人工標注文本,詞之間以空格分隔
test-text.txt為測試文本,是把corpus-text.txt以標點符號分隔為多行的結果
standard-text.txt為測試文本對應的人工標注文本,作為分詞是否正確的標准
result-text-***.txt,***為各種分詞演算法名稱,這是word分詞結果
perfect-result-***.txt,***為各種分詞演算法名稱,這是分詞結果和人工標注標准完全一致的文本
wrong-result-***.txt,***為各種分詞演算法名稱,這是分詞結果和人工標注標准不一致的文本

㈢ 你常用的Java工具庫都有哪些

JavaSDK肯定是使用最廣的庫,所以本文的名單焦點是流行的第三方庫。該列表可能並不完善,所以如果你覺得有什麼應該出現在列表中的,請留下您的評論。非常感謝!

1、核心庫

  • Apache Commons Lang:來自Apache的核心庫,為java.lang API補充了許多常用的工具類,如字元串操作、對象的創建等。

  • Google Guava:來自谷歌的核心庫,包括集合(Collection)、緩存(Caching)、支持原語(Primitives)等。(示例)

  • 2、HTML、XML Parser

  • Jsoup:一個簡化了的 HTML操作的庫。(示例)

  • STaX:一組可以高效處理XML的API。 (示例)

  • 3、Web框架

  • Spring:Java平台上眾所周知的開源框架和依賴注入容器。(示例)

  • Struts2:來自Apache的流行Web框架。 (示例)

  • GoogleWebToolkit:Google提供的開發工具庫,主要用於構建和優化復雜的Web程序用。 (示例)

  • Strips:使用最新Java技術構建的Web程序框架,推薦使用。

  • Tapestry:面向組件的框架,用於使用Java創建動態、健壯、擴展性高的Web應用程序。

  • 請猛擊這里查看以上面框架之間的比較。

    4、圖表、報表、圖像

  • JFreeChart:用於創建如條形圖、折線圖、餅圖等圖表。

  • JFreeReport:創建於輸出PDF格式的報表。

  • JGraphT:創建圖像,其中只包含由線段連接的點集。

  • 5、窗口

  • Swing:SDK提供的GUI庫。(示例)

  • SWT:eclipse提供的GUI庫。

  • SWT與Swing的比較。

    6.、GUI框架

  • EclipseRCP。(示例)

  • 7、自然語言處理

  • OpenNLP:來自Apache的自然語言處理庫。 (示例)

  • StanfordParser:斯坦福大學提供的自然語言處理庫。(示例)

  • 如果你是一名NLP專家,請猛擊這里查看更多工具庫介紹。

    8、靜態分析

  • EclipseJDT:由IBM提供的靜態分析庫,可以操作Java源代碼。(示例)

  • WALA:可以處理jar包文件(即位元組碼)的工具庫。(示例)

  • 9、JSON

  • Jackson: 用於處理JSON數據格式的多用途的Java庫。Jackson 旨在快速、准確、輕量、對開人員友好之間找到最好的平衡點。

  • XStream:一個簡單用於對象和XML互相轉換的庫。

  • GoogleGson:一個專門用於Java對象和Json對象相互轉換的工具庫。(示例)

  • JSON-lib:用於beans、maps、collections、javaarrays、XML和JSON之間相互轉換操作的工具庫。

  • 10、數學

  • ApacheCommonsMath:提供數學計算和數值統計需函數的工具庫。

  • 11、日誌

  • ApacheLog4j:風行一時的日誌記錄操作庫。(示例)

  • Logback:當前流行的log4j項目的繼任者。

  • SLF4J(TheSimpleLoggingFacadeforJava): 各種日誌框架的一個簡單的外觀或抽象(如java.util.logging 、logback、log4j等),允許用戶在部署時加入需要的日誌框架。

  • 12、Office

  • ApachePOI:利用其提供的APIs,可以使用純Java代碼操作各種基於微軟OLE2合成文檔格式的文檔。

  • Docx4j:一個用於創建、操作微軟公開的XML文件的庫(支持Worddocx、 Powerpointpptx和Excelxlsx)。

  • 13、日期和時間

  • Joda-Time:如有質量問題包退包換的Java日期和時間類。

  • 14、資料庫

  • Hibernate、EclipseLink、JPA

  • JDO

  • jOOQ

  • SpringJDBC、SpringData

  • ApacheDbUtils

  • 15、開發工具

  • Lambok: 旨在減少代碼編寫的Java開發庫。

熱點內容
電腦配置信息被改怎麼看到 發布:2024-11-07 01:17:06 瀏覽:776
linuxgc 發布:2024-11-07 00:51:56 瀏覽:316
樂視改密碼是什麼意思 發布:2024-11-07 00:47:07 瀏覽:486
linux圖形界面系統 發布:2024-11-07 00:42:00 瀏覽:999
群控ip是伺服器ip么 發布:2024-11-07 00:39:43 瀏覽:564
安卓手機上製表app哪個好 發布:2024-11-07 00:28:06 瀏覽:117
電腦進伺服器卡了退不出來怎麼辦 發布:2024-11-07 00:23:30 瀏覽:763
安卓哪個型號不卡 發布:2024-11-07 00:19:03 瀏覽:485
mxml庫編譯 發布:2024-11-07 00:18:07 瀏覽:213
dnsdns伺服器地址 發布:2024-11-07 00:16:23 瀏覽:11