• 沒有找到結果。

語料處理

在文檔中 專利文件之自動分類研究 (頁 22-34)

我們收集以UPC(US Patent Classification)為分類的美國專利文件語料,由

「美國專利局(USPTO)」網站http://www.uspto.gov/下載,檔案格式為超文件 標示語言,必須進一步解析超文件標示語言結構,擷取文件內容。由於專利文件 的篇幅過大(甚至有20萬字以上),李駿翔[2003]的實驗結果認為專利文件中欄 位“Title”搭配欄位“Summary”或“Description”是執行分類較有效的,因此我們擷 取欄位“Title”和“Summary”以節省系統空間,其描述專利文件內容的部分包括發 明的主題以及專利發明的內容概述。

由於美國專利文件的分類標準分工仔細,我們分別各取一份以主類別(語料 1)為分類和以子類別(語料 2)為分類的語料來做測試:

類別編號 主類別(Class) 數量

345 Computer graphics processing and selective visual display systems 100 360 Dynamic magnetic information storage or retrieval 100 367 Communications, electrical: acoustic wave systems and devices 100 704 Data processing: speech signal processing, linguistics, language

translation, and audio compression/decompression 100 705 Data processing: financial, business, practice, management, or cost /

price determination 100

706 Data processing: artificial intelligence 100 712 Electrical computers and digital processing systems: processing

architectures and instruction processing (e.g., processors) 100 713 Electrical computers and digital processing systems: support 100 718 Electrical computers and digital processing systems: virtual machine

task or process management or task management / control 100

表 3-1:語料 1 的類別及數量統計

語料 1 是以主類別做為分類類別,主要都是和電腦科學相關主題隨機取 9 個類別。各選取最新的文件 100 篇,總共選取 900 篇,如表 3-1列出的類別編號、

類別主題及其數量,由於分類類別的數量有限。此語料的文件均只歸屬於一個類 別。

子類別編號 子類別(Subclass) 數量

1 DATABASE OR FILE ACCESSING 1457 2 Access augmentation or optimizing 1529

3 Query processing 2538

4 Query formulation, input preparation, or translation 1347 5 Query augmenting and refining 1197 6 Pattern matching access 1007

7 Sorting 577

8 Concurrency 682

9 Privileged access 643

10 Distributed or remote access 2995 100 DATABASE SCHEMA OR DATA STRUCTURE 1461 101 Manipulating data structure 1245 102 Generating database or data structure 1891 103R Object-oriented database structure 800 103Y Object-oriented database structure processing 87 103X Object-oriented database structure network 26 103Z Object-oriented database structure reference 26 104.1 Application of database or data structure 2076

200 FILE OR DATABASE MAINTENANCE 1031

201 Coherency 796

202 Recoverability 645

203 Version management 861

204 Archiving or backup 687

205 File allocation 608

206 Garbage collection 381

表 3-2:語料 2 的類別及數量統計

語料 2 是以主類別“707(DATA PROCESSING: DATABASE AND FILE MANAGEMENT OR DATA STRUCTURES)”下所有子分類做分類類別,有 25 個子類別,如表 3-2所示,總共有 12489 篇文件(原來總共有 13882 篇,去除欄 位不完整及類別標示錯誤的文件)。

此語料內的文件所屬類別的分類數至少為 1(可多個),在這裡的類別架構 雖是階層式,但文件的類別卻沒有固定在哪一層,也可能多層同時存在,如專利 編號為“5455945”的文件屬於子類別“2”、“4”、“7”和“104.1”,子類別“2”、“7” 和

“104.1”在主類別“707”的第二層,子類別“4”是在第三層。文件類別數分佈如圖 3-1所示,顯示在 12489 篇文件中有 5355 篇是只屬於單一類別的,約占了 43%;

同時屬於二個類別的文件有 3706 篇,約占 30%。

3352

1960 1027

450 215 75 30 15 5 4 1 5355

0 1000 2000 3000 4000 5000 6000

1 2 3 4 5 6 7 8 9 10 11 12

類別數

文件數

圖 3-1:語料 2 文件中所屬的類別數分佈

語料 1 文件均只屬於一個類別,不需由調適語料對不同詞彙群組數決定相 似類別的門檻值,將資料分為訓練語料和測試語料,依序占全部資料 60%和 40%。而語料 2 分成訓練語料、調適語料和測試語料,依序占全部資料 60%、20%

和 20%,有調適語料的目的是為了不希望最後決定的參數值會過度倚賴訓練語料 的內容,以彌補資料稀疏性(Sparseness Data)的問題。先以訓練語料為詞彙分 群的依據,依不同的詞彙群組數結果分別以調適語料去做測試,調適語料測驗結 果決定相似類別的門檻值。

