• 沒有找到結果。

2log ijlog ij

i j ij

k p

− Λ =

m

(2.23)

本論文即採用log-likelihood ratio 作為特徵挑選的方法之一。

2.3. 評估方法

由於學習演算法有可能對資料過份最佳化(Overfitting),使用訓練資料建立模型,

在評估分類結果導致太過於樂觀的估計。保持交叉檢定(Holdout Cross-validation)與 k-折交叉檢定(K-fold Cross-validation)基於給定的資料作隨機抽樣劃分,常用於評估分類 法的準確性。[17]

2.3.1. 交叉檢定 (Cross-validation)

模型評估方法中,交叉檢定法優於其他的方法,因為其他的評估法並無法指出這 個學習演算模型對一筆新進的未知資料進行預測分析時會有怎樣的表現。克服這個問 題的方法之一是:不要把全部的已知資料都拿去進行訓練,在一開始就先將它們保留 下來。然後當訓練完成,再把當初保留下來的資料當作「新的資料」來測試這個模型。

這就是交叉檢定進行評估模型的基本概念。

交叉檢定的方法由 Seymour Geisser(1929-2004) 提出。當樣本資料較少,且進一 步的樣本資料難以取得的情況下(無法蒐集、花費昂貴、或是有危險性等狀況) ,交叉 檢定更顯得顯得重要。

在交叉檢定中,用於初始分析的樣本子集資料稱為訓練集(Training Set)。例如資 料探勘、人工智慧等領域,系統利用這些訓練資料建立模型,這個步驟就稱為「訓練 (Training)」。而剩下用來對初始分析進行檢定的樣本子集(當作「未知的新資料」)則稱 為檢定集(Validation Set),或測試集(Testing Set)。

2.3.1.1. 保持交叉檢定法 (Holdout Cross-validation)

保持交叉檢定法(Holdout Cross-validation)是最簡單的交叉檢定法。原始的資料集 被隨機劃分成兩個獨立的集合,也就是所謂的訓練集與測試集。只使用訓練集的資料 來產生模型,接著對測試集預測輸出值,再利用原本已知的答案來評估正確性,如圖 2-10。這個方法的優點是提供模型實地應用的表現成效,然而資料的分割方法可能會 影響到評估的結果,如果將訓練集與測試集資料重新劃分,評估效能有可能會大不相 同。一般來說,作為測試的資料量不會超過原始樣本的三分之一。

圖 2-10 用 Holdout Cross-validation 評估分類法的準確性

2.3.1.2. K-折交叉檢定(K-fold Cross-validation)

由於使用holdout cross-validation 方法建立模型時只用了一部份的初始資料,因此

評估的結果較為保守,k-fold cross validation 可以用來改進 holdout cross-validation。將 樣本資料分為

k 個子集,然後重複 k 次

holdout cross-validation,在每一次進行中,選 這

k 個子集的其中一個作為測試集,其餘的 k-1 個子集作為訓練集,取這 k 次結果的

平均作為整體評估。這個方法的優點是比較不會受到資料分割方式的影響,每一筆資 料都當了一次的測試資料以及

k-1 次的訓練資料,當 k 值越大則結果變異度越小。而

這個方法的缺點就是演算法必須重複執行

k 次,也就得花上 k 倍的計算量。此外這個

方法還有一個變形:隨機將資料分為訓練與測試資料

k 次,這個方法的優點是使用者

可以自由的將訓練集大小與測試次數分開來考慮。

2.3.2. 評估方法(Evaluation Metric)

靈敏性(Sensitivity)與明確性(Specificity)是常用於醫學檢測的評估方法,也可用來 評量二元分類器(Binary Classifier)的效能。假設我們要對一群人進行某種疾病的檢驗,

當有些人患病且檢驗結果呈陽性反應,則稱為真-正例(True Positive);有些人患病,但 檢驗為陰性反應,則稱為偽-反例(False Negative);有人並未患病,且檢驗結果亦為未 患病,稱為真-反例(True Negative);最後偽-正例就是指那些健康卻被檢驗成有患病的 人。因此,真-正例、偽-反例、真-反例與偽-正例(False Positive)的總和為樣本資料。

靈敏性的計算公式如(2.24),由上述例子來看,靈敏性就是「所有患病的人中被檢 驗出來的比例」。靈敏性為100%則代表所有病患都被檢驗出來了,或是由工廠品質控 制的角度來看,所有不良品都被找出來,避免外流至市場中。然而單靠靈敏性並不能 獲得完整的檢測資訊,若將樣本全都標示為正(陽性)亦可獲得百分之百的靈敏性,因 此必須與明確性配合。

明確性的計算公式如(2.25),也就是「所有健康的人中檢測結果呈陰性反應的比 例」。明確性越高,則越少健康的人被誤判為病患。由工廠品管的角度來看,就是避免 把可以出售獲利的良品誤判為瑕疵品。同樣的,也不能排除靈敏性來單獨看明確性,

若要獲得100%的明確性,只需要將所有測試資料都標示為反(陰性)即可達成。

number of true positives Sensitivity

number of true positives number of flase negatives

= + (2.24)

number of true negatives Specificity

number of true negatives number of flase positives

= + (2.25)

除了靈敏性與明確性之外,亦可以用正負預測值(Positive and Negative Predictive Values)來計算二元分類法的效能。正預測值可以回答以下問題;「當我的檢定結果是陽 性反樣,那我已經患病的可能性有多大?」計算方式如(2.26),所有標示為 positive 的 結果中,真-正例的機率。負預測值亦同,只是替換為 negative。

number of true positives Positive predictive value

number of true positives number of flase positives

= +

準確率(Precision),而靈敏性稱為召回率(Recall)。

number of all postivites number of all negatives Accuracy sensitivity specificity

total total

true positives true negatives total

= × + ×

= +

(2.27)

而準確率與召回率不能單獨使用,理由是系統很容易做出高準確率、低召回率,

或低準確率、高召回率的結果。為同時兼顧這兩個數據,經常再定義F-Measure(2.28),

來比較不同系統的成效。

2 precision recall

F Measure

precision recall

× ×

− =

+ (2.28)

3 、 系統設計

本章描述書籍分類系統的架構設計與各步驟所採用的方法,3.1 節介紹系統整體架 構與各部分功能;3.2 節針對書籍相關資訊做前置處理(Preprocessing);3.3 節進而將適 合用於分類器的資訊進行特徵挑選的工作;3.4 節使用 SVM 分類器進行學習;3.5 節 分析統計書籍詮釋資料,從中獲取有助於分類書籍的訊息;3.6 節合併 SVM 與詮釋資 料的分類結果,完成書籍分類的工作。

相關文件