李安
(陜西省西安中學,陜西西安,710000)
在機器學習領域,對分類模型的研究具有重要的意義。集成學習作為一種能夠有效提高分類模型性能的方法也被廣泛使用。集成學習分為兩種類型,包括同質集成學習與異質集成學習,目前在實際應用中,大多數采用同質集成學習,包括sklearn等主流的機器學習框架,都實現了同質集成學習。因此,對于異質集成學習進行探索就有了重要意義。
娛樂文章按體裁能分成七類:資訊熱點,電影電視劇報道評論,人物深扒,組圖盤點,明星寫真,行業報道,機場圖。本文依據娛樂新聞分類這一具體問題,通過對不同模型的綜合分析,探究異質集成學習的方法,將文章進行多分類。
娛樂新聞的數據集特征由分詞和去停用詞以及TF-IDF處理后的4700維構成。
1.2.1 去停用詞
由于并不是每一個詞都能表征這篇文章的內容,如果保留,輸入特征會很大,影響訓練效果,因此有一些形如“這樣”“1.2.3.4”的詞就應該被刪除掉,可以從網絡上尋找一份中文的停用詞表作為參考。將文章中的詞與停用詞表中的詞作比較,如果在表中出現該詞,就將其刪除,如果沒有出現,就跳過。
1.2.2 分詞
文本分詞是文檔處理中的一個不可或缺的操作,因為之后的操作需要用文章中的詞語來代表這篇文章的主要內容的概括。本文中對文章進行分詞主要操作步驟如下:構造語料庫詞典和進行文章分詞操作。
目前在nlp領域用來構造詞典的主要方法是字典樹。對于分詞,主要采用的有正反雙向最大匹配以及nlp語言模型和最短路徑等相關的算法。
對于我們的問題而言,我們使用的是jieba分詞庫。
1.2.3 tf-IDF
tf-IDF指標是一種基于概率論的統計學方法,用于評估一篇文章中的某一字詞的對于一個語料庫中的文件集合中的其中一個文件的重要程度,詞語的重要程度和其在一篇文章中出現的次數是正比關系,但是和其在文件集合中出現的次數成反比關系。通俗地說,就是一個詞在某篇文章中出現的次數越高,而在這一堆文章中的其他文章中出現越少,它就更能表征這篇文章的內容。
詞頻(TF)指的是一個給定的詞語在某篇文章中出現的次數,為了防止文章過長導致頻率偏向長文章,這個指標一般會采用某種方式進行歸一化操作(常常用出現的頻數/文檔總詞數)。
Tf-IDF指標的計算方法是由語料庫中文檔的總數除上出現該詞語的文檔數,將結果再取對數,TF·IDF=TF*IDF。
為了簡化計算,針對數據集,做出每4700詞劃分一次的調整,長度大于4700的進行切分,小于4700的進行填充。
將9000篇文章中,30%劃分為訓練集,70%劃分為測試集。
2.1.1 基本原理
樸素貝葉斯是經典的機器學習算法之一,通過考慮特征概率來預測分類,是為數不多的基于概率統計學的分類算法。
樸素貝葉斯的核心是貝葉斯定理,而貝葉斯定理的公式本質上是條件概率。
貝葉斯法則如下:

這里的C表示類別,輸入待判斷數據,式子給出要求解的某一類的概率。我們的最終目的是比較各類別的概率值大小,而上面式子的分母是不變的,因此只要計算分子即可。
2.1.2 算法效果
運用樸素貝葉斯模型進行預測,在訓練集上達到了71.59%的準確率,在測試集上達到了69.89%的準確率,如圖1所示。

圖1
2.2.1 logistic原理
Logistic模型是人工智能中的一種被廣泛使用的分類模型,對于一般的分類問題而言,具有良好的性能。Logistic模型使用S函數作為我們的預測函數,去估計概率P(y | x)的大小。如果P大于0.5,我們則認為屬于“1”類別,否則屬于“0”類別。在娛樂新聞分類問題中,S函數的輸出就是屬于每一類娛樂新聞的幾率值,大小取值在0到1之間。Logistic模型在訓練階段,通過隨機梯度下降法SGD去不斷的最小化預測函數在訓練集娛樂新聞上的誤差,來提高模型的泛化能力。為了避免模型陷入過擬合,在代價函數上采用相應的正則化手段,可以緩解模型的過擬合程度。
2.2.2 logistic的假設函數
假設函數采用sigmoid函數,函數形式為如2-1式,取值范圍為[0,1]。代表了測試樣本新聞屬于某一類的概率。其中z = θTxX,θ是模型需要學習的參數,X在該問題中對應每篇文章的特征向量。即z是一篇新聞所有特征的線性組合。