訓練語料 測試語料 全部 語料 1

540 360 900

訓練語料 調適語料 測試語料 全部 語料 2

7496 2494 2499 12498 表 3-3:訓練語料、調適語料和測試語料的文件數

針對專利文件中欄位“Title”和“Summary”的內容,抽取出句子中名詞和動詞 的詞彙,因此必須要進行詞性標記,使用由清華大學張俊盛教授自然語言實驗室 所提供的工具,這個工具是以 CoNLL2002 為語料所訓練出來的。專利文件前置 處理的過程如下:

1. 詞根還原。

2. 進行詞性標記。

3. 抽取名詞和動詞詞彙。

4. 刪除停用字6(Stop Word)和數字。

5. 刪除低頻詞(只出現一次)。

前置處理各個步驟執行後的結果,如表 3-4所示。

語料 1 語料 2

步驟 訓練語料 測試語料 訓練語料 調適語料 測試語料

起始相異詞數 7783 5726 18871 10767 11923 詞態還原後 5212 4197 15111 8703 8432 除去非動詞和名詞後 4137 3091 11312 6104 7554 除去停用詞和數字後 3866 2870 9370 5790 6447

除去低頻詞後 2995 8836

表 3-4:前置處理結果

3.2. 詞彙分群

因為專利文件主題含蓋範圍太廣,詞彙在一般意思和專業領域的義意上會有 差異,因此我們選擇統計式的。非監督式的分群法的無法界定合適群組的程度,

又我們主要的目的是對文件做分類,因此選擇監督式的 Distributional Clustering

(DC)分群法,這種分群法是一種機率分佈曲線為依據的分群法,針對詞彙在 類別之間的分佈進行群組。

DC 先計算每一個詞彙在各個類別之間的機率分佈,再依類別分佈曲線計算 詞彙之間的相似度,以進行分群。步驟如下:

i. 統計詞彙在每個類別的出現機率為該詞彙的類別機率分佈曲線。

ii. 利用 Kullback-Leibler (KL) divergence 計算二個詞彙的類別機率分 佈(Probability Distributions)的差異性。

KL-divergence [Pereira et al., 1993] 定義 D( P(C|wt) || P(C|ws) )

在 Baker and McCallum[1998]提出 DC 的過程中,為了修正 KL-divergence 在計算二個曲線差異性時,任取一個曲線為基礎會

( ) ( )

27.5%詞彙群組、2%詞彙,而群組“datum”的成員有 907 個詞彙。詞彙群組“datum”

所囊括的詞彙非常的多,約占 32%以上的詞彙,分佈是相當不平均。

