中文斷詞與關鍵字詞抽取

找關鍵字詞這件事大概和讀書時劃重點一樣屬於某種特殊技能吧!」

無論是寫正式的論文、商品的文案、說明書、日誌…等等電子化的文字記錄,只要用上「搜尋」的功能,取得關鍵字詞一直是個門檻。懂門道的作法是利用某些演算法,計算出這份文件和其它文件相比之下「最特殊」的那幾個字眼;不懂門道的作法…除了那神秘莫測的一句「憑經驗」以外,大概就只剩下卜卦了。

既然我們的目標是要找出「最特殊的那幾個且代表性的字眼」,那麼需要處理的東西就剩下兩個。一是「夠特殊具代表性」,能讓人一下就回想起這篇文章或是讓機器找到相關文件,二是它的是個「真實的字眼」能讓人輕鬆記憶。

我們將「真實的字眼」定義為「可讀性較高」的詞彙,也就是在句法結點中較高位置的詞組。理論上,結點位置愈高,能傳遞的語意愈完整。在短期記憶的長度限制下,當傳遞的語意愈完整,其可讀性就愈高,也容易被記住。舉例來說:以「紅氣球」做為關鍵字,就遠比用「紅」或「氣球」做為關鍵字的可讀性高。

以下將展示,利用不同的中文斷詞系統來解析文章以後,得到的每個「詞彙」,再以最基本的 TF-IDF 演算法來計算每個詞彙的「特殊性」。最後我們提出「關鍵字的擷取流程中,除了特殊性應該兼顧可讀性」的結論。

讓機器從文件中找出對人類而言「夠真實」的字眼,需要良好的斷詞以及處理未知詞的能力。有良好的斷詞結果,才能避免產生無意義詞彙的問題。比如說把「具代表性」斷成了「具代」和「表性」這兩個無意義的詞彙;有良好的處理未知詞的能力,則有助於後續演算法找出「具代表性」的字眼,做為文件的關鍵字詞。

為了在第一步取得斷詞處理後的「詞彙」,我們先將幾篇新聞文稿,分別利用 Jieba (結巴斷詞)、中研院的 CKIP 斷詞系統以及卓騰開發的 Articut 中文斷詞暨詞性標記引擎進行預處理。

以其中一篇關於「世界地球日」的新聞為例,部份內容如下:『四月二十二日是世界地球日,四百名小朋友昨天在「臺灣小孩愛地球」活動中,分別以國語、閩南語、客語和英語發表「兒童環境宣言」與「兒童十大環境關懷議題」,…。臺北市立木柵動物園、荒野保護協會主辦的「臺灣小孩愛地球」活動,…。昨天在「臺灣小孩愛地球」活動現場,設計了四十多種認識自然與環保的闖關遊戲,包括「我是小小自然觀察家」,讓小朋友用五官來聽一聽、摸一摸、嘗一嘗、聞一聞、看一看,分辨動物的聲音…。

為了尊重原文的版權,我們無法在此呈現全文。但讀者應該都能想像得到,這篇新聞和其它新聞最大的不同,應該是它報導的主題『世界地球日』。

我們將全文分別送進 Jieba、中研院 CKIP 和 Articut 斷詞引擎進行處理以後,再依 TF-IDF 的算法,計算出每個詞彙和全部的文章相比,在這篇文章中所能代表的特殊性的一個值。最後,我們再將「特殊性(tf-idf) x 詞彙長度」取得一個值,並依高到低排序。企圖同時能保有這個詞彙的「特殊性兼顧可讀性」的特色來做為我們選擇「關鍵字」的標準。

最後,我們選擇前 12 個字眼做為我們的「候選關鍵字」,若遇到詞彙內包含數字的話,則略過並由下一個往上遞補。以下是我們取得的結果:

從表格中可以明顯地看出來。由於這則新聞事件是發生在「二十二日」,因此這個詞彙的確是這篇新聞特有的詞彙。除此之外,只有透過 Articut 斷詞結果才計算出「世界地球日」和「環境宣言」這兩個重要具代表性,且可讀性相當高的詞彙。

可讀性通常和未知詞的處理能力相關。雖然三種斷詞方式都找到了「環境」和「宣言」這兩個詞彙,但因為 Articut 會做句法結構上的推理,因此進一步將「環境宣言」視為更能呈現意義的詞彙,而將結合在一起。這麼一來,就產生了比其它斷詞方法的結果「可讀性更高」的結果。

挑出了「世界地球日」和「環境宣言」這兩個詞彙以後,當我們在網頁上要做自動關鍵詞的產生時:

就能更精確地列出能代表這篇文章,且可讀性高的「關鍵字」,並且利用這些關鍵字查找到其它的相關文章,增加使用者在頁面上的停留時間,並且投放最相關的廣告在頁面上增加曝光度。

光是以情緒強烈的字眼 (例如:「嗆」、「怒」)或是企圖以模糊指涉來引起興趣的句型(例如:「原來是用了那種東西!」、「明星說了這句話!」),都沒有定出一個「可讀性高」的關鍵字容易被大腦記住並不斷回想。

要將產品內容「塞」到受眾的大腦裡,當然要配合大腦運作的方式,才能事半功倍。

你的關鍵字抽取策略是什麼?用過於碎片化的資訊技術來斷詞並抽取關鍵字,還是卜卦作法求靈感呢?何不試試用 Articut 再加上 TF-IDF (或是 TextRanking) 就能有不錯的效果了呢。

 

文章來源:Droidtown

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Scroll to Top