四、 實驗
4.2 實驗一:斷句模型效能
4.2.2 實驗結果與分析
4.2.2 實驗結果與分析
Hidden Markov models 的斷句效能如表格 5,而表格 6 則列出各項效能指標 的標準差。Conditional random fields 斷句效能列於表格 7,各項效能的標準差 在表格8。圖 11 是這兩個斷句模型的 recall‐specificity ROC Curve 比較。
表格 5 Hidden Markov Models 斷句效能
Dataset Accuracy Precision Recall Specificity FMeasure NIST –SU Error Rate
Labeling Accuracy
《論語》 87.21% 78.25% 71.99% 93.01% 73.84% 49.84% 76.92%
《孟子》 88.63% 76.57% 67.08% 94.49% 70.86% 54.35% 78.79%
《莊子》 88.69% 73.47% 69.64% 93.72% 70.48% 57.25% 78.76%
《春秋左傳》 91.63% 84.42% 84.52% 94.57% 83.55% 33.70% 84.66%
《春秋公羊傳》 94.07% 89.16% 89.72% 95.78% 88.52% 24.22% 88.89%
《春秋穀梁傳》 93.23% 88.15% 87.91% 95.37% 86.92% 27.10% 87.20%
《史記》 84.93% 64.64% 59.48% 91.68% 60.87% 75.60% 72.28%
清代奏摺 92.70% 77.94% 72.27% 96.70% 73.19% 50.68% 86.65%
上古漢語混合 87.03% 73.41% 67.55% 93.00% 69.30% 59.05% 76.22%
平均 89.79% 78.45% 74.46% 94.26% 75.28% 47.98% 81.15%
表格 6 Hidden Markov Models 斷句效能標準差
Dataset Accuracy S.D.
NIST –SU Error Rate
S.D.
Labeling Accuracy
S.D
《論語》 8.99% 18.11% 19.88% 6.23% 17.19% 32.55% 15.05%
《孟子》 5.29% 14.73% 15.60% 3.63% 13.88% 25.87% 9.63%
《莊子》 7.51% 19.86% 21.71% 5.36% 19.29% 37.74% 13.87%
《春秋左傳》 8.39% 17.12% 17.95% 6.66% 16.07% 34.64% 14.99%
《春秋公羊傳》 7.45% 16.28% 15.82% 7.13% 14.75% 33.05% 13.84%
《春秋穀梁傳》 7.69% 16.58% 17.27% 7.23% 15.39% 33.82% 14.34%
《史記》 6.88% 18.51% 18.95% 4.66% 17.05% 35.41% 12.15%
清代奏摺 6.71% 21.32% 25.62% 3.91% 22.04% 41.92% 11.34%
上古漢語混合 8.22% 20.14% 20.96% 5.72% 18.98% 37.63% 14.41%
平均 7.46% 18.07% 19.31% 5.61% 17.18% 34.74% 13.29%
表格 7 Conditional Random Fields 斷句效能
Dataset Accuracy Precision Recall Specificity FMeasure NIST –SU Error Rate
Labeling Accuracy
《論語》 89.02% 80.16% 78.29% 93.23% 78.52% 42.63% 80.71%
《孟子》 89.01% 72.71% 78.32% 91.95% 75.08% 52.90% 80.48%
《莊子》 90.62% 76.73% 77.30% 94.13% 76.37% 48.20% 82.88%
《春秋左傳》 93.83% 86.87% 91.02% 95.16% 88.25% 25.60% 88.83%
《春秋公羊傳》 96.78% 93.92% 94.29% 97.83% 93.60% 13.53% 93.96%
《春秋穀梁傳》 95.82% 92.73% 92.65% 97.23% 92.12% 16.19% 92.25%
《史記》 88.58% 70.85% 75.82% 92.02% 72.69% Ā8.02% 79.41%
清代奏摺 94.57% 88.92% 73.63% 98.68% 78.54% 35.24% 90.20%
上古漢語混合 87.49% 70.82% 78.00% 90.56% 73.44% 58.93% 77.78%
平均 91.75% 81.52% 82.15% 94.53% 80.96% 39.03% 85.17%
表格 8 Conditional Random Fields 斷句效能標準差
Dataset Accuracy S.D.
NIST –SU Error Rate
S.D.
Labeling Accuracy
S.D
《論語》 9.15% 17.89% 18.36% 6.41% 16.86% 33.85% 15.22%
《孟子》 6.19% 15.40% 13.60% 4.76% 13.84% 30.71% 10.82%
《莊子》 6.99% 18.58% 18.30% 4.98% 17.24% 36.17% 12.49%
《春秋左傳》 7.21% 16.01% 13.01% 6.38% 13.48% 31.23% 12.78%
《春秋公羊傳》 5.47% 12.41% 11.56% 4.79% 11.06% 25.01% 10.23%
《春秋穀梁傳》 6.40% 13.02% 12.99% 5.43% 11.99% 25.47% 11.69%
《史 優於hidden nditional ra
all,高出了 specificity 的
6.67%
rkov Models 與
7 的實驗數
與Conditiona
數據,condi 了specificit 指標都比hid
15.05% 36 21.50% 34 18.16% 43 15.46% 32
ields 的 ROC
dom fields 的 說低了0.5 個 個dataset,
.60%
外表現並沒有差hidden Markov models 太多。甚且,面對《春秋公羊傳》、《春 秋穀梁傳》、清代奏摺這三個dataset,更到達了 97%‐99%。
再看表格6 和表格 8,兩個模型斷句的各項效能,標準差都相當接近。然而,
無論是哪一項指數,conditional random fields 的標準差都以微幅差距低於 hidden Markov models。這個結果表示,conditional random fields 的斷句表現,
比hidden Markov models 來的穩定,面對各式各樣的 input 資料,表現比較一致,
起伏不定的幅度較小。不過,由於兩個模型在各項評估指標的標準差都很相似,
所以兩者的穩定程度,其實差別不大。
圖11 中的 ROC curve,以視覺化的方式呈現兩個模型的表現。Conditional random fields 的 recall 指標遠勝過 hidden Markov models,所以在
recall‐specificity ROC curve 上,呈現明顯的優勢。
觀察實際的斷句結果,《莊子.逍遙遊》的開頭第一段:
北冥有魚.其名為鯤.鯤之大.不知其幾千里也.化而為鳥.其名為鵬.
鵬之背.不知其幾千里也.怒而飛.其翼若垂天之雲.是鳥也.海運則將 徙於南冥.南冥者.天池也.
經過hidden Markov models 斷句之後,成為:
北冥有魚其名為鯤.鯤之大不知其幾千里也.化而為鳥其名為鵬.鵬之背.
不知其幾千里也.怒而飛其翼.若垂天之雲.是鳥也.海運則將徙於南冥.
南冥者.天池也.
而conditional random fields 則將這段斷為:
北冥有魚.其名為鯤鯤之大.不知其幾千里也.化而為鳥.其名為鵬鵬之 背.不知其幾千里也.怒而飛.其翼若垂天之雲.是鳥也海.運則將徙於 南冥南冥者.天池也.
在這個例子中,兩個模型的斷句效能在量化評估指標上幾乎完全相同
( 80.00%, 35.71%),但斷錯的方式截然不同。《莊子》
的另一個段落「連叔曰.其言謂何哉.」,其中「曰」和「其」是非常典型的邊 界字元,「曰」經常用在RR 的位置,「其」則常出現在 LL 的位置,因此兩個模 型的斷句結果都完全正確。Hidden Markov models 和 conditional random fields 都是機率模型,對於「也」、「曰」、「其」這些經常出現在句首或句尾的漢字很少 斷錯,但遇到少見的漢字組合,斷句的行為則難以預料,這也是以機率為核心的 分類器比較難突破的部份。再看另一個同出於《莊子》的段落:
子綦曰.夫大塊噫氣.其名為風.是唯无作.作則萬竅怒呺.而獨不聞之 翏翏乎.山林之畏佳.大木百圍之竅穴.似鼻.似口.似耳.似枅.似圈.
似臼.似洼者.似污者.激者.謞者.叱者.吸者.叫者.譹者.宎者.
咬者.前者唱于而隨者唱喁.泠風則小和.飄風則大和.厲風濟則红竅為 虛.而獨不見之調調.之刁刁乎.
這個段落比較複雜,句型和用字都不太規則,hidden Markov models 將這個段落 斷為:
子綦曰.夫大塊噫氣.其名為風是.唯无作作.則萬竅怒呺而獨不聞之翏 翏乎山.林之畏佳大木百圍之竅.穴似鼻似口似耳.似枅似圈似臼似洼者.
似污者.激者謞 者叱者.吸者叫者譹者宎者咬者.前者唱于.而隨者唱 喁泠風.則小和飄風.則大和.厲風濟則红竅為虛.而獨不見之調調之刁 刁乎.
而conditional random fields 則斷作:
子綦曰.夫大塊噫氣.其名為風.是唯无作作.則萬竅怒呺.而獨不聞之.
翏翏乎山林之畏佳.大木百圍之竅.穴似鼻似口似耳.似枅似圈似.臼似 洼者.似污者.激者謞者叱者.吸者叫者.譹者宎者.咬者前者.唱于而 隨者.唱喁泠風.則小和飄風.則大和厲.風濟則红竅為虛.而獨不見之.
調調之.刁刁乎.
兩個模型對於這個段落,表現都很不理想。特別是「似鼻.似口.似耳.似枅.
似圈.似臼.似洼者. 似污者.激者.謞者.叱者.吸者.叫者.譹者.宎者.
咬者.」這幾個句子,hidden Markov models 幾乎不作任何斷句,而 conditional random fields 則以兩個為一組作斷句,成果同樣不佳。
以《春秋公羊傳》為dataset 時,hidden Markov models 與 conditional random fields 都有最佳的效能表現。觀察實際的斷句結果,兩個模型對《春秋公羊傳》
中多數的段落都有一致的表現,而且都能斷出不錯的結果。只有少部份有些差異,
以其中某一段為例:
天王使仍叔之子來聘.仍叔之子者何.天子之大夫也.其稱仍叔之子何.
譏.何譏爾.譏父老.子代從政也.
在此,hidden Markov models 的表現差強人意:
天王使仍.叔之子來聘.仍叔之子者何.天子之大夫也.其稱仍.叔之子 何.譏.何譏爾.譏父老子代從政也.
而conditional random fields 則有幾乎完全正確的表現:
天王使仍叔之子來聘.仍叔之子者何.天子之大夫也.其稱仍叔之子何.
譏.何譏爾.譏父老子代從政也.
再看另一個同樣出於《春秋公羊傳》,但是較長也較複雜的段落:
秋.七月葬鄭莊公.九月.宋人執鄭祭仲.祭仲者何.鄭相也.何以不名.
賢也.何賢乎祭仲.以為知權也.其為知權奈何.古者鄭國處于留.先鄭 伯有善于鄶.公者.通乎夫人.以取其國而遷鄭焉.而野留.莊公死巳葬.
祭仲將往省于留.塗出于宋.宋人執之.謂之曰.為我出忽而立突.祭仲 不從其言.則君必死.國必亡.從其言.則君可以生易死.國可以存易亡.
少遼緩之.則突可故出.而忽可故反.是不可得則病.然後有鄭國.古人 之有權者.祭仲之權是也.權者何.權者反於 經.然後有善者也.權之 所設.舍死亡無所設.行權有道.自貶損以行權.不害人以行權.殺人以 自生.亡人以自存.君子不為也.
在此,hidden Markov models 產生了荒腔走板的斷句結果:
秋.七月.葬鄭.莊公.九月.宋人執鄭.祭仲祭仲者何.鄭相也.何以
不名.賢也.何賢乎祭仲以為知權也.其為知權奈何.古者.鄭國處于留 先鄭伯有善于鄶公者.通乎夫人以取其國而遷鄭焉而野留莊公死巳.葬祭 仲將往省于留塗出于宋.宋人執之謂之曰.為我出忽而立突祭仲不從其言 則君必死國必亡從其言則君可以生. 易死國可以存易亡少遼.緩之則突 可.故出而忽可.故反是不可得則病然後有鄭國.古人之有權者祭仲之權 是也.權者.何權者反.於經然後有善者也.權之所設舍死亡無所設行權 有道自貶損以行權不害人以行權殺人以自生亡人以自存君子不為也.
特別是段落的最後幾句,hidden Markov models 放過了許多理應斷開的地方,留 下了接連41 字而無任何斷句的長句子。相形之下,conditional random fields 的 斷句成果則好上一截:
秋.七月.葬鄭莊公九月.宋人執鄭祭仲祭仲者何.鄭相也.何以不名.
賢也.何賢乎祭仲以為知權也.其為知權奈何.古者.鄭國處于留先.鄭 伯有善于鄶.公者 通乎夫人.以取其國.而遷鄭焉而野留.莊公死.巳 葬祭仲將往省于留.塗出于宋.宋人執之謂之曰.為我出忽而立突.祭仲 不從其言.則君必死.國必亡從其言. 則君可以生易死.國可以存易亡 少.遼緩之.則突可故出而忽可.故反是不可得.則病然後有鄭國.古人 之有權者.祭仲之權是也.權者何.權者反於經.然後有善 者也.權之 所設舍死.亡無所設行.權有道自貶.損以行權不害人.以行權.殺人以 自生.亡人以自存.君子不為也.
除了上古漢語的文本,這兩個模型對於清代奏摺也有不錯的表現。對於比較 短的段落,例如「道光十六年二月十四日奉硃批.刑部議奏.欽此.」或「硃批.
欣慰覽之.」兩個模型的斷句結果幾乎都完全正確。然而,對於比較長而文句複
雜的段落,conditional random fields 則稍佔優勢。例如這個段落:
竊福建台灣水師協標中營都司黎振湘升任遺缺.先因台灣酌改營制案內.
改為台灣鎮標左營陸路都司.經臣璟會同前署福建撫臣葆亨恭摺奏准.以 軍功留閩儘先補用.陸路都司徐正邦補授.茲台灣新改各營.業經奏准.
仍復舊制.將徐振邦撤歸原班另補.所有原設台灣水師協標中營都司員缺.
係台灣水師題補之缺.准到兵部咨.輪用儘先人員.行令照章請補.等因.
其實hidden Markov models 的斷句結果並不太差:
竊福建台灣水師協標中營都司黎振.湘升任遺缺.先因台灣酌改營制案.
內改為台灣鎮標左營陸路都司經臣璟會同.前署福建撫臣葆亨.恭摺奏.
准以軍功留閩儘先補用.陸路都司徐正邦補授.茲台灣新改各營.業經奏.
准仍復舊制.將徐振邦撤歸原班另補.所有原設台灣水師協標中營都司員 缺.係台灣水師題補之缺.准到兵部咨輪用.儘先人員行令照章請補等因.
然而conditional random fields 卻往往能把較長、較為複雜的段落斷得更好:
竊福建台灣水師協標中營都司黎振湘升任遺缺.先因台灣酌改營制案內.
改為台灣鎮標左營陸路都司經臣璟會同前署福建撫臣葆亨恭摺奏准.以軍 功留閩儘先補用陸路都司徐正邦補授.茲台灣新改各營.業經奏准.仍復 舊制.將徐振邦撤歸原班另補.所有原設台灣水師協標中營都司員缺係台
改為台灣鎮標左營陸路都司經臣璟會同前署福建撫臣葆亨恭摺奏准.以軍 功留閩儘先補用陸路都司徐正邦補授.茲台灣新改各營.業經奏准.仍復 舊制.將徐振邦撤歸原班另補.所有原設台灣水師協標中營都司員缺係台