網(wǎng)站制作NEWS
拓端tecdat:Python主題建模LDA模型、t-SNE 降維聚類、詞云可視化文本挖掘新聞組數(shù)據(jù)集
本文討論了如何使用Python中的gensim包可視化主題模型(LDA)的輸出與結(jié)果。我們遵循結(jié)構(gòu)化的工作流程,基于潛在狄利克雷分配(LDA)算法構(gòu)建了主題模型,并展示了如何使用matplotlib有效地可視化結(jié)果。
首先,我們使用20個(gè)新聞組數(shù)據(jù)集的一部分,重點(diǎn)在于展示可視化結(jié)果的方法。接下來(lái),我們導(dǎo)入新聞組數(shù)據(jù)集并僅保留4個(gè)類別,隨后標(biāo)記句子并清理,刪除電子郵件、換行符、單引號(hào),使用gensim將句子拆分為單詞列表,并設(shè)置deacc=True選項(xiàng)以刪除標(biāo)點(diǎn)符號(hào)。
我們構(gòu)建了雙字母組、三字母組模型,并使用Phraser加速執(zhí)行。接著,將每個(gè)詞詞形還原為其詞根形式,并僅保留名詞、形容詞、動(dòng)詞和副詞。這一步驟提高了句子含義的準(zhǔn)確性。之后,我們構(gòu)建了主題模型,創(chuàng)建了語(yǔ)料庫(kù)和字典,構(gòu)建了LDA模型并輸出了訓(xùn)練好的主題(關(guān)鍵字和權(quán)重)。
接下來(lái),我們提取每個(gè)句子的主要主題,并在格式良好的輸出中顯示主題和關(guān)鍵字的權(quán)重,以了解哪個(gè)文檔主要屬于哪個(gè)主題。我們還獲取了每個(gè)主題的最典型的句子,并繪制了文檔字?jǐn)?shù)的頻率分布,以及每個(gè)話題的前N個(gè)關(guān)鍵詞詞云,以便直觀地了解每個(gè)主題的關(guān)鍵字。
在處理主題關(guān)鍵詞時(shí),我們繪制了字?jǐn)?shù)與每個(gè)關(guān)鍵字權(quán)重的圖表,以關(guān)注出現(xiàn)在多個(gè)主題中的詞以及相對(duì)頻率大于權(quán)重的詞。我們還根據(jù)給定文檔中的每個(gè)單詞所屬的主題ID對(duì)其進(jìn)行著色,并計(jì)算了歸因于每個(gè)主題的文檔總數(shù)。最后,我們使用t-SNE算法在2D空間中可視化文檔集群,并使用pyLDAVis進(jìn)行交互式可視化。
本文通過(guò)從頭開始導(dǎo)入、清理和處理新聞組數(shù)據(jù)集構(gòu)建LDA模型,展示了多種可視化主題模型輸出的方法,包括詞云、t-SNE聚類和pyLDAVis,這些方法幫助我們更好地理解和分析大數(shù)據(jù)中的信息。
多重隨機(jī)標(biāo)簽