Browse by Tags
Sorry, but there are no more tags available to filter with.
-
全文檢索筆記 – Lucent.Net (4) 詞庫校正
-
體會過自動分詞(一元分詞、二元分詞)與詞庫分詞的 特性差異 ,但是到目前為止有個問題一直被忽略,我測試用的詞庫直接下載自網路,內容是簡體中文,拆解精準度大有問題。 以 CWSharp 詞庫分詞為例,使用 Github 下載的 cwsharp.dawg 詞庫檔 分析這句中文「競選活動已日趨白熱化,參選人莫不全力尋求廠商支援,其中以鄭少秋勝算最大。」,使用 Luke.net 查看分詞結果如下: 雖然還是能查到關鍵字,但分詞結果並不好,幾乎都拆成單一字元,跟一元分詞沒什麼兩樣。這意味詞庫命中率極低,其根本原因在於我們用的詞庫是簡體...
-
全文檢索筆記 - Lucene.Net (3) 自動分詞 vs 詞庫分詞
-
前篇筆記 試用了盤古分詞器跟 StadnardAnalyzer,繼續研究其他分詞器選擇。 英文能依據空白快速精準分詞,中文沒這麼幸運,必須借助演算法,邏輯複雜許多。中文分詞主要有兩個方向: 第一種是自動分詞,依循固定規則自動切分,例如: 一元分詞、二元分詞;第二種則是詞庫分詞,查詢詞庫識找出已知詞彙;也有分詞器選擇兩種做法兼用,以求互補。 一元分詞與二元分詞的優點是做法簡單,不需維護詞庫,但其索引幾乎跟原文一樣大,查詢效率也較差;詞庫分詞的索引可縮小到原文的 30%( 參考 ),但詞庫完整性是成敗關鍵...
-
全文檢索筆記 - Lucene.Net (2) 盤古分詞
-
前一篇筆記 談完 Lucene.Net 術語與基本觀念,感覺用盤古中文分詞器是不錯的主意。先來個最簡單的「盤古中文分詞->建立索引->查詢關鍵字」 Lucene.Net 範例: private static string IndexPath = "E:\\LuceneIndex" ; public static void SimpleDemo() { //指定索引資料儲存目錄 var fsDir = FSDirectory.Open(IndexPath); //建立IndexWriter...
-
全文檢索筆記 - Lucene.Net (1)
-
網站專案的規格提到了網站內容的全文檢索,不要求比美 Google 的速度與精準度,提供最基本的關鍵字查詢就成。陸續評估了一些解決方案,整理成筆記備忘兼分享。 談到在 .NET 做全文檢索,不能不提 Lucene.Net 這個開源全文檢索引擎! 如果你對 Lucene.Net 很陌生,推薦 CSDN 有篇不錯的入門指引: 使用Lucene.Net实现全文检索 。 剛開始接觸 Lucene.Net 被一堆術語搞得昏頭轉向,尤其是建立索引欄位時,參數裡有一堆 ANALYZE、NORMS、POSITION...