2.2.3 邏輯回歸的loss function
Loss function又稱為代價函數、損失函數,是我們將機器數學問題抽象成數學問題后所對應的優化目標,主要用來評價模型的好壞,在訓練集上的預測誤差越小,loss function就越小,在訓練集上的誤差越大,則loss funciton也就越大。機器學習的訓練過程,本質上就是通過SGD等優化算法來不斷的更新模型權重,從而不斷的減小模型的預測誤差。
機器學習中比較常見的loss funciton有均方誤差和cross entropy誤差。均方誤差一般用于regression問題中,cross entropy一般用在classi fi caton問題中。對于娛樂新聞分類問題而言,其是一個分類問題,因此我們采用了cross entropyloss function。cross entropyloss function的公式如2.2式。公式中的g(θ)代表了邏輯回歸函數的輸出,log代表以10為底的對數,yi代表樣本的真實分布。

2.2.4 logistic模型存在的問題
從數學優化上來講,模型每次更新權重時,loss function都可以有一定的降低,在降低到很小的某一個值后,在其附近波動。但是loss function過低的風險是模型會過擬合。模型過擬合后,雖然模型在訓練集上的誤差很小,但是在測試集上的誤差將會非常大[2],無法得到良好的預測性能。
2.2.5 邏輯回歸的正則化
為了解決上述提到的模型可能陷入過擬合的問題,需要采取一定的措施。在機器學習中,我們可以通過增加訓練集樣本的數目去緩解過擬合,但是通常增加訓練集數目的成本過高,因此可以使用另外一種常見的手段-正則化。正則化一般有L1正則,L2正則。在我們的問題中采用L2正則化,加入正則化項的代價函數如2.3式,其中C為正則化參數。

2.2.6 結果分析
通過在訓練的過程中加入的L2正則化項,我們的模型基本沒有發生過擬合,在訓練集上達到了80.32%的準確率,在測試集上達到了74.31%的準確率,如圖2所示。

圖2
邏輯回歸的優點是在于簡單,訓練速度較快。但是其一般更適合用于線性可分的問題當中,而對于一些線性不可分的問題中,采用更復雜的非線性模型可能會取得更好的效果。
機器學習中的分類模型在訓練結束后,我們希望訓練出一個在各種指標下的表現都十分良好的模型,但是真實的情況往往不是如此,一個模型在某些評價指標上表現良好,在另外的評價指標上的表現可能就很差。通常我們只能得到在某幾個指標下表現良好的多個單一的分類模型。Ensemble learing的主要思想就是將多個單一的分類模型的結果綜合起來考慮,來獲得最后的分類結果。在這種情況下,模型對某幾個模型產生的錯誤就會具有一定的容錯性。
因此,從Ensemble learing的學習思想我們可以把集成學習分為兩個主要的步驟,第一步是獲得多個在某些指標上表現良好的單一分類器,第二步是采用某種算法將這些單一分類器的預測結果綜合起來考慮,獲得最后的預測結果。
Ensemble learing通常包含兩種方式,同質集成學習和異質集成學習。同質集成學習是指只使用一個模型,但是在該模型下選取不同的超參數,從而獲得不同的個體分類器。異質集成學習是指使用不同的模型,把不同模型的結果綜合起來,得到最后的預測結果,比如就一個基本分類問題而言,我們可以采用決策樹模型、SVM模型、logistic模型獲得不同的預測結果,再將結果綜合起來,得到最終的預測模型。
在現在的人工智能領域,通常使用基于決策樹的同質集成學習。一般情況下,在無特殊說明時,我們都是指的這種集成方式。在這種學習方式中,個體分類器通常使用決策樹模型。不同的決策樹模型即可以通過bagging的方式來并行得到,也可以通過boosting的方式來串行得到。bagging方式每種分類器之間相互獨立,boosting方式每種分類器之間相互依賴。
在我們的娛樂新聞分類問題中,我們采用基于boosting的方式來實現我們的分類算法。
LightGBM是一個基于GBDT樹的機器學習框架,Boosting算法通過使用一個疊加型的函數模型,選取某種函數作為優化目標,逐步優化,得到最后結果。
運用lightGBM模型模型進行預測,在訓練集上達到了78.50%的準確率,在測試集上達到了73.34%的準確率,如圖3所示。

圖3
在上述三個模型的預測基礎上采用投票的方法進行集成,在測試集上達到了75.19%的準確率,如圖4所示。

圖4
本項目根據具體的娛樂新聞分類數據,在該數據上分別采用了樸素貝葉斯算法,邏輯回歸算法,LightGBM算法。在測試集上分別取得了69.89%,74.31%,73.34%的準確率。證明了在采用了基于boosting的集成后,提高了在測試集上的準確率,相比單獨使用一個分類器而言,表現出了集成算法的優點。