接着上文【基於統計的無詞典的高頻詞抽取(一)——后綴數組字典序排序】,本文主要講解高頻子串抽取部分。 如果看過上一篇文章的朋友都知道,我們通過 快排 或 基數排序算出了存儲后綴數組字典序的PAT數組,以及PAT數組內,每每兩個子串的最大公共前綴數組LCP。 我們可以通過LCP來計算出一個字 ...
由於最近換了工作,需要熟悉新的工作環境,工作內容也比較多,所以一直沒有更新文章,趁着今晚有空,就繼續寫寫這系列的文章。 前面兩篇,我們已經實現了后綴數組的排序,高頻字串的抽取,也初有成效,如下圖: 接下來,我們就繼續對結果進行進一步的精確化,使用子串歸並來實現: 首先,我先舉一個可能不大適合的例子來大概解釋一下什么叫做子串歸並。假設,某個語料庫中,統計到 你 出現了 次,而 你好 也剛好出現了 次 ...
2013-07-08 23:54 5 1660 推薦指數:
接着上文【基於統計的無詞典的高頻詞抽取(一)——后綴數組字典序排序】,本文主要講解高頻子串抽取部分。 如果看過上一篇文章的朋友都知道,我們通過 快排 或 基數排序算出了存儲后綴數組字典序的PAT數組,以及PAT數組內,每每兩個子串的最大公共前綴數組LCP。 我們可以通過LCP來計算出一個字 ...
中文全文檢索中很重要的一個環節就是分詞,而一般分詞都是基於字典的,特別是對於特定的業務,需要從特定的語料庫中抽出高頻有意義的詞來生成字典。這系列文章,就一步一步來實現一個從大規模語料庫正抽取出高頻詞的程序。 抽詞的過程如下圖: 本文先講解“子串字典序排序”部分,也就是字典序排序部分。本文 ...
...
高頻詞提取(TF,Term Frequency),高頻詞指在文檔中出現頻率較高並且有用的詞。 所以我們要做的工作有:加載數據,去除停用詞,用字典統計高頻詞,輸出top10的高頻詞。 運行結果如下: 這個代碼需注意的地方有:將新聞復制粘貼到txt文件中注意需用utf8編碼 ...
題目描述 有一個 1GB 大小的文件,文件里每一行是一個詞,每個詞的大小不超過 16B,內存大小限制是 1MB,要求返回頻數最高的 100 個詞(Top 100)。 解答思路 由於內存限制,我們依然無法直接將大文件的所有詞一次讀到內存中。因此,同樣可以采用分治策略,把一個大文件分解成 ...
題目描述: 有一個 1GB 大小的文件,文件里面每一行是一個詞,每個詞的大小不超過 16B,內存大小限制是 1MB,要求返回頻數最高的 100 個詞。 分析與解答: 由於文件大小為 1GB,而內存大小只有 1MB,因此不可能一次把所有的詞讀入到內存中處理,需要采用分治的方法,把一個大的文件 ...
Given a non-empty list of words, return the k most frequent elements. Your answer should be ...