第三章 問題句分類方法
3.2 特徵擷取
為了挑選出兩類別的代表字詞作為特徵字詞,首先分別蒐集屬於兩類別的問 題句,以𝑄𝑓表示所有蒐集的事實問題句集合,若總共取 n 個事實問題句,每個事 實問題句以𝑞𝑓_𝑖表示(i=1,2,…,n),則𝑄𝑓={𝑞𝑓_1, 𝑞𝑓_2,…, 𝑞𝑓_𝑛},以𝑄𝑛𝑓表示所有蒐 集的非事實問題集合,若總共取 n 個非事實問題句,每個非事實問題句以𝑞𝑛𝑓_𝑖表 示(i=1,2,…,n),則𝑄𝑛𝑓={𝑞𝑛𝑓_1, 𝑞𝑛𝑓_2,…, 𝑞𝑛𝑓_𝑛}。接著將兩類別問題集合內的問題 經 過 問 題 前 處 理 後 , 共 可 以 得 到 m 個 相 異 的 字 詞 , 每 個 字 詞 以𝑤𝑗表 示 (j=1,2,…,m)。對字詞𝑤𝑗分別計算在𝑄𝑓中的出現頻率,以及在𝑄𝑛𝑓中的出現頻率,
一般來說,若字詞𝑤𝑗出現頻率有達到一定程度時,則代表字詞𝑤𝑗在此類別中具有 一定程度的重要性。令字詞𝑤𝑗在𝑄𝑓中的出現機率以𝑃𝑓(𝑤𝑗)表示,計算方式如公式 一所示,其中𝑤𝑗 ∈ 𝑞𝑓_𝑖表示𝑤𝑗在問題句𝑞𝑓_𝑖有出現。字詞𝑤𝑗在𝑄𝑛𝑓中的出現機率以 𝑃𝑛𝑓(𝑤𝑗)表示,計算方式如公式二所示,其中𝑤𝑗 ∈ 𝑞𝑛𝑓_𝑖表示𝑤𝑗在問題句𝑞𝑛𝑓_𝑖有出 現。
17
𝑃𝑓(𝑤𝑗) =
|{𝑞
𝑓_𝑖|𝑞
𝑓_𝑖∈𝑄
𝑓⋀ 𝑤
𝑗∈𝑞
𝑓_𝑖}|
|𝑄
𝑓|
(公式一)𝑃𝑛𝑓(𝑤𝑗) =
|{𝑞
𝑛𝑓_𝑖|𝑞
𝑛𝑓_𝑖∈𝑄
𝑛𝑓⋀ 𝑤
𝑗∈𝑞
𝑛𝑓_𝑖}|
|𝑄
𝑛𝑓|
(公式二)【範例 3-1】挑選各類別重要字詞之範例
假設蒐集的事實問題句集合及非事實問題句集合經前處理後,如表 2 所示。
透過公式一及公式二計算所有字詞分別在兩類別中的出現機率,計算結果如表 3 所示。假設字詞𝑤𝑗在其中一類別出現的機率大於 0.6,代表𝑤𝑗為此類別的重要字 詞 , 根 據 結 果 顯 示 , 對 於 類 別 為 事 實 問 題 句 較 為 重 要 的 字 詞 有 {What, is, information, of, character},類別為非事實問題句較為重要的字詞有{What, is, of, your, opinion}。
表 2 事實問題句及非事實問題句集合 問題句所屬集合 問題句的內容
𝑄𝑓 What is movie information of Inception 𝑄𝑓 What is character information of Twilight 𝑄𝑓 What is character information of Harry Potter 𝑄𝑛𝑓 What is your honest opinion of Inception 𝑄𝑛𝑓 What is your opinion of Twilight
𝑄𝑛𝑓 What is your impression of movie Harry Potter
表 3 範例 3-1 與 3-2 計算結果
範例 3-1 範例 3-2
𝒘𝒋 𝑷𝒇(𝒘𝒋) 𝑷𝒏𝒇(𝒘𝒋) 𝑲𝑳𝒇(𝒘𝒋) 𝑲𝑳𝒏𝒇(𝒘𝒋)
What 1 1 0.00 0.00
is 1 1 0.00 0.00
movie 0.33 0.33 0.00 0.00
information 1 0 2.02 -0.02
of 1 1 0.00 0.00
Inception 0.33 0.33 0.00 0.00 character 0.67 0 1.25 -0.02
Twilight 0.33 0.33 0.00 0.00 Harry 0.33 0.33 0.00 0.00 Potter 0.33 0.33 0.00 0.00
your 0 1 -0.02 2.02
honest 0 0.33 -0.02 0.52
opinion 0 0.67 -0.02 1.25 impression 0 0.33 -0.02 0.52
19
在這個範例中我們可以發現,若挑選在各類別中出現機率值較高重要的字詞 作為代表字詞時,可能發生字詞𝑤𝑗同時被挑選為事實問題句及非事實問題句重要 字詞的情況。此情況代表字詞𝑤𝑗並沒有足夠的類別代表性,或是字詞𝑤𝑗事實上並 沒有實質的語意,通常為句子中的冠詞、介系詞或助詞等。為了改善上述情況,
除了考慮字詞𝑤𝑗在單一類別中出現的機率,同時相對考慮字詞𝑤𝑗在另一個類別出 現的機率是否有一定的差異。因此本論文透過 Kullback–Leibler divergence(以下簡 稱 KL divergence)的計算挑選各類別中具代表特徵的字詞。
KL divergence 是用來比較兩個機率分布的差異程度,常用在資料檢索領域,
當文字出現的機率分佈差異值越大,則代表兩個文件集合的內容差異越大,反之 則代表兩個文件集合的內容十分相似。因此我們利用 KL divergence 的概念,計算 一個字詞𝑤𝑗在兩個類別間的出現機率差異程度,當字詞𝑤𝑗在𝑄𝑓中的出現機率大,
並且相對於在𝑄𝑛𝑓中的出現機率差異比例大,則這樣的字詞𝑤𝑗為𝑄𝑓中較具代表性 的字詞。將一個字詞在𝑄𝑓中的代表分數以𝐾𝐿𝑓(𝑤𝑗)表示,計算方式如公式三所示。
反之,亦可算出一個字詞在𝑄𝑛𝑓中的代表分數,以𝐾𝐿𝑛𝑓(𝑤𝑗)表示,計算方式如公 式四所示。在公式三及公式四中為了避免分子出現 0 的情況,因此對於字詞𝑤𝑗在 𝑄𝑓中的出現機率和在𝑄𝑛𝑓中的出現機率同時加上常數 c。
𝐾𝐿𝑓(𝑤𝑗) = (𝑃𝑓(𝑤𝑗) + 𝑐)log
𝑃
𝑓(𝑤
𝑗)+𝑐
𝑃
𝑛𝑓(𝑤
𝑗)+𝑐
(公式三)𝐾𝐿𝑛𝑓(𝑤𝑗) = (𝑃𝑛_𝑓(𝑤𝑗) + 𝑐)log
𝑃
𝑛𝑓(𝑤
𝑗)+𝑐
𝑃
𝑓(𝑤
𝑗)+𝑐
(公式四)【範例 3-2】挑選各類別代表字詞之範例
以範例 3-1 為例,假設 c 為 0.01,若字詞𝑤𝑗在𝑄𝑓中的出現機率𝑃𝑓(𝑤𝑗)大於 0.6,
且透過公式三計算字詞𝑤𝑗在𝑄𝑓中的代表分數𝐾𝐿𝑓(𝑤𝑗)大於 0.8,則表示字詞𝑤𝑗為事 實問題句具有代表特徵的字詞。同樣可計算字詞是否為非事實問題句的代表特徵 字詞計算結果如表 3 所示。根據結果顯示,在範例 3-1 中同時被挑選為事實問題 句及非事實問題句的重要字詞{What, is ,of},所算出 KL 值並沒有大於一定程度,
因此並不會被挑選為代表字詞。最後,找出事實問題句的代表字詞有{information, character},非事實問題句的代表字詞有{your, opinion}。