vertex, 172 datum, 907 [#1], 55

圖 3-2:語料 1 中 200 個詞彙群組數的分配結果

在圖 3-3裡,列出和類別“345”和“706”相關性(P(類別|詞彙群組) )最大的 二個詞彙群組:“vertex”、“scene”及“keyword”、“query”(以實線表示)以及成員 最多的詞彙群組“datum”(以虛線表示)的類別機率分佈情形。詞彙群組“vertex”

完全只會在類別“345”裡出現,詞彙群組“scene”會出現在類別“345”和類別“704”

中,以類別“345”出現的機會來得大,在其他的類別機乎不會出現,而詞彙群組

“datum”則平均分散在各類別之間。

0 0.4 0.8 1.2

345 360 367 704 705 706 712 713 718

類別 P(類別|群組)

vertex scene datum keyword query

圖 3-3:語料 1 部份詞彙群組的類別機率分佈

0 0.2 0.4 0.6 0.8 1

A B C D

類別 P(類別|群組)

x y z xy yz

圖 3-4:群組機率曲線分佈圖範例

圖 3-4為詞彙群組{x、y、z}在類別{A、B、C、D}中的機率曲線分佈圖,而

xy 表示 x 和 y 合併的結果,yz 表示 y 和 z 合併的結果。其中 x 代表和類別 B 極為

相關的詞彙,對分類來說是最有鑑別力;而 y 代表只會出現在類別 B 和 C 之間 的詞彙,對分類也有會幫助的效果;z 代表在每個類別都會出現的詞彙,是在分 類中最不重要的詞彙。一般都會認為 y 的重要性是在 x 和 z 之間,但以曲線的分 佈來看,y 和 z 對於 yz 曲線距離比 x 和 y 對於 xy 曲線距離來得小,若{x、y、z}

要做分群,首先一定會先選擇 y 和 z。在合併的過程中,詞彙群組會漸漸趨向曲 線較平均的詞彙群組,這也是為什麼分群結果中會有少數幾個詞彙群組所占的詞 彙特別的多,且此少數詞彙群組都是分散較平均的。

詞彙群組“vertex”內有 172 個成員,包含 vertex、aliasing、avatar、blend、blur、

bone、cameras、CG、clipping、contour、dispersion、illusion、intensity、keyframe、

landscape、mosaic、plane、polygon、ray、rectangle、rendering、shade、stencil、

stereogram、texels、texture、tile、trim、voxels…等,都是和類別“345:Computer graphics processing and selective visual display systems”主題常見的詞彙,在一般的 詞典來說可能不容易找出 “blur”(模糊化)和 “blend”(混合,混色)之間的關 係,甚至“keyframe”(關鍵格)、“texels”(貼圖畫數)、“voxels”(立體像數)…

等是在這主題領域中常見的詞彙但在一般的詞典卻找不到,而這些詞彙對於類別

“345”這個主題來說都是相當有鑑別力的詞。

詞 彙 群 組 “keyword” 內 有 125 個 成 員 , 包 含 “keyword” 、 Bayesian 、 categorization 、 centroid 、 classifier 、 clustering 、 collector 、 concentrator 、 documentation、dictionary、grammar、hierarchically、lexicon、noun、paraphrase、

searching、sentence、sql、summarization、svm、synonym、thesaurus、tokenizing、

verb…等,都是和類別“706:Data processing: artificial intelligence”主題常見的詞 彙,其他還有像“evaluator”、 “English”、“topic”…等看起來跟“706”的主題沒有 直接聯想的關係,因和其他類別的相關性差異大,其他的類別出現這些詞的關係 相對於“706”來得更小。利用詞彙分群中 Distributional Clustering 方法能辨識出許 多和類別主題相關的詞彙。

而詞彙群組“datum”很平均的分散在各個類別之中,詞彙群組“datum”主要的 詞彙為 datum、invention、method、information、process、object、computer、device、

user、set、second、memory、control、program、store、input、apparatus、output、

processor、unit、base、comprise、display…等,都是在主類別“707”下較無直接 相關的詞彙。

[#1], 732

datum, 2309

database,

2092

圖 3-5:語料 2 中 2000 個詞彙群組數的分配結果

圖 3-5顯示語料 2 中 2000 個詞彙群組數的分配結果,其中也以“[# 1]”代表 詞彙群組成員只有一個的詞彙群組個數,有 732 個詞彙群組是只有一個成員的,

占了 37%的詞彙群組、約占 8%詞彙,而以群組“datum”的成員有 2309 個詞彙,

約占 26%詞彙,詞彙群組“database”的成員有 3092 個,約占 35%詞彙,和語料 1 的情形相同,詞彙群組之間分配得相當不平均。語料 2 的群組中,以詞彙群組

“datum”和”database”所占的比例最大,在圖 3-6中顯示此二個詞彙群組的類別機 率分佈曲線,且出現在大部份的類別機率都差不多,符合前面所說的,有少數 重要性較低的幾個群組所占的比例會較大。

0 0.02 0.04 0.06 0.08 0.1

1 2 3 4 5 6 7 8 9 10 100 101 102 103R 103Y 103X 103Z 104.1 200 201 202 203 204 205 206

類別 P(類別|群組 )

datum database

圖 3-6:語料 2 部份詞彙群組的類別機率分佈

3.3. 文件分類

接下來的步驟要進行文件的分類,所採用的方法是向量空間模型(Vector Space Model,VSM)。對資料庫內的每一文件建立一代表向量,向量裡的數值 就顯示詞彙對於其文件的重要性。採用 tf-idf(Term Frequency / Inverse Document

Frequency)來計算出每一文件裡詞彙權重。

i doc class

class

測試文件只有歸屬於一個類別時,選擇計算結果相似度最高的類別;歸屬於 度差異性調整之後,doc_y 的多類別預測為{classB,ClassC}。

相似度調整前(門檻值 = 0.8)

{classC} {classC}

doc_y 0.3 / 0.6 =

{classB} {classB, classC}

表 3-5:相似度值調整範例

表 3-6顯示語料 2 中 600 個詞彙群組時,進行十次實驗平均,相似度調整後 對於分類的結果。可以看得出來在不論是在權重計算修正前後,相似度的調整都

對於分類的結果有幫助,均提升 0.1 以上的調和平均值。

相似度調整前

權重計算修正前 權重計算修正後

0.216 0.27 相似度調整後

權重計算修正前 權重計算修正後

0.304 0.415 表 3-6:相似度值調整調和平均值結果

在文檔中 專利文件之自動分類研究 (頁 22-34)

相關文件