基于文本分析算法實現(xiàn)新聞分類
本文為您介紹如何通過PAI提供的文本類組件,快速構(gòu)建文本分類模型。
背景信息
新聞分類是文本挖掘領(lǐng)域較為常見的場景。很多媒體或內(nèi)容生產(chǎn)商對于新聞文本的分類通常采用手工標(biāo)注的方式,消耗了大量的人力資源。PAI提供的智能文本挖掘算法可以實現(xiàn)新聞文本分類自動化(包括分詞、詞型轉(zhuǎn)換、停用詞過濾、主題挖掘及聚類等流程)。本工作流首先通過PLDA算法挖掘文章的主題,然后進行主題權(quán)重聚類,從而實現(xiàn)新聞自動分類。
本工作流數(shù)據(jù)為虛構(gòu)數(shù)據(jù),僅用于學(xué)習(xí)。
前提條件
已開通PAI(Designer)并創(chuàng)建了工作空間,詳情請參見開通PAI并創(chuàng)建默認(rèn)工作空間。
已將MaxCompute資源關(guān)聯(lián)到工作空間,詳情請參見管理工作空間。
基于文本分析算法實現(xiàn)新聞分類
進入PAI-Designer頁面。
登錄PAI控制臺。
在左側(cè)導(dǎo)航欄單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應(yīng)工作空間內(nèi)。
在工作空間頁面的左側(cè)導(dǎo)航欄選擇 ,進入Designer頁面。
構(gòu)建工作流。
在PAI-Designer頁面,單擊預(yù)置模板頁簽。
在模板列表的文本分析-新聞分類區(qū)域,單擊創(chuàng)建。
在新建工作流對話框,配置參數(shù)(可以全部使用默認(rèn)參數(shù))。
其中:工作流數(shù)據(jù)存儲配置為OSS Bucket路徑,用于存儲工作流運行中產(chǎn)出的臨時數(shù)據(jù)和模型。
單擊確定。
您需要等待大約十秒鐘,工作流可以創(chuàng)建成功。
在工作流列表,雙擊文本分析-新聞分類工作流,進入工作流。
系統(tǒng)根據(jù)預(yù)置的模板,自動構(gòu)建工作流,如下圖所示。
區(qū)域
描述
①
增加序列號。本工作流的數(shù)據(jù)源以單個新聞為單元,需要增加ID列作為每篇新聞的唯一標(biāo)識,便于算法計算。
②
分詞及詞頻統(tǒng)計。首先使用分詞組件對content字段(新聞內(nèi)容)進行分詞。然后對過濾停用詞后的文本進行詞頻統(tǒng)計。
③
過濾停用詞,通常過濾標(biāo)點符號及對文章影響較小的助語等。
④
挖掘文本主題:
PLDA文本挖掘組件的輸入必須為三元形式,因此使用三元組轉(zhuǎn)kv組件將文本轉(zhuǎn)換為三元形式(文本轉(zhuǎn)換為數(shù)字)。
其中:
append_id:每篇新聞的唯一標(biāo)識。
key_value:冒號前面的數(shù)字表示單詞抽象成的數(shù)字標(biāo)識,冒號后面的數(shù)字表示對應(yīng)的單詞出現(xiàn)頻率。
使用PLDA組件訓(xùn)練模型。
PLDA算法(主題模型)可以定位每篇文章的主題詞語。本工作流配置了50個主題,PLDA組件的第五個輸出樁輸出每篇文章對應(yīng)每個主題的概率。
⑤
結(jié)果分析和評估。通過以上步驟已經(jīng)將文本從主題維度轉(zhuǎn)換成了向量,可以通過向量距離實現(xiàn)聚類,從而實現(xiàn)文本分類。
運行工作流并查看模型效果。
單擊畫布上方的運行。
工作流運行結(jié)束后,右鍵單擊畫布中的K均值聚類,在快捷菜單,單擊 ,即可查看分類結(jié)果。
其中:
cluster_index:表示每一類的名稱。
append_id:每篇新聞的唯一標(biāo)識。
右鍵單擊畫布中的過濾與映射,在快捷菜單,單擊append_id為115、292、248及166的新聞。 ,即可查看
本工作流的新聞分類結(jié)果不夠理想(兩篇體育類、一篇財經(jīng)類及一篇科技類新聞分到了同一類中),主要原因如下:
工作流數(shù)據(jù)量較小。
僅針對業(yè)務(wù)場景介紹文本分析算法的使用方法,未對數(shù)據(jù)集進行特征工程處理及細(xì)節(jié)調(diào)優(yōu)。
因為本工作流模板已為過濾與映射配置了過濾條件,所以您可以直接查看append_id為115、292、248及166的新聞。如果需要查看其它新聞,則可以參見如下示例,將過濾與映射組件的過濾條件配置為相應(yīng)的新聞ID。
append_id=292 or append_id=115 or append_id=248 or append_id=166 ;