這款NLP神器火了!關(guān)鍵詞提取、結(jié)果可視化,從小白進(jìn)階大神
快速優(yōu)雅地處理NLP數(shù)據(jù)集
蕭簫 發(fā)自 凹非寺
量子位 報(bào)道 | 公眾號(hào) QbitAI
如何快速優(yōu)雅地處理你的NLP數(shù)據(jù)集?
試試這款號(hào)稱「從小白到大神」的Texthero的工具包。
不僅編寫快速簡(jiǎn)單,而且功能全面,預(yù)處理、表征、可視化樣樣精通,在Reddit上17個(gè)小時(shí)內(nèi)就獲得了近1.1k的熱度。
連剛脫機(jī)的NLP程序猿看了都想與數(shù)據(jù)集再戰(zhàn)幾回:
下面是Texthero的使用效果。
△?優(yōu)雅美觀的NLP數(shù)據(jù)處理效果
事實(shí)上,Texthero的優(yōu)雅絕不僅僅在于友好的上手度,最關(guān)鍵的是,它省略了大量重復(fù)性代碼編寫工作。
只需要幾行代碼,Texthero就能幫你完成想要的數(shù)據(jù)預(yù)處理、表征、可視化等操作,極大程度上解放了你的雙手。
來(lái)看看Texthero進(jìn)行數(shù)據(jù)預(yù)處理、各種算法后的可視化效果。
效果展示
首先,進(jìn)行文本清理,然后采用TF-IDF算法進(jìn)行特征表示,并對(duì)此可視化:
PCA降維后的效果duangduang的:
△?進(jìn)行文本清理和TF-IDF表征后的可視化效果
這不是你想要的?
那么,除了預(yù)處理和表征外,試試加上K均值聚類算法,并進(jìn)行可視化:
效果如下:
△?進(jìn)行預(yù)處理、表征和K均值聚類算法后的數(shù)據(jù)效果
經(jīng)過(guò)K均值聚類算法處理后的結(jié)果一目了然。
不僅運(yùn)行快,加載代碼后,結(jié)果會(huì)生成在在同一個(gè)界面上,整體邏輯流程顯得非常明了。
△?使用效果
從展示效果來(lái)看,Texthero只需要編寫少量代碼,就能得到你想要的結(jié)果,為數(shù)據(jù)處理省去了不少時(shí)間。
事實(shí)上,只要掌握基本使用邏輯,萌新也能快速上手這款NLP數(shù)據(jù)處理神器。
使用指南
pip一下texthero后(或從GitHub上直接下載工具包,文末附代碼鏈接),采用import導(dǎo)入它和pandas:
之后,加載你需要處理的文本信息數(shù)據(jù)集(這里采用了BBC sport數(shù)據(jù)庫(kù)舉例):
然后就可以開(kāi)始使用了:
預(yù)處理
如果需要進(jìn)行快速的數(shù)據(jù)預(yù)處理操作,直接使用「文本清理」就行:
當(dāng)然,如果你需要對(duì)文本信息進(jìn)行更細(xì)節(jié)的處理操作,例如將所有標(biāo)點(diǎn)符號(hào)替換成空格、或者刪除<>中的所有內(nèi)容,Texthero也提供了非常完備的工具包,以供使用。
△?光是預(yù)處理欄目就有這么多工具
再也不用編寫一大堆代碼,專門清理文本中的冗余數(shù)據(jù)了。
表征
同樣,如果需要進(jìn)行TF-IDF算法特征表示的話,同樣只需要幾行代碼就能實(shí)現(xiàn):
一鍵出結(jié)果:
如果需要更多的算法,這里也有meanshift、NMF等算法可以選用,每種算法基本都集成在一行代碼中,你想要的這里都有。
可視化
而在可視化方向上,Texthero同樣展現(xiàn)出了強(qiáng)大的能力,這里以PCA降維后的結(jié)果進(jìn)行展示:
可視化效果非常清晰:
同樣,可視化也可以自定義顏色、結(jié)果展示維度等,只需要一點(diǎn)Python的知識(shí)就能快速使用。
這么方便的NLP數(shù)據(jù)處理工具包,趕緊用起來(lái)~
傳送門
代碼鏈接:
https://github.com/jbesomi/texthero
項(xiàng)目鏈接:
https://texthero.org/