第三章 研究方法
第二節 訓練與測試階段
本節透過一個實例(表 3-1)來說明潛在語意分析訓練及測試階段的運作方式,
包含建立共生矩陣模組、SVD 維度約化模組、矩陣重建模組、cosine 相似度計算 模組。此例子中包含兩個領域(Human-Computer Interface 和 Mathematical Graph Theory)的九篇文件(c1、c2、c3、c4、c5、m1、m2、m3、m4),其中 c1 至 c5 為 Human-Computer Interface 的相關文件,m1 至 m4 為 Mathematical Graph Theory 的相關文件。
表 3-1 有關人機介面與電腦繪圖的文件標題
資料來源:出自(Landauer, 1998) 1. 建立共生矩陣模組
在進行潛在語意分析之前,必須先了解個文章與各個詞彙的相對關係,透過 建立文章與詞彙的共生矩陣,可以清楚的看到每一篇文章中各個詞彙的出現個數 及每個詞彙於不同文章中出現的次數,透過詞彙與文章間的共生關係,建立出共 生矩陣,以利後續作業執行。
Example of text data: Titles of Technical Memos
c1: Human machine interface for ABC computer applications c2: A survey of user opinion of computer system response time c3: The EPS user interface management system
c4: System and human system engineering testing of EPS
c5: Relation of user perceived response time to error measurement m1: The generation of random, binary, ordered trees
m2: The intersection graph of paths in trees
m3: Graph minors IV: Widths of trees and well-quasi-ordering m4: Graph minors: A survey
「the」、「and」等字 Landauer 將這些時常出現但是較沒意義的高頻字列入「stop list」
中,所以在表 3-2 的共生矩陣並沒有看到這些字的出現。表 3-2 中{𝑋}的每一列 代表所有文件中出現兩次以上的關鍵詞,而每一行則代表範例中的每一篇文章,
{𝑋}內每個元素的值則代表該列關鍵詞於該行文章中出現的次數。
表 3-2 利用表 2-1 建立的共生矩陣
{𝑋} =
[
𝑐1 𝑐2 𝑐3 𝑐4 𝑐5 𝑚1 𝑚2 𝑚3 𝑚4 ℎ𝑢𝑚𝑎𝑛 1 0 0 1 0 0 0 0 0 𝑖𝑛𝑡𝑒𝑟𝑓𝑎𝑐𝑒 1 0 1 0 0 0 0 0 0 𝑐𝑜𝑚𝑝𝑢𝑡𝑒𝑟 1 1 0 0 0 0 0 0 0 𝑢𝑠𝑒𝑟 0 1 1 0 1 0 0 0 0 𝑠𝑦𝑠𝑡𝑒𝑚 0 1 1 2 0 0 0 0 0 𝑟𝑒𝑠𝑝𝑜𝑛𝑠𝑒 0 1 0 0 1 0 0 0 0 𝑡𝑖𝑚𝑒𝑠 0 1 0 0 1 0 0 0 0 𝐸𝑃𝑆 0 0 1 1 0 0 0 0 0 𝑠𝑢𝑟𝑣𝑒𝑦 0 1 0 0 0 0 0 0 1 𝑡𝑟𝑒𝑒𝑠 0 0 0 0 0 1 1 1 0 𝑔𝑟𝑎𝑝ℎ 0 0 0 0 0 0 1 1 1 𝑚𝑖𝑛𝑜𝑟𝑠 0 0 0 0 0 0 0 1 1 ] r(ℎ𝑢𝑚𝑎𝑛. 𝑢𝑠𝑒𝑟) = −.38
r(ℎ𝑢𝑚𝑎𝑛. 𝑚𝑖𝑛𝑜𝑟𝑠) = −.29 資料來源:出自(Landauer, 1998)
從表 3-2 的共生矩陣可以清楚的了解各個文章中關鍵字出現的次數,再將此 共生矩陣進行 SVD 維度約化,SVD 維度約化模組之詳細內容於下節敘述。
2. SVD 維度約化模組
共生矩陣僅能表示文件與關鍵字出現的關係,還沒有辦法直接觀察關鍵詞彙 間彼此的語意關係,必須透過奇異值分解及維度約化的方式,才能將詞彙之間背 後的語意擷取出來,以下敘述奇異值分解的結果。將共生矩陣放入奇異值分解的 工具之後可以得到三個矩陣,如表 3-3 所示:
表 3-3 利用 SVD 分解後的三個矩陣 {𝑋} = {𝑊}{𝑆}{𝑃}𝑇
{𝑊} =
[
0.22 −0.11 0.29 −0.41 −0.11 −0.34 0.52 −0.06 −0.41 0.20 −0.07 0.14 −0.55 0.28 0.50 −0.07 −0.01 −0.11 0.24 0.04 −0.16 −0.59 −0.11 −0.52 −0.30 0.06 0.49 0.40 0.06 −0.34 0.10 0.33 0.38 0.00 0.00 0.01 0.64 −0.17 0.36 0.33 −0.16 −0.21 −0.17 0.03 0.27 0.27 0.11 −0.43 0.07 0.08 −0.17 0.28 −0.02 −0.05 0.27 0.11 −0.43 0.07 0.08 −0.17 0.28 −0.02 −0.05 0.30 −0.14 0.33 0.19 0.11 0.27 0.03 −0.02 −0.17 0.21 0.27 −0.18 −0.03 −0.54 0.08 −0.47 −0.04 −0.58 0.01 0.49 0.23 0.03 0.59 −0.39 −0.29 0.25 −0.23 0.04 0.62 0.22 0.00 −0.07 0.11 0.16 −0.68 0.23 0.03 0.45 0.14 −0.01 −0.30 0.28 0.34 0.068 0.18 ]
0.20 0.61 0.46 0.54 0.28 0.00 0.01 0.02 0.08
−0.06 0.17 −0.13 −0.23 0.11 0.19 0.44 0.62 0.53 0.11 −0.50 0.21 0.57 −0.51 0.10 0.19 0.25 0.08
−0.95 −0.03 0.04 0.27 0.15 0.02 0.02 0.01 −0.03 0.05 −0.21 0.38 −0.21 0.33 0.39 0.35 0.15 −0.60
−0.08 −0.26 0.72 −0.37 0.03 −0.30 −0.21 0.00 0.36 0.18 −0.43 −0.24 0.26 0.67 −0.34 −0.15 0.25 0.04
−0.01 0.05 0.01 −0.02 −0.06 0.45 −0.76 0.45 −0.07
−0.06 0.24 0.02 −0.08 −0.26 −0.62 0.02 0.52 −0.45]
資料來源:出自(Landauer, 1998)
透過 SVD 的分解得到三個矩陣,分別為{𝑊}、{𝑆}、{𝑃}𝑇,其中{𝑆}為對角矩 陣,而{𝑃}𝑇為{𝑃}的轉置矩陣,{𝑋} = {𝑊}{𝑆}{𝑃}𝑇。而降維的方式不但可以減少資 料的儲存量,也可以去除文件中的雜訊,若今天要將維度降至 k 維(k<m,n),即
前 k 個行向量得到{𝑃′}𝑘×𝑛,本例降維以維度二維為示範,得到的矩陣如下: value 中最大的兩個值給予保留,其他的值皆捨棄(reduce dimension),得到如表 3-4 的{𝑆′}矩陣,再將表 3-4 的{𝑊′}矩陣、{𝑆′}矩陣與{𝑃′}𝑇矩陣相乘,即可以得到 新的{𝑋̂}矩陣,此矩陣即稱為 Reduced matrix。
表 3-5 利用 singular value 重建的矩陣
{𝑋̂}
經過相關係數的計算,在原本表 3-2 中,human 與 user 的相關係數為-0.38,human 與 minors 的相關係數為-0.29,但是經過 SVD 的轉換後,表 3-4 中 human 與 user 的相關係數則變為 0.94,human 與 minors 的相關係數則變為-0.83。從文字的理 解來看,同屬於人機介面領域底下的 human 與 user 兩個詞,其語意是相近的,
透過 SVD 的降維,可以把文字間的隱藏關係給挖掘出來,進行潛在語意的分析。
4. cosine 相似度計算模組
透過建立共生矩陣,可以了解文章中各個關鍵詞的分布,再利用 SVD 進行 矩陣的降維,找出關鍵字之間的語意關係,而每個關鍵詞和每篇文章都是透過向 量來表示,因此可以透過新的矩陣{𝑋̂}中列向量與行向量,來計算兩個文件或者 是關鍵詞的向量(此例中文件之向量為行向量,關鍵詞之向量為列向量)夾角的內 積值,當內積值越大,代表兩向量的夾角越小,該關鍵詞(或文章)的相關程度就 越高,反之,向量夾角越大,該關鍵詞(或文章的)相關程度就越低。
如果今天有一篇未知的文章,可以先求得該文章的共生矩陣。今假設未知文 章的共生矩陣為{𝑞}𝑚×1,透過 SVD 降維求得的{𝑊′}𝑚×𝑘與{𝑆′}𝑘×𝑘,可以利用(4) 式求得{𝑞}𝑚×1在語意空間中的向量值{𝑞̂}1×𝑘,如下:
𝑞̂1×𝑘 = (𝑞𝑇)1×𝑚𝑊′𝑚×𝑘𝑆′𝑘×𝑘−1 (4) 透過以上的式子所得到的[𝑞̂]1×𝑘,我們可以和任何已知難易度層級的文章進 行相似度的驗證,透過計算𝑞̂與已知難易度層級的文章向量𝑝̂的內積值(已知難易 度層級文章向量𝑝̂的求法同𝑞̂之求法),我們可以了解𝑞̂與𝑝̂的向量夾角大小,而內 積值越大,代表兩向量在語意空間中的夾角越小,相似程度也就越高,計算相似 度的方法如(5)式:
𝑠𝑖𝑚(𝑞̂, 𝑝̂) = 𝑐𝑜𝑠𝑖𝑛𝑒(𝑞̂𝑆′, 𝑝̂𝑆′) =|𝑞̂𝑆𝑞̂𝑆′||𝑝̂𝑆′2𝑝̂′| (5) 綜合上述,透過未知文章向量與已知文章向量在語意空間中的夾角,求得的 各個內積值中,可以找到一個最大的內積值,而此內積值是由未知文章向量與相 似度最高的已知文章向量求得,即可知道此未知文章與該已知文章有最大的相似 關係。