音韻自動標注對詩學研究的意義

羅鳳珠(Feng-ju Lo)

台灣元智大學人文社會學院

電話︰(03)4638800ext.712

電子郵件︰gefjulo@saturn.yzu.edu.tw

網址︰cls.admin.yzu.edu.tw

 

系統設計︰羅鳳珠、曹偉政、李元萍

 

程式設計︰曹偉政、李元萍

優特資訊科技股份有限公司

電話︰(03)3790526

電子郵件︰atecmail@tpts6.seed.net.tw

 

 

關鍵字:自動注音,自動注韻,韻腳自動檢索,廣韻,佩文韻府

摘要

本文旨在探討如何利用電腦輔助中國詩詞自動標注讀音、自動標注韻腳所押音韻,如何進一步做為詩學研究的工具。

中國文字的國語讀音有一千三百多種,建立讀音資料之後,可以藉著使用頻率、平仄格律、韻腳等參考資料自動標注讀音。《廣韻》分為二百零六韻,《佩文韻府》分為一百零六韻,建好韻書資料後,藉著「指定查詢位置」的功能,可以查詢每一首詩的押韻情形 《廣韻》與《佩文韻府》的異同,進一步作為詩韻分合的研究,詩的節奏及聲情研究。

 

壹、前言


中國文獻資料中,對詩歌的定義,最早的記錄見於《尚書》〈堯典〉所言:「詩言志,歌永言,聲依永,律和聲。八音克諧,無相奪倫。」其後有《禮記》〈樂記〉曰:「詩言其志也,歌永其聲也,舞動其容也。」《詩》〈大序〉更進一步詳析:「詩者,志之所之也。在心為志,發言為詩。情動於中而形於言;言之不足,故嗟嘆之;嗟嘆之不足,故永歌之;永歌之不足,不知手之舞之,足之蹈之也。」從這三段文字可知,詩與歌是相關連的,也正因為詩可以發而為歌,所以特別講究其節奏與韻律,使其更具有音樂性。

詩歌形式的發展,從詩經至楚辭、至漢樂府、唐律絕,其中固然經過很多次的演變,押韻方式的不同為其區別的主要關鍵。胡震亨《唐音癸籤》曰:「詩自風、雅、頌以降,一變有離騷,再變為西漢五言詩,三變有歌行雜體,四變為唐之律詩。詩之至唐,體大備矣。今考唐人集,錄所標體名,凡傚漢、魏以下詩,聲律未諧者,名往體;其所變詩體,則聲律之諧者,不論長句、絕句,概名為律詩、為近體;而七言古詩,於往體外另為一目,又或名歌行。舉其大凡,不過此三者為之區分而已。至宋、元編錄唐人總集,始於古、律二體中備析五七等言為次。」(註一)由這段文字可知,胡震亨從聲律的角度分辨詩體。

音韻的分合,也經過幾次演變。隋代以前的韻書,已散佚不可詳考。今傳最早的韻書是隋•陸法言的《切韻》,陸氏於《切韻》〈敘〉文述及與劉臻等八人論及音韻時,感於「古今聲調,既自有別。諸家取捨,亦復不同……因論南北是非,古今通塞。……取諸家音韻,古今字書,以前所記者定之,為切韻五卷。」(註二)以明古今音之沿革,唐人詩賦,多依其韻。今《切韻》雖亡,幸而後有唐•孫愐撰《唐韻》、宋•陳彭年等撰《廣韻》、丁度等撰《集韻》,皆依《切韻》舊目,供後之研究聲韻學者依循。《廣韻》變《切韻》的一百九十三韻為二百零六韻,至南宋•劉淵為《平水韻》,又變二百零六韻為一百零七韻;元•陰時夫撰《韻府群玉》,併「拯」韻字入「迥」韻字,而為一百零六韻,清代依一百零六韻為《佩文韻府》,至今通用,這是音韻分合沿革的概況。

然而,前人所謂的「論南北是非,古今通塞」以審其音,用人力整理,數多量大,難免有人力不可及,以致產生誤差者。

