在文本挖掘的分詞原理中,我們講到了文本挖掘的預(yù)處理的關(guān)鍵一步:“分詞”,而在做了分詞后,如果我們是做文本分類聚類,則后面關(guān)鍵的特征預(yù)處理步驟有向量化或向量化的特例Hash Trick,本文我們就對向量化和特例Hash Trick預(yù)處理方法做一個總結(jié)。
1. 詞袋模型
在講向量化與Hash Trick之前,我們先說說詞袋模型(Bag of Words,簡稱BoW)。詞袋模型假設(shè)我們不考慮文本中詞與詞之間的上下文關(guān)系,僅僅只考慮所有詞的權(quán)重。而權(quán)重與詞在文本中出現(xiàn)的頻率有關(guān)。
詞袋模型首先會進行分詞,在分詞之后,通過統(tǒng)計每個詞在文本中出現(xiàn)的次數(shù),我們就可以得到該文本基于詞的特征,如果將各個文本樣本的這些詞與對應(yīng)的詞頻放在一起,就是我們常說的向量化。向量化完畢后一般也會使用TF-IDF進行特征的權(quán)重修正,再將特征進行標(biāo)準(zhǔn)化。 再進行一些其他的特征工程后,就可以將數(shù)據(jù)帶入機器學(xué)習(xí)算法進行分類聚類了。
總結(jié)下詞袋模型的三部曲:分詞(tokenizing),統(tǒng)計修訂詞特征值(counting)與標(biāo)準(zhǔn)化(normalizing)。
與詞袋模型非常類似的一個模型是詞集模型(Set of Words,簡稱SoW),和詞袋模型唯一的不同是它僅僅考慮詞是否在文本中出現(xiàn),而不考慮詞頻。也就是一個詞在文本在文本中出現(xiàn)1次和多次特征處理是一樣的。在大多數(shù)時候,我們使用詞袋模型,后面的討論也是以詞袋模型為主。
當(dāng)然,詞袋模型有很大的局限性,因為它僅僅考慮了詞頻,沒有考慮上下文的關(guān)系,因此會丟失一部分文本的語義。但是大多數(shù)時候,如果我們的目的是分類聚類,則詞袋模型表現(xiàn)的很好。