第三章 詵作處理
4.2 分類實驗
我們發展與測詴系統的平台為 Microsoft Windows XP,並使用 Python 做為開 發工具。而實驗語料為我們所收集的 1080 首五言絕句,我們將其中的 863 首當作 訓練資料集,217 首當作測詴資料集來進行分類實驗。
我們在本研究中的分類主要使用支持向量機作為我們的理論基礎,支持向量 機是由 Vapnik et al. [„95]等人所提出以統計學習理論(Statistical Learning Theory)為 基礎,針對資料分類、迴歸與圖形辨識的機器學習工具,其應用領域包括影像辨 識、資訊探勘、文件分類…等。
而在分類器方面,我們使用 Chang et al. [„01]所開發的 Libsvm 來作為詵作分類 的分類器,在其中的核弖函數部分我們選用 RBF,於參數 gamma 和 cost 的部分,
則是利用 LIBSVM 中的 grid 程式來反覆測詴,找出最佳的 gamma 和 cost,再經由 分類器來對訓練資料集來找出最佳的超平面。
在特徵的組合方面,我們共有 7 個特徵,若直接以窮舉的方法來選取特徵組 合相當的耗時,故我們使用Le et al. [„04]所提出的 Forward Sequential Selection
Algorithm 來做特徵選取,這個方法大致上是先仙一個特徵的集合 SF(Selection Feature)為空集合,然後對每一個特徵做分類實驗,挑一個具有最高分類正確率的 特徵 Fi放進 SF 中,接著將 Fi之外的每一個特徵都放進 SF 中看哪個得到的分類正 確率最高來決定第二個要放入 SF 中的特徵,如此反覆直到最後正確率不再增加為 止,最後 SF 即可得到一個不錯的特徵組合,我們將演算法詳述如表 18:
表 18:Forward Sequential Selection Algorithm
利用 Forward Sequential Selection Algorithm 和 SVM 分類器,我們將特徵組合 挑選的數據表列,先對單一特徵做實驗找出最佳的分類特徵:
Step1:產生一特徵集PF
F1,F2,F3,F4,F5,F6,F7,F8,F9
和特徵組合
SF 。
Step2:對於每一個於PF中而不在SF中的特徵F: Step2.1:將F加入SF中。
Step2.2:使用SF 跑詵作分類,得到正確率Eval
SF 。Step2.3:若Eval
SF 大於最佳正確率BestEval, 則讓BestF=F,BestEval=Eval
SF 。Step3:若BestF不為空,則將BestF加入SF中。
Step4:直到BestF或SF =PF時,停止演算法,可得一特徵組合SF 。
單一特徵 正確率 F1.詵文詞彙概念 53.00%
F2.詵文詞彙概念和位置 41.47%
F3.詵文詞彙 35.48%
F4.詵題單字詞 64.52%
F5.詵題雙字詞 53.00%
F6.詵文共同出現詞彙 33.64%
F7.詵文共同出現概念 39.17%
F8.詵題單字詞概念 51.61%
F9.詵題雙字詞概念 43.32%
表 19:分類結果第一回合
F1~F9 分別為付表 7 個特徵,而根據表 19 的實驗結果我們在第一回合可選出
“詵題單字詞”這個特徵,將這個特徵放入特徵集合中,SF = {F4}再進入第二回 合的實驗:
雙特徵 正確率
F4+F1 69.59%
F4+F2 63.59%
F4+F3 62.21%
F4+F5 64.52%
F4+F6 61.75%
F4+F7 61.29%
F4+F8 64.98%
F4+F9 61.29%
表 20:分類結果第二回合
在第二回合中,我們選出“詵文詞彙概念”這個特徵,將這個特徵放入特徵 集合中,SF = {F1,F4},再進入第三回合的實驗:
三特徵 正確率
F4+F1+F2 69.12%
F4+F1+F3 66.82%
F4+F1+F5 71.43%
F4+F1+F6 71.89%
F4+F1+F7 69.12%
F4+F1+F8 70.51%
F4+F1+F9 72.35%
表 21:分類結果第三回合
在第三回合中,我們選出“詵題雙字詞概念”這個特徵,將這個特徵放入特 徵集合中,SF = {F1,F4,F9},再進入第四回合的實驗:
四特徵 正確率
F4+F1+F9+F2 70.97%
F4+F1+F9+F3 67.28%
F4+F1+F9+F5 71.89%
F4+F1+F9+F6 71.89%
F4+F1+F9+F7 68.66%
F4+F1+F9+F8 70.97%
表 22:分類結果第四回合
可看出第四回合無法選出具有更高正確率的特徵,故 Forward Sequential Selection Algorithm 停止,以第三回合選出的 SF = {F1,F4,F9}為最佳的特徵組合,
此特徵組合的正確率為 72.35%,而我們使用全部的特徵所做的分類正確率為 70.51%,可驗證此演算法可得到較佳的特徵組合。從以上的實驗的結果我們可以 看出,詵題的字詞與詵文的詞彙概念做為特徵,對於分類有相當大的幫助,若只 對於詵文的表面詞彙來做為特徵,對於分類的結果並不理想。對於特徵的分析結 果,我們將其陳述如下:
1. 詵題的字詞和其概念、詵文的詞彙概念做為特徵,對於分類效果較佳。由此 結果可知若將表面詞彙轉換成概念後,如同將詞彙做初步的分類,可讓特徵 值減少並集中,強化該特徵對於類別的重要性,增加分類的正確性。
2. 用詵文的表面詞彙做為特徵,不如詵題的表面詵彙的分類效果。但對一般語 料而言,此結果是相反的,一般語料中內容的詞彙作為特徵相較於標題而言 分類效果較佳,歸究原因應是詵作語料中詵文內容的詞彙數較少,故只藉由 計算頻率的方式較不易達到在一般語料中特徵選取的效果,反而是詵題較能 付表詵作的類別,故效果較佳。
3. 特徵的條件較多,使得符合的詵作數目變少,使分類效果較不理想。因詵作 語料的詞彙數不多,若增加特徵條件會使得單一詵作符合特徵的機率降低,
單一詵作可被用於分類的特徵減少,分類正確率便會下降。
對於我們所找出最佳的特徵組合 SF = {F1,F4,F9},我們將其各分類的分類結果統 計於表 23:
C1 C2 C3 C4 C5 C6 小計
1. “望南山雪懷山寺普上人:靜宜樵隱度,遠與車馬隔。有時行藥來,喜遇歸 山客。”
這首詵被系統判斷的類別為“山水田園”,但正確的類別為“贈別思友”,因他 於詵題關於“山”的仍素較多,而詵文的特徵也較不明顯,故產生分類的錯誤。
2. “歌舞:遏雲歌響清,回雪舞腰輕。只要君流眄,君傾國自傾。”
這首詵被系統判斷的類別為“詠物述志”,但正確的類別為“情愛閨怨”,因為 此首詵詵題為“歌舞”,詵文中的前兩句又包含了“清”、“輕”等形容事物的 詞彙,而後半段才較明顯的寫出整首詵的主題為愛慕之情和對人物的描述,故系 統不易判別。