各學門引用電腦為研究工具之後,電腦超強的記憶,快速、精準的資料處理能力,應用於詩學的研究,正可以解決一些比較不容易以人力解決的問題,或者說得到一個更精準,更有說服力的數據。

電腦沒有情感,還不能思考,所以詩學研究中,屬於意境的部份,涉及心靈思維活動的部份,情意感發的部份,美感經驗領會的部份,電腦誠然難以取代人的地位。但是對於規則性資料的分析處理能力,卻千萬倍於人腦。

本文嘗試以電腦建立一套系統,使電腦系統自動從對韻腳的判斷,分析詩的體裁,從押韻的通諧判斷詩韻的分合,從平仄的聲調,分析詩的節奏等等,以及建立這一套系統的方法,需要做的前置作業,以及從中延伸的其他研究方向。


貳、前置作業


對電腦而言,需要教之而使能。因此以電腦作為詩學聲律的研究,首先要建立一些基本資料。

一、建立詩譜資料

詩可以概分為古體詩與近體詩二種,唐代以前的詩都稱古體詩,唐代以後的詩分為古體詩與近體詩。

先依據近體詩的格律建立近體詩詩譜,近體詩分五言絕句、七言絕句、五言律詩、七言律詩四種,另有少數的變體詩,亦歸屬於近體詩。其押韻規則如下(註三):

(一)五言絕句押韻通則

  1. 第一句可押韻,可不押韻,以不押韻居多,如果押韻可押鄰韻。
  2. 第二、四句一定要押韻,而且押平聲韻,一韻到底,不能換韻。
  3. 第一句的最後一個字若不押韻時,限用仄聲字。
  4. 第三句的最後一個字限用仄聲字。

(二)七言絕句押韻通則

  1. 第一句可押韻,可不押韻,以押韻居多,如果押韻可押鄰韻。
  2. 第二、四句一定要押韻,而且押平聲韻,一韻到底,不能換韻。
  3. 第一句的最後一個字若不押韻時,限用仄聲字。
  4. 第三句的最後一個字限用仄聲字。

(三)律詩押韻通則:

  1. 都用平聲韻(唐代劉長卿、白居易、韓偓,宋代蘇軾、黃庭堅寫過少數押仄聲韻的律詩)
  2. 通常一韻到底,中間不換韻。只有首句用韻時可以用鄰韻。
  3. 句尾不能連三平,也不能連三仄。(但也有少數例外)
  4. 律詩基本上不能出現重複字,但也有少數是內容突破了形式。
  5. 「一三五不論,二四六分明」:只要不造成句尾連三平或連三仄,一般都可以「一三五不論,二四六分明」。如果因此造成「孤平」、「孤仄」,因「孤平」、「孤仄」對聲律的影響較小,所以不必太拘束。
  6. 句式一定是整齊的五言或七言,沒有長短句。

(四)律詩押韻分則:

1.五言律詩押韻分則

(1).第一句可押韻,可不押韻,以不押韻居多,如果押韻可押鄰韻。
(2).第二、四、六、八句一定要押韻,而且押平聲韻,一韻到底,不能換韻。
(3).第一句的最後一個字若不押韻時,限用仄聲字。
(4).第三、五、七句的最後一個字限用仄聲字。

2.七言律詩

(1).第一句可押韻,可不押韻,以押韻居多,如果押韻可押鄰韻。
(2).第二、四、六、八句一定要押韻,而且押平聲韻,一韻到底,不能換韻。
(3).第一句的最後一個字若不押韻時,限用仄聲字。
(4).第三、五、七句的最後一個字限用仄聲字。

(五)近體詩:變體詩

  1. 折腰體:第三、第二句失黏,而後二句平仄又相對立的格式,稱為「折腰體」,如韋應物〈滁州西澗〉、李白〈靜夜思〉、〈山中問答〉
  2. 變體律詩:李白〈夜泊牛渚懷古〉,中間兩連不對仗,仍歸屬律詩。
  3. 偷春格:前二聯對仗,第三聯不對仗。如杜甫〈一百五日夜對月〉
  4. 蜂腰格:只有頸聯用對仗,如杜甫〈月夜〉
  5. 其他:崔顥〈黃鶴樓〉、杜甫〈白帝城最高樓〉、王維〈酌酒與裴迪〉、白居易〈南浦歲暮對酒送王十五歸京〉,都是變體律詩。

