<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      使用Lucene的Highlighter實現文件摘要的自動提取

      使用Lucene自帶的Highlighter就可以實現對原始文件摘要的提取工作。Highlighter類有一個getBestFragment方法,這個方法有多個重載的方法,其中,使用:

      public final String getBestFragment(Analyzer analyzer, String fieldName,String text)

      就可以提取摘要,它實現了從指定的原始文件中,提取檢索關鍵字出現頻率最高的一段文字作為摘要,默認情況下提取100個字符,同時加上自定義的高亮顯示代碼,又可實現關鍵字高亮顯示。

      測試程序如下所示:

      package org.shirdrn.lucene.learn.digest;

      import java.io.IOException;

      import net.teamhot.lucene.ThesaurusAnalyzer;

      import org.apache.lucene.analysis.Analyzer;
      import org.apache.lucene.document.Document;
      import org.apache.lucene.document.Field;
      import org.apache.lucene.index.CorruptIndexException;
      import org.apache.lucene.index.IndexWriter;
      import org.apache.lucene.queryParser.ParseException;
      import org.apache.lucene.queryParser.QueryParser;
      import org.apache.lucene.search.Hits;
      import org.apache.lucene.search.IndexSearcher;
      import org.apache.lucene.search.Query;
      import org.apache.lucene.search.highlight.Highlighter;
      import org.apache.lucene.search.highlight.QueryScorer;
      import org.apache.lucene.search.highlight.SimpleHTMLFormatter;

      public class ExtractDigest {

      private String indexPath = "H:\\index";
      private Analyzer analyzer;
      private IndexSearcher searcher;
      private String prefixHTML = "<font color='red'>";
      private String suffixHTML = "</font>";

      public ExtractDigest(){
         analyzer = new ThesaurusAnalyzer();
      }

      public void createIndex() throws IOException {
         IndexWriter writer = new IndexWriter(indexPath,analyzer,true);
         Document docA = new Document();
         String fileTextA = "挖掘頻繁項集的方法可以擴展到挖掘閉頻繁項集(由它們容易導出頻繁項集的集合)。這些方法結合了附加的優化技術,如項合并、子項剪枝和項跳過,以及模式樹中產生的項集的有效子集檢查。挖掘頻繁項集和關聯已經用不同的方法擴展,包括挖掘多層關聯規則和多維關聯規則。多層關聯規則可以根據每個抽象層的最小支持度閾值如何定義,使用多種策略挖掘。如一致的支持度、遞減的支持度和基于分組的支持度。冗余的多層(后代)關聯規則可以刪除,如果根據其對應的祖先規則,他們的支持度和置信度接近于期望值的話。挖掘多維關聯規則的技術可以根據對量化屬性的處理分為若干類。第一,量化屬性可以根據預定義的概念分層靜態離散化。數據立方體非常適合這種方法,因為數據立方體和量化屬性都可以利用概念分層。第二,可以挖掘量化關聯規則,其中量化屬性根據分箱和/或聚類動態離散化,“鄰近的”關聯規則可以用聚類合并,產生更簡潔、更有意義的規則。基于約束的規則挖掘允許用戶通過提供元規則(即模式模板)和其他挖掘約束對規則搜索聚焦。這種挖掘推動了說明性數據挖掘查詢語言和用戶界面的使用,并對挖掘查詢優化提出了巨大挑戰。規則約束可以分為五類:反單調的、單調的、簡潔的、可轉變的和不可轉變的。前四類約束可以在頻繁項集挖掘中使用,使挖掘更有功效,更有效率。沒有進一步分析或領域知識,關聯規則不應該直接用于預測。它們不必指示因果關系。然而,對于進一步探查,它們是有幫助的切入點,使得它們成為理解數據的流行工具。流數據不斷地在計算機系統中流進流出并且具有變化的更新速度,涉及數據流的應用非常廣泛。大綱提供數據流的匯總,通常用來返回查詢的近似解答。隨機抽樣、滑動窗口、直方圖、多分辨率方法、梗概以及隨機算法都是大綱的形式。傾斜時間框架模型允許數據以多個時間粒度存儲,最近的時間記錄在最細的粒度上,最遠的時間記錄在最粗的粒度上。流立方體可以存儲壓縮的數據,對時間維度使用傾斜時間框架模型,并且僅在一些關鍵的層上存儲數據,關鍵層反映了分析人員最感興趣的數據層,從而基于到關鍵層的“常用路徑”進行部分物化。";
         Field fieldA = new Field("contents", fileTextA, Field.Store.YES,Field.Index.TOKENIZED);
         docA.add(fieldA);
        
         Document docB = new Document();
         String fileTextB = " 數據挖掘(Data Mining),又稱為數據庫中的知識發現(Knowledge Discovery in Database, KDD),就是從大量數據中獲取有效的、新穎的、潛在有用的、最終可理解的模式的非平凡過程,簡單的說,數據挖掘就是從大量數據中提取或“挖掘”知識。";
         Field fieldB = new Field("contents", fileTextB, Field.Store.YES,Field.Index.TOKENIZED);
         docB.add(fieldB);
        
         writer.addDocument(docA);
         writer.addDocument(docB);
         writer.optimize();
         writer.close();
      }

      public void search(String fieldName,String keyword) throws CorruptIndexException, IOException, ParseException{
         searcher = new IndexSearcher(indexPath);
         QueryParser queryParse = new QueryParser(fieldName, analyzer);
         Query query = queryParse.parse(keyword);
         Hits hits = searcher.search(query);
         for(int i=0;i<hits.length();i++){
          Document doc = hits.doc(i);
         String text = doc.get(fieldName);
         //System.out.println("||||||||||||"+text);
          int htmlLength = prefixHTML.length()+suffixHTML.length();
          System.out.println("高亮HTML的總長度為"+htmlLength);
          SimpleHTMLFormatter simpleHTMLFormatter = new SimpleHTMLFormatter(prefixHTML, suffixHTML);   
                  Highlighter highlighter = new Highlighter(simpleHTMLFormatter,new QueryScorer(query));   
                  String highLightText = highlighter.getBestFragment(analyzer,"contents",text);
                  System.out.println("★高亮顯示第 "+(i+1) +" 條檢索結果如下所示:");
                  System.out.println(highLightText);
                  System.out.println("顯示第 "+(i+1) +" 條檢索結果摘要的長度為(含高亮HTML代碼):"+highLightText.length());
         }
         searcher.close();
      }


      public static void main(String[] args) {
         ExtractDigest ed = new ExtractDigest();
         try {
          ed.createIndex();
          ed.search("contents", "根據 挖掘");
         } catch (CorruptIndexException e) {
          e.printStackTrace();
         } catch (IOException e) {
          e.printStackTrace();
         } catch (ParseException e) {
          e.printStackTrace();
         }
      }

      }

      上面程序,檢索“根據 挖掘”,首先使用QueryParser解析,提取Term為“根據”和“挖掘”,檢索結果應該在提取的摘要中高亮顯示這兩個Term的text。

      運行結果如下所示:

      詞庫尚未被初始化,開始初始化詞庫.
      初始化詞庫結束。用時:3985毫秒;
      共添加195574個詞語。
      高亮HTML的總長度為25
      ★高亮顯示第 1 條檢索結果如下所示:
      同的方法擴展,包括<font color='red'>挖掘</font>多層關聯規則和多維關聯規則。多層關聯規則可以<font color='red'>根據</font>每個抽象層的最小支持度閾值如何定義,使用多種策略<font color='red'>挖掘</font>。如一致的支持度、遞減的支持度和基于分組的支持度。冗余的多層(后代)關聯規則
      顯示第 1 條檢索結果摘要的長度為(含高亮HTML代碼):174
      高亮HTML的總長度為25
      ★高亮顯示第 2 條檢索結果如下所示:
      數據<font color='red'>挖掘</font>(Data Mining),又稱為數據庫中的知識發現(Knowledge Discovery in Database, KDD),就是從大量數據中獲取有效的、新穎的、潛在有用的、最終可理解
      顯示第 2 條檢索結果摘要的長度為(含高亮HTML代碼):124

      上面程序中,在進行分析的時候,構造Field,同時對指定原始文本進行了存儲,如下所示:

      Field fieldA = new Field("contents", fileTextA, Field.Store.YES,Field.Index.TOKENIZED);

      這個Field.Store.YES指定的存儲,但是在實際中這樣會浪費存儲空間,而且造成索引管理的困難,所以在實際中是直接從數據庫中查詢出原始文件的文本內容,然后對這個文本進行處理,對其進行提取摘要的操作。也就是在上面String text = doc.get(fieldName);這一步,text的內容是根據Document的ID,從數據庫中查詢出來的,避免了IO操作,從而提高了檢索速度,而且便利了索引文件的管理。

      posted @ 2010-05-10 16:35  abstractwind  閱讀(2515)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 精品视频在线观看免费观看| 国产无遮挡免费真人视频在线观看| 色五月丁香五月综合五月| 亚洲熟女国产熟女二区三区| 欧美国产综合视频| 日本一区二区不卡精品| 精品人人妻人人澡人人爽人人| 中文字幕人妻av第一区| 插入中文字幕在线一区二区三区| 久久久精品人妻一区二区三区| 国产一级特黄性生活大片| 五月天国产成人av免费观看| 久久精品久久电影免费理论片| 午夜在线观看成人av| 国产一区二区黄色激情片| 成人深夜节目在线观看| 久久久精品94久久精品| 一本久道久久综合狠狠躁av| 亚洲顶级裸体av片| 成人免费av在线观看| 无码抽搐高潮喷水流白浆| 久久人人97超碰人人澡爱香蕉| 亚洲国产一区二区在线| 一区二区不卡国产精品| 国产伊人网视频在线观看| 国产免费一区二区三区在线观看| 日韩精品18禁一区二区| 亚洲中文字幕无码爆乳APP| av区无码字幕中文色| 国产精品无码av不卡| 少妇高潮潮喷到猛进猛出小说 | 国产欧美日韩亚洲一区二区三区| 亚洲国产精品高清久久久| 日韩熟女精品一区二区三区| 国产精品自在自线视频| 欧美xxxx精品另类| 人妻一区二区三区三区| 免费观看性行为视频的网站| 国产午夜福利精品视频| 97精品伊人久久久大香线蕉| 激情国产一区二区三区四区|