一、基於特徵的方法
可以考慮如下特徵來進行文件摘要的生成,包括:文章標題(比如文章標題中出現的詞具有較高的權重)、段落的位置(比如文章的首段和尾段具有較高的權重)、段落的特定句子(比如段落的首句和第二句具有較高的權重)、句式的型別(比如陳述句具有較高的權重,含有大標點的句子具有較高的權中等)、文章中頻繁出現的詞等。該方法簡單,準確率較高。
在某些場景下,文章沒有清晰的段落,那麼,就只能使用文章標題、句式型別、詞頻三類特徵。下面的演算法就是描述在此場景下如何生成文章摘要的。
第一步:對文章標題進行中文分詞,剔除停用詞和常用詞,生成待選詞表a。
第二步:對文章內容進行中文分詞,剔除停用詞和常用詞,並計算每個詞的權重(權重 = 詞出現的次數 / 全部詞出現次數的和),生成詞頻表b。
第三步:將待選詞表a合併到詞頻表中。如果待選詞表a中的詞t在詞頻表b中存在,則調整詞頻表b中t的權重值為詞頻表b中的最大值;如果待選詞表a中的詞f在詞頻表b中不存在,則不處理。
第四步:使用大標點完成對句子的切分,僅保留陳述句式。
第五步:對每個陳述句進行權重計算
判斷陳述句是否包含了詞頻表b中的詞,
如果包含詞頻表b中的詞,則∑詞權重(將對應詞的詞權重進行加和)。
句子的權重 = 詞權重的和 / 句子的長度
第六步:按照依據句子的權重進行倒敘排序,獲取權重較高的句子。
第七步:按照句子在文章中出現的順序輸入句子即為文件摘要。
二、基於圖排序的方法
基於圖排序的方法主要思路是將文章中的句子作為圖的頂點,如果句子與句子具有相似度,則句子與句子之間則存在邊,邊的權重為句子的相似度。句子與句子的相似度定義為:兩個句子的公共子串的長度 / (兩個句子的長度之和 - 公共子串的長度)。同時將文章的標題也作為乙個句子,作為有向圖的根節點。具體演算法如下:
第一步:分析每個句子,每個句子作為乙個圖的頂點,將句子的標題也作為圖的乙個根頂點。
第二步:兩兩計算句子見的相似度,如果相似度大於0,則將兩個句子之間建立邊,並設定邊的權重為句子的相似度。在文章中先出現的句子作為出頂點,文章中後出現的句子作為入頂點。
第三步:從根定點出發遍歷圖,如果頂點與頂點之間存在邊,則將句子放入候選句中。
第四步:按照句子在文章中出現的順序輸出即為文件摘要。
三、總結
以上給出了兩種中文單文件自動摘要的簡要演算法,具有一定的適用性,哪位高手有這方面的興趣可以一起交流。
coreseek sphinx文件摘要
1.這些都可以用charset type和charset table選項為每個索引單獨配置.charset type指定文件的編碼是單位元組的 sbcs 還是utf 8的。在coreseek中,如果通過charset dictpath設定中文詞典啟動了中文分詞模式後,不僅可以使用utf 8編碼的,還...
TextRank文件摘要
s vi 1 d d j in vj 1out vj s vj s v i 1 d d j in vj 1 out vj s vj 某網頁vi的得分,由兩個部分構成,其中1 d是為防止出現零值,d右邊的部分,是引用該網頁的各網頁vj的投票之和,投票值等於該網頁的打分s vj 除以它的出度,d一般取經...
young技術摘要1
wattsbeta allworldgenerator gen newwattsbeta allworldgenerator 20,0.1,6 graph g graph gen.generategraph jframe jf new jframe visualizationviewer vv ne...