第三章 問題句分類方法
3.3 分類模型
本論文採用支持向量機器(Support Vector Machine, SVM)建立問題句分類模 型,將使用者提出的問題句分為事實問題句及非事實問題句兩種類別。我們將訓 練資料的問題使用上一小節所提出的方法擷取出兩類問題的代表特徵字,並以一 個問題句是否出現(1 代表是,0 代表否)轉換成一個特徵向量表示,再採用 Chih-Jen Lin 所提供的軟件[23]建立 SVM 分類模型。在預測問題句類別時,同樣將問題句 取出其特徵向量,輸入到訓練好的分類模型,即可得到其預測的分類結果,詳細 的特徵向量建立方法將在 3.3.1 說明。而問題句的分類效果會受到從訓練資料所 擷取出的類別代表特徵字詞影響,詳細的訓練資料蒐集將在 3.3.2 說明。
3.3.1 建立問題特徵向量
令𝐹為已建立好的類別代表特徵字詞集合,對一個問題句 q 經過前處理後所
21
包含的相異字詞,這些字詞所形成的集合以𝑞. 𝑡𝑒𝑟𝑚𝑠表示,若𝑞. 𝑡𝑒𝑟𝑚𝑠包含特徵字 𝑓𝑖 ∈ 𝐹,則𝑞在𝑓𝑖特徵上的特徵值為 1,否則為 0。以圖 4 為例,左圖為代表特徵字 詞集合 F,欲轉換的問題句為“What is author information of The Lord of the Rings?”,則經過轉換成對應的代表特徵字詞向量如圖 5 所示。
圖 4 代表特徵字詞集合
圖 5 代表特徵字詞向量
3.3.2 訓練資料蒐集
問題的分類效果會受到從訓練資料所擷取的問題句分類代表特徵字詞影 響,蒐集到的訓練資料越多,找出的代表特徵字詞將越具有代表性。然而當作訓 練資料的問題若全部需以人工的方式進行分類標示,會花費龐大的人力以及時 間。因此,本論文採用一種漸進式學習(Incremental Learning)的方式,先人工將一 部分的問題句進行分類標示,接著讓電腦學習人工分類的方法,自動將問題句進 行分類後再當作新加入的分類訓練資料,以下將說明漸進式學習分類的步驟,其
方法流程圖如圖 6 所示。
步驟一: 將蒐集的問題句,取一部分以人工的方式將問題句標記為事實問題句 或非事實問題句。
步驟二: 取相同數量的事實問題句和非事實問題句當作初始訓練資料,將這些 問題句擷取出事實問題句以及非事實問題句的代表特徵字詞,並利用 這些代表特徵字詞建立之特徵向量建立分類模型。
步驟三: 取出部分尚未被標記類別的問題句,利用步驟二建立好的分類模型將 問題句進行分類。
步驟四: 本論文採用 SVM Regression 的方式進行分類預測,分類結果將顯示一 個分數,若分數越靠近 1 代表越可能屬於 1 的類別,分數越靠近 0 代 表越可能屬於 0 的類別。在此,類別 1 代表為非事實問題句,類別 0 代表為事實問題句。因此,在此步驟將挑選分類分數前𝑙高分和前𝑙低 分的問題句,將這些問題加入到標記好的問題作為訓練資料。
步驟五: 步驟二至四可重複直到分類正確率達到指定程度以上。
圖 6 漸進式學習問題句分類流程圖
23