使用textfeatures自動生成文本數據

點擊上方關注,All in AI中國

許多Kaggle比賽獲勝者和數據科學家強調的一件事可以讓你在競賽中排在榜首的是“特徵工程”。無論您的模型有多複雜,優秀的功能將始終比其他功能更好地幫助您的機器學習模型構建過程。

使用textfeatures自動生成文本數據

什麼是特徵工程?

特徵只是列/維度,特徵工程是基於域知識或統計原則創建新功能或預測器的過程。特徵工程一直伴隨著機器學習,但最新的自動化特徵工程已成為最近的事情研究人員開始使用機器學習本身來創建有助於模型準確性的新功能。雖然大多數自動化特徵工程都處理數字數據,但文本數據由於其固有的非結構化特性,在這場競賽中一直被忽略。

textfeatures - R包

密蘇里大學的助理教授Michael Kearney在現代推特軟件包rtweet的R社區中享有盛名,他提出了一個名為textfeatures的新R套件,它會為您提供的任何文本數據都生成一系列功能。在您夢想基於深度學習的自動文本特徵工程包之前,不是這樣。這使用非常簡單的文本分析原則,並生成大寫字母數,標點數等特徵,東西簡單,沒什麼花哨但非常有用。

安裝

使用textfeatures自動生成文本數據

textfeatures可以直接從CRAN安裝,開發版本可以在github上獲得。

用例

在這篇文章中,我們將使用textfeatures包為來自英國的Fifa官方世界盃ios應用程序評論生成功能。我們將打包itunesr以提取評論和tidyverse,用於數據操作和繪圖。

加載所需的包:

讓我們加載所有必需的包。

使用textfeatures自動生成文本數據

提取最近的評論:

使用textfeatures自動生成文本數據

textfeatures 魔法開始:

使用textfeatures自動生成文本數據

正如我們得到的評論,讓我們允許textfeatures發揮其魔力。 我們將使用函數textfeatures()來做到這一點。

如上所示,textfeatures創建了17個新功能。 請注意,對於任何文本數據,這些功能都將保持不變。

可視化結果:

對於這篇文章,我們不會建立機器學習模型,但這些功能可以很好地用於構建分類模型,如情感分類或類別分類。

但是現在,我們將通過一些功能可視化結果。

我們可以看到,在評論評級方面,每個單詞的字符數和字符數之間是否存在任何關係。 一個假設可能是,給予良好評級的人不會寫很長或其他。 我們不會在這裡驗證它,而只是使用散點圖進行可視化。

使用textfeatures自動生成文本數據

給出以下圖:

使用textfeatures自動生成文本數據

讓我們用不同的情節給同一個假設帶來不同的視角,但是要用不同的情節,而不是大量的文字。

使用textfeatures自動生成文本數據

得到下圖:

使用textfeatures自動生成文本數據

因此,您可以使用textfeatures自動生成新功能並更好地理解文本數據。 希望這篇文章可以幫助您開始使用包。 這裡使用的完整代碼可以在github上找到。(https://github.com/amrrs/blogpost_codes/blob/master/textfeatures_demo.R)

使用textfeatures自動生成文本數據


分享到:


相關文章: