擴充閱讀
分詞系列專題
jieba-fenci 01 結巴分詞原理講解 segment
jieba-fenci 02 結巴分詞原理講解之資料歸一化 segment
jieba-fenci 03 結巴分詞與繁簡體轉換 segment
jieba-fenci 04 結巴分詞之詞性標註實現思路 speechTagging segment
關鍵詞系列專題
NLP segment-01-聊一聊分詞
NLP segment-02-聊一聊關鍵詞提取 keyword
NLP segment-03-基於 TF-IDF 實現關鍵詞提取 java 開源實現
NLP segment-04-自動摘要 auto-summary java 開源實現
NLP segment-20-分詞開源專案介紹 HanLP 未來十年的自然語言處理
NLP segment-21-分詞開源專案介紹 ansj_seg
倒排索引原理與實現 reverse-index
TF-IDF 自動生成文章摘要
TF-IDF 自動提取關鍵詞
相似文章演算法之語義指紋-文字內容去重
TF-IDF 找出相似文章演算法
NLP segment-21-分詞開源專案介紹 ansj_seg
開源專案
為了便於大家學習,專案開源地址如下,歡迎 fork+star 鼓勵一下老馬~
nlp-keyword 關鍵詞
pinyin 漢字轉拼音
segment 高效能中文分詞
opencc4j 中文繁簡體轉換
nlp-hanzi-similar 漢字相似度
word-checker 拼寫檢測
sensitive-word 敏感詞
前言
前面一些內容,我們介紹了分詞。
以及 TF-IDF 的實現原理。
當然,這些都是知識,但不是工具。
我們將其轉換為方便可用的 java 工具。
nlp-keyword
nlp-keyword 高效能的 java 分詞關鍵詞提取實現,基於分詞 segment。
願景:成為 java 最好用的關鍵詞工具。
特性
-
基於 TF-IDF 演算法的關鍵字演算法
-
靈活的條件指定
變更日誌
快速開始
maven 引入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>keyword</artifactId>
<version>1.0.0</version>
</dependency>
快速開始
- 獲取關鍵詞
final String text = "這是一個伸手不見五指的黑夜,夜太美。";
List<IKeywordResult> keywords = KeywordHelper.keyword(text);
Assert.assertEquals("[伸手不見|0.86879235325, 太美|0.70848301840625, 伸手不見五指|0.63371734601875, 黑夜|0.509854654010625, 伸手|0.43563643037625]", keywords.toString());
- 指定返回的個數
final String text = "這是一個伸手不見五指的黑夜,夜太美。";
List<IKeywordResult> keywords = KeywordHelper.keyword(text, 1);
Assert.assertEquals("[伸手不見|0.86879235325]", keywords.toString());
- 指定返回的格式
final String text = "這是一個伸手不見五指的黑夜,夜太美。";
List<String> keywords = KeywordHelper.keyword(text, 1, KeywordResultHandlers.words());
Assert.assertEquals("[伸手不見]", keywords.toString());
ROAD-MAP
-
[] 字典資料獨立,便於使用者自定義選擇
-
[] 文字相似度
-
[] auto-summary 自動摘要