再進而從古體詩與近體詩格律上的不同來區別古、近體詩:

  1. 以格律分類:古體詩除了需要用韻之外,不受格律限制。近體詩除了需要用韻之外,受到格律的限制。
  2. 以字數分類:近體詩只有五言、七言二種形式。古體詩有四言、五言(稱五古)、七言(稱七古)、字數不整齊的稱雜言古詩(雜言古詩因有七字句,所以也稱七古),也有少數三言、六言。
  3. 以句數分類:古體詩從二句到百句都有。近體詩絕句四句,律詩八句,排律八句以上。
  4. 以用韻分類:

(1).古體詩:

(2).近體詩

二、建立韻書資料

要藉由電腦自動標示每一首詩所押何韻,首先需要建立韻書的資料。比較精細的作法是依據《廣韻》二百零六韻與《佩文韻府》一百零六韻,分別建立二種韻書資料。明列每一個韻目之下包含那些韻字,作為查詢韻腳之用,查詢系統的設計與查詢功能於文中另述。

分別建立二套韻書的原因有二:其一為二套韻書分立的韻目不同,建立二套韻書,可以清楚比較韻目韻字的演變。其二為二套韻書蒐集的字數不同,《廣韻》收字二萬六千一百九十四字,《佩文韻府》收一萬零一百三十五字,二書詳略不同,併收可以清楚比較其中異同。唯《廣韻》所收字數,超過現在通行的大五碼字數,建檔時需另行造字。

三、建立讀音資料

中國文字屬於單字單音,但是也具有一字多音的特性,不同讀音分屬不同韻目。建立讀音資料,遇到一字多音的字,電腦如何判斷此處該讀何音?該屬何韻?筆者於〈中國古典詩詞教學系統的新嘗試----網路作詩填詞系統,兼及其可行性與侷限性〉文中有詳細的論述(註四)。

多音字大多音隨義轉,建立讀音資料時,為了增加電腦自動判斷多音字的正確率,需要建立大量的詞彙資料。建立讀音資料後,如何以電腦自動判斷多音字的字該讀何音?該屬何韻?遇到古今音不同時,又該如何解決?文中另述。

 

參、系統的功能的設計


音韻標注是【唐宋詩全文檢索系統】(網址:cls.admin.yzu.edu.tw)其中一項附屬功能,以全唐詩為例,製作一套【全唐詩全文檢索系統】,必定具備全文檢索功能,也就是說可以從作者、詩題、詩句檢索,並列出檢索結果的全文。而音韻自動標注功能的設計,與指定特定位置的文字檢索功能設計,其目的在於提供特殊研究需求使用。詳述如下:

一、讀音自動標注功能與平仄聲調自動標注功能

檢索結果列出全文時,使用者可以要求系統自動標注讀音。其建立步驟如下:

(一)建立讀音資料庫

讀音自動標注功能的設計,首先需要建立每一個字的每一個讀音資料。使用者選擇「讀音標注」時,系統會自動比對出該字的讀音,並列出來,列出的音標包括注音符號與漢語拼音符號。

(二)建立《廣韻》與《佩文韻府》資料庫,並標出其聲調

將《廣韻》二百零六韻,二萬六千一百九十四字,與《佩文韻府》一百零六韻,一萬餘字資料建立,並據以標出平仄聲調。平聲包含陽平、陰平,仄聲包含上聲、去聲、入聲。平聲聲調以「1」標示;上聲以「2」標示;去聲以「3」標示;入聲以「4」標示。

此資料庫結構如下:

漢字

注音

漢語拼音

廣韻韻部

廣韻聲調

廣韻平仄

佩文韻府韻部

佩文韻府聲調

佩文韻府平仄

ㄓㄨㄥ1

zhong1

1

1

ㄓㄨㄥ4

Zhong4

3

3

ㄉㄧㄥ1

Ding1

1

1

(三)讀音自動標注功能

系統會逐字自動加上音標,遇到多音字時,以三個步驟判斷:

  1. 以使用頻率判斷

    大多數的多音字,只有其中的一個音被普遍使用,使用頻率比其他讀音高很多,因此以使用頻率較高的字作為選擇的優先條件。

  2. 與前後文字合為詞語時之讀音判斷

    以使用頻率判斷,固然可以得出一個很高的正確率,但是有些字沒有明顯的高低使用頻率,或者高使用頻率的讀音有二個以上,如「長」字,讀為「ㄓㄤ3」及讀為「ㄔㄤ2」的頻率不相上下,「參」字,讀為「ㄘㄢ1」及讀為「ㄙㄢ1」的頻率也很相近,如此便難以判斷,因此要加上前後字,組成詞,作為判斷的輔助資料。大多數的多音字,其讀音也都是與某字合為某詞時,固定讀為某音,例如「參」與「加」合為「參加」,讀為「ㄘㄢ1 ㄐㄧㄚ1」;「參」與「差」合為「參差」時,讀為「ㄘㄣ1 ㄘ1」;「參」與「商」合為「參商」時,讀為「ㄕㄣ1 ㄕㄤ1」。如此便可以增加判斷的正確率。

  3. 依詩譜平仄聲調輔助判斷

第三個可供判斷的輔助工具是詩的平仄譜。詩有固定的格律,何處該用平聲?何處該用仄聲?都是固定的。因此,如果某一個該用平聲字的位置,如果正好是多音字,其所含仄聲的讀音便可排除。當然,如果這首詩不合格律便不能判斷。

依據以上三個輔助條件判斷,讀音自動標注的正確率,以十六萬字為標注資料時,正確率可以達到百分之90•4;以四十萬字為標注資料時,正確率可以達到百分之94•1(註五)

透過以上的功能設計,電腦便可以在建好的讀音資料、平仄聲調資料、詩譜資料的基礎上,自動判斷並標示讀音,讀音自動標示結果詳如下圖:

圖一 標示注音符號之讀音(以蘇軾〈和子由澠池懷舊〉為例)

圖二 標示漢語拼音之讀音(以蘇軾〈和子由澠池懷舊〉為例)

圖三 同時標示注音符號與漢語拼音之讀音(以蘇軾〈和子由澠池懷舊〉為例)

這一首詩,多音字有「處、知、何、應、雪、泥、上、那、見、還、否、長」等十二個字,標錯的讀音有「那、否」兩字,應讀為「ㄋㄚ3、ㄈㄡ3」,錯標為「ㄋㄚ4、ㄆㄧ3」,兩個字錯標的兩個讀音,使用頻率差距不大,前後字都不能組成習用的詞彙,兩個字的的位置都是仄聲字,錯標字的讀音也都同為仄聲,因此經過三個步驟都無法正確判斷讀音,這樣的例子,只能依靠人工校對補正,或者建立更大量的詞彙資料,標注詞性才能進一步提高正確率。

二、指定查詢韻腳----分辨詩體的功能

古體詩與近體詩的區別,很重要的一個關鍵在於押韻的不同,前已述及。古體詩還包含古樂府與新樂府,胡震亨的《唐音癸籤》有清晰的分別,曰:「於是流委秩然,可得具論:一曰四言古詩,一曰五言古詩,一曰一曰七言古詩,一曰長短句,一曰五言律詩,一曰五言排律,一曰七言律詩,一曰七言排律,一曰五言絕句,一曰七言絕句。外古體有三字詩、六字詩、三五七言詩、一字至七字詩、騷體雜言詩;律體有五言小律、七言小律,又六言律詩及六言絕句。而諸詩內又有詩與樂府之別。」(同註一)樂府還有古樂府與新樂府,胡震亨曾為二者下過定義,曰:「往題者(古樂府),漢、魏以下,陳、隋以上,樂府古題唐人所擬作也。(諸家概有,而李白所擬為多,皆仍樂府舊名。李賀擬古樂府,多別為之名,而變其舊。」(同註一)又曰:「新題者(新樂府),古樂府所無,唐人新製為樂府題者也。其題或名歌,亦或名行,或兼名歌行。又有曰引者,曰曲者,曰謠者,曰辭者,曰篇者,有曰詠者,曰吟者,曰嘆者,曰唱者,曰弄者,復有曰思者,曰怨者,曰悲若哀者,曰樂者,凡此皆屬樂府,然非盡譜之於樂。」(同註一)由這二段定義可知,判斷樂府體古詩可以藉由題目判斷,但是其準確率都不及由韻腳判斷正確。

由前述可知,古、近體詩在押韻上最大的區別,除了近體詩中少數的變體之外,從韻腳來判斷,便可區分。系統設計方法如下:

1. 可以指定以字尾為檢索點:(見圖四、圖五)

圖四 指定查詢雙數句韻腳(以宋詩為例)

圖五 指定雙數句韻腳查詢結果(以宋詩為例)

古體詩可以每句都押韻,所以指定字尾為檢索點,而不只是指定韻腳為檢索點。

  1. 檢索的資料可以列出《廣韻》與《佩文韻府》的韻目及聲調(見圖六)

    圖六 標示讀音與韻腳查詢結果(以蘇軾(飲湖上初晴後雨二首)為例)

    指定列出字尾之字的所屬韻目及聲調,便可以知道該首詩的用韻情形。

  2. 根據用韻情形判斷該首詩是古體或近體詩

判斷的標準已如前述,例如:這首詩如果押仄聲韻,一定是古體詩。如果押平聲韻,再從其他條件判斷。

肆、作為詩學研究上的功能與意義

音韻自動標注系統的設計,在詩學研究上,可以作為詩平仄節奏的研究,在平仄聲有規律的更換之中,所表現的聲情如何?在黏與對的考慮中,對詩的節奏顯示的意義如何?都是可以從中衍生語言學的研究。從韻腳的判斷中,可以了解古、近體詩用韻的情形;從《廣韻》二百零六韻到《佩文韻府》合併為一百零六韻,在詩學的應用上,分合的情形如何?古體詩換韻的規則如何?而且這一套電腦檢查用韻情形的系統,可以用之於漢樂府詩、魏晉南北朝詩、唐詩、宋詩。也可以從中了解從漢魏以降,至唐宋近體詩發展過程的幾百年中,用韻的情形。甚至於可以在同一個朝代裡,再作細分。例如,唐代是從古體詩轉近體詩,近體詩光芒萬丈的一個朝代,唐詩從初唐、盛唐、中唐到晚唐,從格律較自由的古體詩,進到格律限制較嚴格的近體詩,其轉變的軌跡為何?其中用韻的規則有那些不同?除了直向的古今音變之外,橫向的同一個時期,押韻的情形受不受南北地域方言的影響,諸如此類,都可以藉由電腦準確的分析比對,得出一個精確的數據。

在讀音的標示方面,平仄不合的詩作裡,是否能從不合的平仄之中,檢驗出不合的部份受到那些因素影響?是否能從中分辨出更正確的古今音?凡此種種,都能藉著一個客觀、理性的工具,作科學的統計,得出一個數據,作為推論的基礎。

伍、系統的限制與延伸的研究方向

當然,詩學研究上,有些必要的需求,電腦還難以取代人腦。例如上述的系統功能設計,可以協助判斷一首詩的某些格律合不合,可以判斷的是平仄聲調與用韻合不合,無法判斷的是律詩中間兩聯必須對仗,電腦卻無法判斷對仗的問題。讀音標注的三個步驟可以自動辨別大多數的多音字,但是對於使動詞改變詞性、改變讀音的應用技巧,電腦也無能為力。而其中比較可能的解決方法是持續的建立詞庫資料,在音隨義轉,多音字又往往建立在特定的詞語上,詞語的建立,使多音字有固定的歸屬,便可以大量提昇讀音的正確率。

判斷律詩中間兩聯是否對仗,詞語的建立、多音字的正確判讀,單音字的標注,都有助於協助判斷對仗。

對仗需要句法相對,上聯若是上二下三的句法,下聯也必須用上二下三的句法,如果這兩個二與三的詞彙,都已建立在詞庫中,電腦便可以判斷其句法相對。另外,古、近體詩中都大量的使用雙聲字、疊韻字、連綿字組成的詞語,讀音的標注工作,便可以以電腦標出雙聲字、疊韻字、連綿字的詞彙,成為對仗判斷的第二個依據。詞性的標注,需要更多人力進行事前的分析、整理、歸納、標注工作,逐步累積,建立起完整的資料庫,系統自動判斷的正確率便越高。因此,建立一個適用的中文詞庫,將會對日後中國文學相關的電腦輔助學習與研究系統有相當大的助益,這也是本系統未來努力的方向。

 

陸、結論

由於詩是一個精緻凝練的語言藝術,他的語法、句法、詞性等等,與散文不同,電腦適合整理規則性的資料,用之於詩學的研究,有電腦不可取代的部份。我們試著從讀音的標注開發出一條自動判斷讀音的方法,從平仄聲調的分析、詩譜的建立,做句法的標注,從中建立詞語自動截取的方法;再從用韻的情形更精確的分析語音的轉變,從音的建立,進而從中抽取出雙聲字、疊韻字、連綿字組成的詞語,幾個方法的配合,建立詩的語料庫,逐一標注詞性,將可為詩學研究、聲韻學研究、語法研究,提供一定的幫助。

 

附註:

  1. 明•胡震亨遯叟著,《唐音癸籤》,上海古典文學出版社,1957年出版。卷一,頁1。
  2. 轉引自林尹著,林師炯陽注釋,《中國聲韻學通論》,黎明文化事業公司,1982年出版,頁10。
  3. 參考吳丈蜀著,《讀詩常識》,上海古籍出版社,1981年出版、王力著,王力詩論》,廣西人民出版社,1988年出版。
  4. 參見拙著,〈中國古典詩詞教學系統的新嘗試----網路作詩填詞系統,兼及其可行性與侷限性〉,教學科技與媒體,1997年12月15日出刊,第三十六期,頁8。引文如下:「一、電腦如何正確判斷多音字的歸屬: / 中國文字有很多一字多音的現象,不同讀音可能分屬不同韻目,如果建立韻書資料時,只將韻書資料依照紙本韻書輸入,仍會面臨一些問題。以人力翻檢韻書時,遇到一字多音的情形,大多數時候人可以判斷該讀何音,從而查知該屬何韻。但是以電腦檢索時,電腦無法判斷何處該讀何音?該屬何韻? / 一字多音的現象,雖然電腦無法判別,所幸大多數的多音字都是「音隨意轉」,也就是說同一個字的不同讀音都代表不同的字義,而且與另一個字合成一個詞。我們可以先將每一個字的各種讀音標上,遇到多音字時,將不同讀音依使用頻率的高低排序,並將不同讀音的詞語一併標注,例如:「差」字的讀音有「ㄔㄚ一聲,差別」、「ㄔㄚ四聲,差人(特異之人)」、「ㄔㄞ一聲,差遣、差人(差遣人)」、「ㄘ一聲,差池」、「ㄘㄨㄛ一聲,同磋,差跌,同磋跌」、「ㄔㄞ四聲,同瘥,差癒」(病癒)」,共計六種讀音。系統可以利用「音隨意轉」的特性,設定當「差」與「別」共同出現時,讀為「ㄔㄚ一聲」,餘以此類推。其次在排定使用頻率,遇到系統未收的詞語,交由系統依使用頻率判斷,如此可以標出大多數的讀音,這種自動標音設計,須廣泛建立詞庫,才能增加標音正確率。但是對於「詞同義不同,義不同音不同」的字,如「差人」解為「差遣」與解為「特異之人」讀音便不同的例子,電腦恐怕沒有辦法判斷;某字同某字時,音隨所同之字轉移,如前例之「差同磋」,除非建立詞庫,否則電腦也無法判斷。」
  5. 此實驗依元智大學與北京大學合作研發之「宋代名家詩網路系統」得出之初步結果,詳見穗志方、俞士汶、羅鳳珠合著,〈一個古詩自動注音系統的設計與實現〉,中文信息學報,1997年秋季號。